Wie stelle ich Anwendungen bereit, so dass sie Administratorrechte benötigen, ohne dass der Endbenutzer dies manuell tun muss?
Ich benutze Delphi 2009, um die Anwendung zu erstellen.
Sie können Windows darüber informieren, dass Ihre Anwendung als Administrator ausgeführt werden muss, indem Sie das Element requestedExecutionLevel
in Ihrem Anwendungsmanifest verwenden.
Die Manifestdatei ist eine XML-Datei, die wie folgt aussieht. Es sollte YourApp.exe.manifest heißen und sich im selben Ordner wie die ausführbare Datei befinden. (Es kann auch in die Ressourcen Ihrer Anwendung eingebettet sein; es muss einen Ressourcentyp von RT_MANIFEST
und eine ID von 1 haben.)
Weitere Informationen zu Anwendungsmanifesten und deren Erstellung finden Sie unter Erstellen und Einbetten eines Anwendungsmanifests (UAC ) bei MSDN.
Beachten Sie, dass das Manifest nur von Windows Vista und höher eingehalten wird. Wenn Ihr Benutzer als Standardbenutzer unter Windows XP ausgeführt wird, wird Ihre Anwendung nicht als Administrator gestartet. Sie müssen möglicherweise Code schreiben, um dies zu erkennen, wenn es ein Problem für Ihre Anwendung sein wird.
Eine weitere Option, die zwar nicht für "alltägliche Anwendungen" empfohlen wird, ist die Benennung Ihrer ausführbaren Datei mit "Install" oder "Setup" als Teil des Namens. Beachten Sie, dass wenn Sie keine Registrierungseinstellungen ändern oder neue Dateien erstellen, Windows eine Warnung an den Benutzer anzeigt, dass das Programm möglicherweise nicht ordnungsgemäß ausgeführt wurde.
Tags und Links windows delphi deployment uac