Hallo zusammen,
ich setze mich gerade mit der UAC und C#-VS2010 und Manifesten auseinander.
Hierbei habe ich versucht, die Ordner-Virtualisierung etwas detaillierter zu untersuchen.
Wie ich der allgemeinen MS-Doku entnehme, greift die Virtualisierung z.Bsp. bei älteren Programmen, welche direkt ins WINDOWS-Verzeichnis schreiben wollen. Soweit ist mir dieses auch klar und erscheint logisch.Ist ja soweit auch eine feine Sache, was
die Rückwärtskompatibilität anbelangt.
Zum Testen dieser Virtualisierung habe ich einfach mal ein kleine C#-Anwendung geschrieben, welche ins WINDOWS-Verzeichnis schreibt (Erzeugung einer TEST.TXT und Schreiben in diese Datei).
Starte ich die Anwendung aus der Entwicklungs-Umgebung heraus, so wird die Datei in VirtualStore\Windows angelegt. Soweit klappt dieses so wie erwartet.
Starte ich die Anwendung direkt von der Platte (also ohne VS), so bekomme ich nur die Meldung, dass der Zugriff auf C:\WINDOWS\TEST.TXT verweigert wurde.
Nach meinem Verständnis müsset doch eigentlich der Zugriff auch auf VirtualStore\Windows umgeleitet werden?
Ebenso erhalte ich bei folgendem Befehl ein "Zugriff verweigert":
ECHO > C:\WINDOWS\TEST.TXT
Es geht mir nicht darum, ein Programm zu schreiben, welches die Ordner-Virtualisierung nutzt, das wäre ja auch nicht wirklich professionell, ich möchte nur verstehen, warum es manchmal klappt und manchmal eben nicht.
Oder mache ich hier einen Denkfehler ?
Danke schon mal im voraus für eure Tipps.
Gruß
Jost