Laden...

Kopieren von Dateien mit Adminrechten

Erstellt von Luschi vor 5 Jahren Letzter Beitrag vor 5 Jahren 1.436 Views
L
Luschi Themenstarter:in
5 Beiträge seit 2014
vor 5 Jahren

Hallo C#-Fan's,

habe mich gerade mit dem Thema 'Impersonation' beschäftigt, um eine Datei in einem Ordner, für die man Adminrechte braucht, auszutauschen.

Dabei benutze ich die Vorlage von h i e r des Users Alan Yao [MSFT].
Zwar bestätigt mir das Programm, daß das korrekte Admin-Konto aktiv ist, aber der File.Copy - Befehl schlägt und die Meldung des catch-Blockes wird ausgeführt.
Wer kann mir da weiterhelfen. Die Datei befindet sich in einem Unterordner von
C:\Program Files (x86)\Common Files\

Gruß von Luschi
aus klein-Paris

PS: Ich verwende VS 2017 EP

16.835 Beiträge seit 2008
vor 5 Jahren

Es wäre super gewesen, wenn Du einen eigenen Thread gestartet hättest, statt einen drei Jahre alten Thread aus der Versenkung zu holen 😉

Nur Du kannst die Lösung des Problems sein, in dem Du die Exception abfängst und rein schaust, was für eine Fehlermeldung drin steht.
[Artikel] Debugger: Wie verwende ich den von Visual Studio?
Wir hier können alle nicht hellsehen, welcher Fehler bei Dir auftaucht.

L
Luschi Themenstarter:in
5 Beiträge seit 2014
vor 5 Jahren

Hallo Abt,

die Fehlermeldung lautet: DerZugriff auf den Pfad
"C:\Program Files (x86)\Common Files\…\xyz.dat" wurde verweigert

Der Dateipfad existiert, die zu überschreibende Datei ist nicht schreibgeschützt, der 3. Parameter bei File.Copy ist True und kein Programm hat diese Datei z.Z. im Zugriff.
Wenn ich es im Explorer mit dem Admin-Konto und der Maus oder bat-Datei mache, klappt das überschreiben.

Gruß von Luschi
aus klein-Paris

T
2.224 Beiträge seit 2008
vor 5 Jahren

Dann musst du prüfen welcher Benutzer welche Rechte auf der Datei hat.
Die Fehlermeldung klingt erst einmal danach, dass der Benutzer, unter dem dein Programm läuft, eben keinen Zugriff also keine Berechtigung auf die Datei hat.

Entsprechend dürfte die Meldung schon korrekt sein, du musst du die Rechte der Datei anpassen.

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.