Come trovare un figlio di un'app Win32 non gestita genitore
Domanda
Fondamentalmente sto cercando un metodo win32 da invocare in C # per focalizzare l'attenzione su un figlio di un'applicazione non gestita.
Ma prima devo trovare l'handle del controllo figlio quale è il problema. Qualche utile funzione win32 per risolvere questo problema?
Soluzione
Esiste una libreria che supporta l'enumerazione e la ricerca di handle di finestre, disponibile all'indirizzo http: //mwinapi.sourceforge. net /
Solo per non dover reinventare la ruota ogni volta;)
Inizia con
SystemWindow.AllToplevelWindows
e poi scava verso il basso (guardando i nomi delle classi, i nomi dei processi, i titoli, gli ID delle finestre di dialogo, qualunque cosa).
Altri suggerimenti
Usa FindWindowEx per trovare l'handle della finestra che ' stai cercando. Una volta che hai quell'handle, usa EnumChildWindows per trova il bambino giusto di cui hai bisogno. C'è troppo codice per me per scrivere rapidamente un campione, ma sul Web c'è abbastanza aiuto.
Da Pinvoke.net: http://www.pinvoke.net/ default.aspx / user32 / EnumChildWindows.html
Hai provato a usare FindWindowEx?