Spiego meglio:
Io ho due exe:
il primo avvia 30 volte il primo
il secondo crea una finestra ogni volta che si avvia.
Il problema è che il secondo processo deve capire chi è il primo processo che è stato avviato.
Quindi un processo avrà una variabile tipo questa: bSonoStatoAvviatoPerPrimo = TRUE, mentre gli altri 29 avranno questa bSonoStatoAvviatoPerPrimo = FALSE.
Se io uso la FindWindow() non lavora bene perchè visto che i processi devono essere avviati uno dopo l'altro senza Sleep() accade questo:
("=>" significa "di conseguenza")
Processo1): FindWindow() ritorna NULL => bSonoStatoAvviatoPerPrimo = TRUE (Tutto ok )
Processo2): FindWindow() ritorna comunque NULL perchè il primo processo non ha ancora chiamato la CreateWindow()=> bSonoStatoAvviatoPerPrimo = TRUE (MALE! il processo avviato per primo è solo 1! )
Processo3): Lo stesso per Processo2)
/*Vari processi che si comportano come Processo2*/
Finalmente): Processo1 chiama la CreateWindow(), ma ormai è troppo tardi....
Se ci fosse quella API ho ideato un metodo abbastanza veloce è robusto.....però non la trovo..... bhe adesso che avete capito il problema a fondo, come potrei fare?

..... bhe adesso che avete capito il problema a fondo, come potrei fare?
Rispondi quotando