Adminrechte Visual Studio Setup Project

Hi,
ich habe eine Frage bezüglich der Adminrechte bei der Installation eines Progammes das ich geschrieben habe. 
Dieses Programm benötigt Adminrechte, da es während der Laufzeit Informationen in Dateien schreiben soll. 
Dies funktioniert unter Windows XP einwandfrei allerdings nicht bei Vista und 7.
Dies liegt anscheinend an der UAC. Deshalb habe ich meinem Programm eine Anwendungsmanifestdatei hinzugefügt. das funktioniert soweit aber das Problem ist, dass der Benutzer dann bei jedem Programmstart den Dialog (von Windows) bestätigen muss, damit das Programm schreibrechte besitzt.
Nun ist meine Frage, ob es möglich ist das Programm mit Adminrechten (schreibrechten) zu installieren (Setup Project)?

Als Zusatzinformation: Ich benutze Visual Studio 2008

Schon mal Danke für Eure antworten.

Viele Grüße 
master05

Hallo!
Nein, das ist nicht „einfach so“ möglich.
Überprüfe vielleicht zuerst mal, ob das Programm wirklich an der Stelle Daten schreiben muss, an der es sie jetzt schreibt.
Bei Vista/Win7/Win8 ist ja nicht alles „verboten“, sondern es wird normalen Programmen (die also nicht von einem Administrator explizit erweiterte Rechte bekommen haben) nur verwehrt, in besonders geschützte Verzeichnisse zu schreiben: Programmverzeichnis, Windows-Verzeichnis, Wurzelverzeichnis Systempartition.
99.9% aller Programme aber, die dort bisher etwas geschrieben haben, müssen das gar nicht bzw. für sie gibt es passendere Orte, wo die Dateien hingeschrieben werden sollten, die eben nicht unter den Verzeichnisschutz fallen.

Warum muss Deine Anwendung genau in eines der geschützten Verzeichnisse schreiben?

Gruß,
Martin

Hi!
Also meine Anwendung soll automatisch bei Systemstart starten, dabei soll es bestimmte Einstellungen einlesen. Diese Einstellungen werden z.T. während der Laufzeit durch den Benutzer geändert. Es handelt sich dabei zum Großteil um Dateipfade, die vom Nutzer ausgewählt werden. Ich habe schon in anderen Foren gelesen, dass manche die Einstellungen in der Registry speichern, was ich allerdings für nicht sehr Sinnvoll halte!!

Wo soll ich deiner Meinung nach die Dateien ablegen?
Die Dateien sollen außerdem bei der Installation angelegt werden, da schon S
standardmäßige Einstellungen daraus ausgelesen werden.

Gruß
master05

Hallo!
Welche Daten wohin kommen, kannst Du anhand der Environment.SpecialFolder-Enum recht schön sehen:
http://msdn.microsoft.com/en-us/library/system.envir…
Hauptsächlich interessant: CommonApplicationData für Daten, die Deine Anwendung benutzerunabhängig braucht und ApplicationData für alles, was benutzerspezifisch ist.

Damit bei der Installation etwas in einen für Normalsterbliche geschützten Bereich geschrieben wird, trägst Du in Dein Windows Installer Paket ein, dass es zur Installation Adminrechte benötigt. Dann kommt halt bei der Installation die UAC-Abfrage, aber eben nur dann. Normalbenutzer speichern ihre Einstellungen in ihrem Benutzerprofil ab und brauchen dafür auch keine besonderen Rechte.
Alle sind glücklich und das System einigermaßen sauber. :smile:

Grüße,
Martin

Hallo Martin!
Vielen Dank so hat es funktioniert!
Dieses Problem hat mich schon seit längerem geplagt! :smile:

Viele Grüße
master05