Per capire bene il 'giro' che fai occorerebbe avere i progetti da testare.
Se puoi creare dei progettini che riproducano lo scenario ci si può dare un'occhiata.
In effetti se i processi delle DL sono diffferenti, la SetFregroundWindow non funziona.
Allore dovresti usare prima individuare il processo che ha aperto il form
ed utilizzare la funzione API AllowSetForegroundWindow
http://allapi.mentalis.org/apilist/A...ndWindow.shtml
Comunque, riguardando bene la tua istruzione vedo che passi 0 wParam,
mentre, come indicato sulla guida, questo messaggio richiede un valore diverso da 0 nel LOWORD di wParam :
fActive = LOWORD(wParam); // activation flag
che nel tuo caso dovrebbe essere WA_ACTIVE
Private Const WA_ACTIVE As Long = 1
Come simulare HIWORD, LOWORD, HIBYTE, LOBYTE macro C in VB
http://support.microsoft.com/kb/112651
![]()