Ich habe, was die UAC Development Guides als "Administrative Choice Application" bezeichnen. Wenn Sie wissen, was das ist, springen Sie zum nächsten Abschnitt.Wie kann ich eine Datei als "Standardbenutzer" in Vista kopieren (z. B. "Eine administrative Auswahlanwendung"), indem ich den Benutzer nach Administratorberechtigungen frage?
Hintergrund:
ich einen „Standard“ Benutzer haben die Möglichkeit zu lassen, will eine Run On Startup Option in den Einstellungen für meine Anwendung zu aktivieren/deaktivieren.
Da meine Anwendung pro Maschine ist (nicht pro Benutzer), muss entweder eine Verknüpfungsdatei im Startmenü/Programme/Autostart-Ordner gelöscht oder kopiert werden, was administrativen Zugriff erfordert, um diesen Vorgang auszuführen .
Also, was ich möchte, ist für die "User Account Control Credential Prompt" zu erscheinen und auf diese Weise, wenn der Benutzer ein Admin-Konto hat, können sie auch die Anmeldeinformationen eingeben. Offensichtlich sollen Anwendungen so konzipiert sein, dass der Benutzer nicht jedes Mal zu einem anderen Konto wechseln muss, wenn er etwas Administratives erledigen muss.
Auszug aus MSDN-Dokumentation:
Eine Administrative Wahl Anwendung
Ein erhöhter Prozess oder COM-Objekt
Die erstmalige Anwendung ohne Erhebung erfordert startet. Die Elemente in der Benutzeroberfläche, für die ein Administratorzugriffstoken erforderlich wäre, sind mit einem Schildsymbol zur Identifizierung versehen. Diese Dekoration weist den Benutzer darauf hin, dass für die Verwendung dieser Funktion die Zustimmung des Administrators erforderlich ist. Wenn die Anwendung feststellt, dass eine dieser Schaltflächen ausgewählt wurde, stehen die folgenden zwei Optionen zur Auswahl.
Ich muss nur eine Datei kopieren ... scheint übermäßig, um einen neuen Prozess mit ShellExecute() zu verzweigen und ich weiß nicht genug über COM zu wissen, ob ich es verwenden könnte, um eine Datei zu kopieren. Ich hoffe, dass jemand einen Code schreiben kann, der eine Möglichkeit bietet, die Datei zu kopieren und im Idealfall auch erklärt, wie man ein MenuItem mit dem "Shield Decorator" schmückt.
Hinweise:
Ich habe an der UAC Demo provided by microsoft sah, die in mehreren Stackoverflow Beiträge wie (Request Windows Vista UAC elevation if path is protected?) auf Themen im Zusammenhang mit Berechtigungen verwiesen wird. Der Code hat nur ein Beispiel für das Aufrufen eines separaten Prozesses.
Es ist ein Anfang. Vielen Dank! – blak3r