Mensaje    Asunto: Enumerar todas las ventanas de todos los procesos Responder citando

Intento enumerar todas las ventanas de todas los procesos que se están ejecutando en el PC. Para ello utilizo el sistema Tlhelp32 para recorrer todos los Threads y para cada ThreadId encontrado aplico la API EnumThreadWindows con la que enumero todas sus ventanas. Hasta aquí correcto.

El problema es que no me enumera las ventanas que pertenecen a procesos de otros usuarios (cuyos ThreadId si que localizo) He centrado el tema, para simplificar las pruebas, en localizar las ventanas de winlogon.exe. Si funciona, funcionará para cualquier proceso de cualquier usuario.

Mi aplicación corre con privilegio SeDebugPrivilege. Intenté cambiar el Desktop por el del thread investigado antes de enumerar sus ventanas, por si fuera un problema de escritorio, pero hasta el momento no he podido enumerar todas las ventanas, incluidas las de winlogon y otros usuarios. Ya como último intento he ejecutado la aplicación como SYSTEM pero tampoco he tenido éxito con mi enumeración.

Espero haberme explicado bien. Gracias por las respuestas.

Saludos.