Vänta på att ett främmande formulär stängs av användaren.
Ok. Ja pillar på med mina formulär jag. Problemet nu är...
Jag vill vänta på att ett "tredjeparts" formulär (som jag öppnat). ska stängas av användaren innan
min kod fortsätter att exekvera.
Jag öppnar "tredjepartsformuläret" med:
<code>
Call Shell("Rundll32.exe oledb32.dll,OpenDSLFile " & Path)
</code>
alt.
<code>
threadID = Shell("Rundll32.exe oledb32.dll,OpenDSLFile " & Path)
</code>
Dessutom hämtar jag ett handle till fönstret jag öppnat.
<code>
ret = "Egenskaper För Datalänk"
dslHwnd = FindWindow(vbNullString, ret)
</code>
Så jag har threadID och jag har hWnd för formuläret. Men vad finns det för API
för att kontrollera om formuläret (hWnd alt. threadID) fortfarande lever?
Jag har letat runt o testat några API:er såsom waitForSingleObject, GetExitCodeThread
Men nån av er duktiga medhackare här ute kanske har lösningen på detta.
[Peter.H]
Svara
Sv: Vänta på att ett främmande formulär stängs av användaren.
Jag kom precis på en gång på en "fuling" - lösning. Så länge det finns ett DC för fönstret
så lever ju fönstret. Finns inget DC har användaren stängt ner det.
<code>
While GetWindowDC(dslHwnd) <> 0
DoEvents
Wend
</code>
Men jag håller tråden öppen för en vackrare lösning.
[Peter.H]
Svara
Sv:Vänta på att ett främmande formulär stängs av användaren.
Jag spolar den lösningen. Den är instabil verkar det som...
Svara