2009-12-23 19 views
20

¿Cómo puedo obtener el identificador de ventana, dando el nombre del proceso o título de la ventana en C# .. dado el proceso está en ejecución ya¿Cómo obtengo el identificador de ventana dando el nombre del proceso que se está ejecutando?

+2

Ver esto para conseguir las ventanas hijas: http://stackoverflow.com/questions/79111/net-c-getting-child-windows-when-you-only-have-a-process-handle-or -pid/79205 # 79205 –

+0

Supone que un proceso tiene solo una ventana. No es una suposición válida. –

Respuesta

35

Puede utilizar la clase Process.

Process[] processes = Process.GetProcessesByName("someName"); 

foreach (Process p in processes) 
{ 
    IntPtr windowHandle = p.MainWindowHandle; 

    // do something with windowHandle 
} 
+1

+1. Buena respuesta. Esto funcionará si es el manejador de la ventana principal que se necesita. – David

+8

Tenga en cuenta que MainWindowHandle devuelve 0 si la ventana principal está oculta ... –

+0

¿hay alguna manera de hacer esto en Java? –

Cuestiones relacionadas