CreateProcessAsUser ???
-
Hallo,
folgendes Szenario:
Ein Dienst überwacht ein bestimmtes Verzeichnis.Der Dienst läuft als LocalSystem.
Wenn in dem überwachten Verzeichnis eine Datei eines bestimmten Types erstellt bzw. geändert wird, startet der Dienst eine Exe mittels CreateProcessAsUser(). Dazu rufe ich LogonUser() auf, um einen Token zu bekommen.
Über diesen Token bekomme ich mit GetLogonSid() die SID des Nutzers.Das ganze läuft auch gut, hat aber den Nachteil, das für LogonUser() der Nutzername, Domain und Passwort festgelegt sind (im Programm codiert).
Meine Frage ist nun, ob ich irgendwie innerhalb des Dienstes an den erforderlichen Token komme, ohne LogonUser() aufzurufen?
Ich hoffe, ich habe mich verständlich ausgedrückt.
Gruß Udo
-
Warum brauchst Du das?
Weshalb musst Du den Prozess als einen bestimmten Benutzer starten?
Soll das ganze auch unter Vista laufen?Ich rate davon ab, solche Dinge zu machen...
Meistens ist es besser ein kleines "Tray-Programm" unter jedem Benutzeraccount laufen zu lassen, mit welchem Du dann via "InterpOrcess-Kommunikation" kommunizierst und der dann den Prozess startet...
-
Hallo,
Das auszuführende Programm braucht Zugriff auf die Netzwerkressourcen des angemeldeten Nutzers.
Gruß Udo