En C# utilizando la clase de proceso, puedo obtener el control de la ventana principal de un proceso, pero necesito acceder a una ventana que no es la ventana principal de su proceso. ¿Cómo puedo obtener el control de todas las ventanas de un proceso?Obtener identificadores para todas las ventanas de un proceso
Respuesta
La función EnumChildWindows podría ayudarlo. Las ventanas secundarias también pueden tener hijos, etc.
También hay GetWindow y EnumThreadWindows
P/Al invocar la función EnumThreadWindows
de user32, la devolución de llamada que usted proporciona se le daría las manijas de las ventanas de un hilo dado. Process.GetCurrentProcess().Threads
debería devolverle todos los hilos relevantes con los cuales llamar al EnumThreadWindows
.
Puede P/Invoke GetWindowThreadProcessId()
para obtener el ID de hilo para el subproceso de interfaz de usuario que posee la ventana principal. A partir de ahí, puede encontrar cualquier otra ventana de nivel superior propiedad de ese hilo con EnumThreadWindows()
. Cualquier ventana secundaria (controles) propiedad de una ventana de nivel superior se puede encontrar con EnumChildWindows()
. Visite pinvoke.net para ver las declaraciones necesarias de P/Invoke.
- 1. ¿Cómo enumerar todas las ventanas dentro de un proceso?
- 2. Windows: ¿cómo obtener una lista de todas las ventanas visibles?
- 3. Icono de WPF para todas las ventanas de aplicaciones
- 4. ¿Cómo enumerar todas las ventanas que pertenecen a un proceso particular usando .NET?
- 5. minimizar todas las ventanas abiertas en C#
- 6. Guardar todas las ventanas/pestañas en GVim
- 7. ¿Cómo obtener la lista de todos los identificadores de ventanas en Java (usando JNA)?
- 8. Cómo obtener las referencias de todas las ventanas secundarias ya abiertas
- 9. Listar/Buscar todas las UTI existentes (Identificadores de tipo uniformes)
- 10. Autohotkey: obtener una lista de ventanas con un cierto título
- 11. ¿Cómo se enumeran los identificadores del proceso?
- 12. ¿Cómo obtener el recuento de identificadores abiertos que pertenecen a un proceso determinado?
- 13. ¿Cerrar todas las ventanas de herramientas en Visual Studio?
- 14. Obtener todas las columnas de todas las tablas MySQL
- 15. Obtener ubicación y el tamaño de todas las ventanas abiertas utilizando .NET (C#)
- 16. Mostrar panel en todas las ventanas en tmux
- 17. jqGrid obtener todos los identificadores de
- 18. ¿Puedes cerrar todas las ventanas abiertas en capibara?
- 19. ¿Los identificadores de proceso no son negativos en Linux?
- 20. Obtención de los identificadores de archivo del proceso dado
- 21. No puedo adjuntar ventanas Proceso de servicio
- 22. Encontrar todas las ventanas en el escritorio usando UIAutomation .NET
- 23. Enviar comando a todas las ventanas en tmux
- 24. ¿Cómo obtener un proceso node.js para morir?
- 25. Un proceso se colgó en las ventanas ... Ubicación del volcado del bloqueo
- 26. ¿Existe un comando de Linux para determinar los identificadores de ventana asociados con un ID de proceso dado?
- 27. ¿Cómo obtener todas las cookies de CookieManager para Android?
- 28. Obtener todas las propiedades para una clase de DBpedia
- 29. ¿Cómo obtener todas las coincidencias de regex?
- 30. ¿Obtener todas las variables de Javascript?