Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: BlaineMonkey en 19 Enero 2010, 12:12 pm



Título: Problema al permitir que un servicio interactue con el escritorio
Publicado por: BlaineMonkey en 19 Enero 2010, 12:12 pm
Tengo un servicio de windows en .NET que lanza otra aplicación con formularios. El servicio se lanza con cuenta de sistema local.
 
Si activo la casilla "permitir a los servicios interactuar con el escritorio" y lanzo el servicio, al hacer login veo el formulario de la aplicación, pero si cierro la sesión activa (por ejemplo administrador) y vuelvo a hacer login, al volver a mostrar el escritorio la aplicación se cuelga.

Sin embargo, si desactivo la casilla "permitir a los servicios que interactuen con el escritorio", y realizo el mismo proceso anetrior (cerrar sesión y volver a abrir) la aplicación funciona perfectamente, únicamente no se ve  el formulario.

¿Por qué pasa esto? ¿Hay alguna solución?


Título: Re: Problema al permitir que un servicio interactue con el escritorio
Publicado por: raul338 en 19 Enero 2010, 13:24 pm
En ese caso (supongo) no tendras mas solucion que hacer 2 proyectos, uno base que sea el servicio, y otro que sea tipo de escritorio (o sea la GUI) y que los 2 proyectos se comuniquen entre si. Hay varias aplicaciones que hacen esto (ej: Nod32)

Otra forma seria averiguar de que el servicio se "inicie" despues de iniciar sesion y no antes (cosa media rara jeje, haz una aplicacion para eso :P)


Título: Re: Problema al permitir que un servicio interactue con el escritorio
Publicado por: BlaineMonkey en 19 Enero 2010, 15:22 pm
Gracias por tu respuesta.
Eso había pensado si no consigo solucionarlo de otra forma.
De todas formas, me gustaría saber por qué se muere la aplicación tras cerrar sesión y entrar de nuevo si está activada la opción de permitir al servicio que interactue con el escritorio. Si no está activada esa opción no se ve el formulario pero no se muere al cerrar sesión y volver a entrar.

¿Cual es el motivo?