xuzhouchuanxp 发表于 2022-4-22 13:42:48

马上就要成功了,你却不研究了。。。。

tubaba 发表于 2022-4-25 15:05:56

窗口句柄一旦创建,将伴随整个窗口过程,在窗口销毁前,句柄一直存在。而且句柄是唯一的,从不重复。因此,不可能有句柄消失又回来的情况。也许是你判断的过程有误。A版已经提示你了,不要死钻牛角尖。如果你检测到句柄为0,可能是窗口没有被检测到(隐藏?)

smooth 发表于 2022-4-26 21:43:10

本帖最后由 smooth 于 2022-4-26 21:44 编辑

tubaba 发表于 2022-4-25 15:05
窗口句柄一旦创建,将伴随整个窗口过程,在窗口销毁前,句柄一直存在。而且句柄是唯一的,从不重复。因此, ...
不是钻牛角尖,而是没有掌握方法。我之前一直都是基于窗口标题去检测,方法不对路。

Opt("WinTitleMatchMode", 2) ;匹配窗口标题的模式调整为“按子字符串”来匹配
HotKeySet("{ESC}", "_Exit")
Global $i = 0
Do
Sleep(1000)
$i += 1
Global $iProcess = WinGetProcess("上海浦东发展银行公司网上银行")
Until $iProcess <> -1 Or $i > 100000
Dim $aGetWeb
While 1
Sleep(100)
If UBound($aGetWeb) -1 = 0 Then
   $aGetWeb = $iProcess
ReDim $aGetWeb
ElseIf $iProcess <> $aGetWeb Then
$aGetWeb = $iProcess
ReDim $aGetWeb
EndIf
If Not ProcessExists($iProcess) Then ExitLoop
WEnd
_ArrayDisplay($aGetWeb)
Func _Exit()
Exit
EndFunc   ;==>_Exit

页: 1 [2]
查看完整版本: [已解决]请教如何捕获Web浏览器退出时的系统消息