El motor de reconocimiento de voz no dispara un evento en el servicio de Windows

Así que tengo un servicio de Windows con reconocimiento de voz implementado utilizando el motor de reconocimiento system.speech. Mi código de reconocimiento de voz funciona bien cuando inicio el servicio, pero no se activan eventos para el reconocimiento de voz. Lo extraño es que, si ejecuto exactamente el mismo código, pero en una consola o aplicación WPF, el evento de activación de reconocimiento de voz funciona bien.
Ya he adjuntado un depurador a mi proceso de servicio para verificar qué estaba sucediendo detrás de la escena. Parece que el motor de reconocimiento de voz carga correctamente las gramáticas, configura su modo para escuchar continuamente y configura correctamente el evento de voz reconocida. No se lanzan excepciones, así que no estoy muy seguro de lo que está mal aquí. ¿Algunas ideas?

Respuestas a la pregunta(3)

Su respuesta a la pregunta