L'obiettivo è di avviare in modo programmatico un Windows Form, ottenere il relativo handle e inviare informazioni alla sua funzione wndProc() utilizzando la funzione SendMessage() di Win Api.Come si ottiene un handle della finestra principale di Process in C#?
Ho ricevuto la parte SendMessage(), ma il problema ora è ottenere l'handle del modulo dopo l'avvio del processo.
La mia prima ipotesi era che la proprietà MainWindowHandle di Process mi avrebbe ottenuto l'handle che sto cercando, ma dopo aver avviato il processo MainWindowHandle rimane uguale a 0 e il codice seguente non mostra l'handle del processo che ho appena avviato :
Qualcuno può dirmi come fare questo e se può effettivamente essere fatto?
Provare a fare 'Thread.Sleep (3000);' dopo aver avviato il processo, verificare se il risultato è diverso. Inoltre, che processo stai iniziando? Ha persino una finestra? – SimpleVar
sembra che mettere il filo addormentato abbia funzionato. grazie –
@YoryeNathan puoi inserire il tuo commento come risposta? –