Ich kenne mich mit der Thematik auch nicht wirklich aus, aber ein verstehe ich nicht: Wie treten solche "Anfragen" denn aus heiterem Himmel auf? Entweder deine Anwendung verlangt mittels diesem "Manifest" vor dem Ausführen nach höheren Rechten. Das sieht man im Explorer auch immer an diesem Schildsymbol. Oder es hat keine administrativen Rechte und wenn es Dinge versucht die es nicht kann (z.B. in C:\Programme schreiben) dann schlagen diese Dinge fehl. Aber es erscheinen nicht von alleine
UAC-Abfragen. Oder habe ich etwas verpasst?
Dieselbe Frage hab ich mir eben auch gestellt und mal nachgeschaut,
was das eigentlich für eine Software ist. Wieso man dafür irgendwelche besonderen Rechte benötigen soll, erschließt sich mir ganz und gar nicht. Wie du kann ich mir nur vorstellen, daß das Programm in gewissen Bereichen schlecht konzipiert ist und z.B. im Programmordner Schreibrechte benötigt. Von alleine erscheinen, wie du schon festgestellt hast, keine
UAC-Abfragen. Ich selbst hatte noch nie solche Probleme, obwohl ich auch unter XP anfing, Delphi zu programmieren.
Wie komme ich dahinter, was
UAC-Reklamationen auslöst? Dazu habe ich lange im Netz recherchiert.
- Nachsehen, ob gewisse Wörter in der Applikation auftauchen (Update, Setup ...) > nein.
- Schreibt das Prg. auf den Programmordner zu? Ja, auf Unterordner, aber nicht beim Start
-
HKCU-Zugriff > nein
Willkommen in der Delphi-Praxis
Wenn du in den Programmordner zu schreiben versuchst, benötigst du ab Windows Vista Admin-Rechte. Das dient der Sicherheit vor Viren und Malware. Ich würde an deiner Stelle einfach das jeweilige User-Verzeichnis als Speicherort wählen oder das Public-Verzeichnis. In letzteres kannst du ohne Einschränkungen schreiben, in das Verzeichnis des angemeldeten Uses kann natürlich nur dieser schreiben.
Also statt das zu beschreibende Verzeichnis mit
MeinOrdner := ExtractFilePath(ParamStr(0));
zu wählen, nimmst du den entsprechenden "Specialfolder". Wie das genau geht, kannst du z.B.
dort nachlesen. Des weiteren findest du hier eine
Liste der virtuellen Verzeichnisse.