Creación de Windows en subprocesos
Cualquier subproceso puede crear una ventana. El subproceso que crea la ventana posee la ventana y su cola de mensajes asociada. Por lo tanto, el subproceso debe proporcionar un bucle de mensajes para procesar los mensajes en su cola de mensajes. Además, debe usar MsgWaitForMultipleObjects o MsgWaitForMultipleObjectsEx en ese subproceso, en lugar de las demás funciones de espera, para que pueda procesar mensajes. De lo contrario, el sistema se puede interbloquear cuando el subproceso se envía un mensaje mientras está esperando.
La función AttachThreadInput se puede usar para permitir que un conjunto de subprocesos comparta el mismo estado de entrada. Al compartir el estado de entrada, los subprocesos comparten su concepto de la ventana activa. Al hacerlo, un subproceso siempre puede activar la ventana de otro subproceso. Esta función también es útil para compartir el estado de foco, el estado de captura del mouse, el estado del teclado y el estado del orden Z de la ventana entre las ventanas creadas por diferentes subprocesos cuyo estado de entrada se comparte.
Para obtener información sobre cómo crear ventanas, vea Clases de Windows.