/ / WPF UI Automation: desde el Servicio de Windows - wpf, ui-automation

Automatización de IU de WPF: desde el servicio de Windows - wpf, ui-automation

Tengo una aplicación que funciona usando UIAPI de automatización con otra aplicación WPF. He creado un servicio de Windows que usa la misma funcionalidad pero cuando el servicio intenta encontrar la ventana hwd, recibe NULL:

System.ArgumentException: hwnd no puede ser IntPtr.Zero o nulo.
en System.Windows.Automation.AutomationElement.FromHandle (IntPtr hwnd)
en MyService.Scheduler.GetNotificationWindow (IntPtr hWndtoolBar)

¿Es posible utilizar la API de automatización de la interfaz de usuario en el servicio de Windows?

Respuestas

0 para la respuesta № 1

Un servicio de Windows no tiene acceso al escritorio del usuario. Vea: Interacción entre el servicio de Windows y la aplicación de escritorio.

Así que la respuesta corta es: no.

Una solución podría ser tener el servicio "hablar" aUn proceso en el escritorio a través de un socket y hacer que este proceso haga la automatización. (Eso podría llevar a deshacerse del servicio y mover toda la lógica a la aplicación de escritorio)