Benutzer mit den meisten Antworten
Temporärer Admin-Zugriff von einer c# Forms App aus - wie kann man das untrer Windows 7 am besten machen?

Frage
-
Hallo zusammen
eine Frage:
Wir haben eine Desktop c# Windows.Forms basierende Applikation, die im Falle eines erfolgenden Online Updates eine externe VB exe aufruft und dann terminiert. Diese exe lädt vom Server die dlls, die als neuer gegenüber den installierten gekennzeichnet sind, in ein unter dem Programmverzeichnis liegendes cache Verzeichnis und kopiert kann diese über die bisher installierten. Das Cache Verzeichnis wird dazu neu erstellt und am Ende gelöscht.
Unter Windows 2000, XP und Vista (x86 und x64) funktioniert das ganz prima.
Unter Windows 7 wird beim Erstellen des Cache Verzeichnisses eine Exception (kein Zugriff möglich) geworfen, es sei denn, in den Kompatibilitätseinstellungen der Applikation wird der Admin Zugriff eingetragen. In diesem Fall funktioniert es.
Gibt es eine Möglichkeit, den Zugriffslevel temporär aus der Applikation auf administrator zu erhöhen, um das cache Verzeichnis zu erstellen und später wieder zu löschen? (Falls ja, muss dafür das Late-Binding für Interop verwendet werden oder ist diese Methode auch unter W2000 und XP/Vista verfügbar)
Im Moment behelfen wir uns damit, dass im Falle von W7 vor dem Update das Programm mit dem gesetzten Admin Level gestartet wird, der Update durchgeführt wird und danach wieder der adminlevel zurückgesetzt wird. Dies ist allerdings nicht wirklich benutzerfreundlich, deswegen meine Frage.
Vielen Dank
Antworten
-
Warum kein ClickOnce? Wenn nicht ClickOnce, warum das Cache Verzeichnis nicht Application Data des Benutzerprofils?
Ansonsten: UAC, siehe:
http://cfx.codeplex.com/wikipage?title=All-In-One%20Code%20Framework%20Sample%20Catalog&referringTitle=Home
(Examples for Security)
Chris
Christoph Wille - MVP ASP.NET, Glengamoi Alumni - Realnamen sind ein Gebot der Höflichkeit in der Community- Als Antwort vorgeschlagen Robert BreitenhoferModerator Freitag, 6. November 2009 08:43
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 26. November 2009 12:39
Alle Antworten
-
Warum kein ClickOnce? Wenn nicht ClickOnce, warum das Cache Verzeichnis nicht Application Data des Benutzerprofils?
Ansonsten: UAC, siehe:
http://cfx.codeplex.com/wikipage?title=All-In-One%20Code%20Framework%20Sample%20Catalog&referringTitle=Home
(Examples for Security)
Chris
Christoph Wille - MVP ASP.NET, Glengamoi Alumni - Realnamen sind ein Gebot der Höflichkeit in der Community- Als Antwort vorgeschlagen Robert BreitenhoferModerator Freitag, 6. November 2009 08:43
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 26. November 2009 12:39