Gibt es schon Vorgehensweisen zu dem Thema? Ich persönlich finde es nämlich ganz interessant, das Programm normal starten zu lassen, so dass im ersten Moment die Benutzerrechte keine Rolle zu spielen scheinen. Erst bei der Benutzung bestimmter Funktionen (Schreibzugriff auf spezielle Registryschlüssel, Anlegen von Dateien in bestimmten Ordnern, usw.) sollte der entsprechende Dialog von Windows erscheinen, der vom Benutzer einen Klick oder aber das Admin-Passwort einfordert. Das halte ich für sinnvoller, als Admin-Rechte zu erzwingen, die in 90% gar nicht erforderlich sind.
Ich habe im Internet eine Lösung gefunden, bei der eine "Hello, World!"-MessageBox in eine Assembly mit COM-Zugriff ausgelagert wurde. Diese Klasse wurde per Interface im Hauptprogramm aufgerufen. (Suchbegriffe
CSHARP ELEVATION:ADMINISTRATOR!) Gibt es nicht auch eine simplere Lösung, diese Rechte anzufordern? Ich kann doch nicht alle Funktionen in separate COM-Assemblies packen, im GAC registrieren und dann per Interface aufrufen.
Also, ich
kann schon, aber ist das nicht umständlich?