2016-06-28 12 views
3

Ich entwickle eine C# WinForms-Anwendung. Diese Anwendung kann aktualisiert werden, wenn ein Update auf dem Server verfügbar ist. Es funktioniert gut, aber nur für einen Admin-Benutzer.Get Documents Ordnerpfad des aktuell angemeldeten Benutzers

Die Anwendung prüft und unter Aktualisierung mit den Schritten anwenden, wenn der Benutzer Admin-Rechte nicht haben:

  • Wenn ein normaler Benutzer die „Check Update“ Taste drückt, Anwendung überprüfen wird, ob Updates verfügbar auf dem Server.
  • Wenn ein Update verfügbar ist, bestätigt die Anwendung die Anwendung des Updates mit einem Meldungsfeld.
  • Wenn der Benutzer "Ja" drückt, um das Update zu übernehmen, wird die Eingabe des Windows-Standard-Admin-Zugriffs erforderlich.
  • Wenn der aktuelle Benutzer den Benutzernamen und das Passwort eines Admin-Benutzers hat, dann geben sie diesen ein und wenden das Update an.

Problem

Nach einer angelegten Update (nur für normale Benutzer) die Anwendung als Administrator ausgeführt wird und ich versuche, die Ordner Dokumente Pfad des aktuellen Benutzers zu erhalten. Es gibt mir den Ordner Ordner Dokumente des Admin-Benutzers, weil die Anwendung derzeit als Administrator ausgeführt wird, aber ich möchte den Ordner Ordner Dokumente des derzeit angemeldeten Benutzers.

Frage

Wie kann ich die aktuelle auf Benutzer-Dokumente protokolliert erhalten Ordner, wenn die Anwendung als Administrator ausgeführt wird?

Momentan erhalte ich den Ordnerpfad des Dokuments mit dem folgenden Code.

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) 
+0

Haben Sie Clickonce jemals versucht? –

+0

Verwenden Sie "Environment.SpecialFolder.MyDocuments" oder wie erhalten Sie den Pfad? – Bambuk

+0

Kann ich die Frage umformulieren? Wie kann ich den aktuell angemeldeten Benutzer erhalten, wenn die Anwendung "als Administrator" ausgeführt wurde? – Neil

Antwort

7

Wie über den Benutzerdokumentpfad zu speichern, bevor Sie Admin zu ändern und es später verwenden ...

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) 
Verwandte Themen