本帖最后由 heroxianf 于 2016-12-17 12:25 编辑
回复 18# kevinch
这是海大给我的检测代码,虽然看不太懂,但是可以搞定,分享给你了。
Func GetControlHandleList()
Local $aArray, $n
$aArray = _WinAPI_EnumWindows()
If Not @error Then
For $n = 1 To $aArray[0][0]
If _WinAPI_GetWindowText($aArray[$n][0]) = $RecordExcelFileName And StringInStr($aArray[$n][1], 'EXCEL') Then
$RecordHwd = $aArray[$n][0]
ExitLoop
EndIf
Next
Else
Return SetError(2, 0, 0)
EndIf
Local $ExcelHwd = WinGetHandle('[CLASS:XLMAIN]')
Local $List = _WinAPI_EnumChildWindows($ExcelHwd)
If Not IsArray($List) Then Return SetError(ProcessClose('excel.exe'), 0, 0)
Return SetError(0, 0, 1)
EndFunc ;==>GetControlHandleList
|