Pregunta

Estoy intentando crear un servicio con C# que inicie un proceso que pueda mostrarse en la pantalla de inicio de sesión de Windows XP.

Encontré un código que hace esto en C++.El código C++ es para un servicio que crea otro proceso con STARTUPINFO.lpDesktop configurado en "WinSta0\WinLogon".El proceso creado luego se muestra en la pantalla de inicio de sesión de Windows.Parece que no puedo encontrar una manera de especificar el 'escritorio' de un nuevo proceso en C# usando la clase System.Diagnostic.Process.

¿Alguien sabe cómo hacer esto con C#?

¿Fue útil?

Solución

La solución fue llamar a la función CreateProcess de la API de C++ Win32 desde kernel32.dll desde el código C#.Este sitio fue muy útil para obtener la firma de función correcta para C#:

http://www.pinvoke.net/default.aspx/kernel32/CreateProcess.html

Otros consejos

Creo que tendrás que escribirlo en C++, compilarlo en una DLL y luego llamar a la DLL desde tu código administrado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top