none
[Ayuda] Crear un servicio y ejecutar una interfaz RRS feed

  • Pregunta

  • Hola amigos,

    Esto es un tema que llevo investigando desde hace tiempo y se que es posible. He visto algunas aplicaciones que se ejecutan mediante un servicio y lanzan su interfaz.

    Me podrían ayudar a crear un servicio así? He recorrido medio google y no doy con soluciones.

    Espero que puedan ayudarme

    Gracias

    viernes, 17 de febrero de 2017 12:28

Respuestas

  • Si te refieres a un Servicio Windows, y quieres darle una interfaz grafica, entonces si lo has visto hecho es porque se trataba de un Windows antiguo y le habian marcado al servicio la propiedad "permitir al servicio interactuar con la interfaz de usuario". En los Windows modernos no se puede, esa propiedad ya no tiene ningun efecto, y el servicio no puede interactuar con la interfaz.

    Se resuelve dividiendo el programa en dos aplicaciones: una es el servicio propiamente dicho, y otra es una aplicacion de escritorio. La aplicacion de escritorio tipicamente se instala de tal manera que se inicie al hacer login el usuario, y se minimice al System Tray. Y esa aplicacion abre algun canal de comunicacion con el servicio (por ejemplo, a traves de un socket o de Named Pipes) de forma que cuando el servicio quiere mostrar algo se lo pasa a esa aplicacion, y entonces la aplicacion se maximiza a si misma y se presenta en pantalla. El efecto final desde el punto de vista del usuario es que aparentemente es el servicio el que esta mostrando una interfaz, aunque en realidad la interfaz no esta programada dentro del servicio sino en una aplicacion de escritorio que se instalo conjuntamente con el servicio y se comunica internamente con este mediante un canal de comunicacion.

    viernes, 17 de febrero de 2017 13:42