Angezeigte Fenster auf Anmeldebildschirm mit C # in Windows XP
-
01-07-2019 - |
Frage
Ich versuche, einen Dienst mit C # zu erstellen, die einen Prozess startet, die auf dem Windows XP-Anmeldebildschirm angezeigt werden kann.
fand ich einige Code, der dies in C ++ tut. Der C ++ Code ist für einen Dienst, der einen anderen Prozess mit STARTUPINFO.lpDesktop auf „WinSta0 \ WinLogon“ erzeugt. Der erzeugte Prozess wird dann mit dem Windows-Anmeldebildschirm angezeigt. Ich kann nicht scheinen, einen Weg zu finden, den ‚Desktop‘ einen neuen Prozesses in C # System.Diagnostic.Process Klasse angeben.
Wer weiß, wie dies mit C # zu tun?
Lösung
Die Lösung wurde auf die C ++ Win32-API-Funktion Createprocess aus kernel32.dll aus dem C # Code aufrufen. Diese Seite war sehr hilfreich bei der die korrekte Funktion Signatur für C # bekommen:
http://www.pinvoke.net/default.aspx/kernel32 /CreateProcess.html
Andere Tipps
Ich glaube, Sie werden es in C ++ schreiben, das auf eine DLL kompilieren und dann die DLL aus Ihrem verwalteten Code aufrufen.