Starten Sie den C#-Windows-Dienst als Benutzer ohne Administratorrechte, um den LocalApplicationData-Ordnerpfad abzurufeC#

Ein Treffpunkt für C#-Programmierer
Guest
 Starten Sie den C#-Windows-Dienst als Benutzer ohne Administratorrechte, um den LocalApplicationData-Ordnerpfad abzurufe

Post by Guest »

Ich verwende C#, um einen Windows-Dienst zu schreiben, der eine in Python geschriebene Anwendung überwacht. Die Python-App schreibt einige Dateien in den Ordner „AppData\Local\Custom\Folder“ eines angemeldeten Benutzers, der kein Administrator ist.
Ich muss diese Dateien von diesem C#-Windows-Dienst aus überwachen, aber sobald ich sie bekomme der Pfad:
Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Custom", "Folder");

Es gibt mir den Pfad zum Ordner des SYSTEM-Benutzers.
Wie kann ich den Benutzernamen oder den Pfad zum Ordner „AppData\Local“ des Benutzers erhalten? Python-App?
Und wenn ich zu service.exe > MyService > Eigenschaften > Anmelden > gehe und den Benutzer in einen Benutzer ohne Administratorrechte ändere, erhalte ich den richtigen Pfad, den ich möchte.< /p>
Image

ODER kann ich irgendwie den Benutzernamen von der Python-App an diese übergeben? Service. Ich habe Umgebungsvariablen ausprobiert, konnte den C#-Dienst jedoch nicht dazu bringen, diese Variable zu lesen. Ich habe den Python-Interpreter über die Administrator-Powershell aufgerufen und
festgelegtos.environ["CUSTOM_DIR"] = "path\to\folder"

aber der C#-Dienst hat es nicht bekommen.
Wenn jemand mehr Code benötigt, ist er hier. Ich habe noch keinen Code zum Überwachen der Datei geschrieben. Ich möchte zuerst das Pfadproblem lösen.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post