|
楼主 |
发表于 2009-10-26 15:05:02
|
显示全部楼层
本帖最后由 ylk94377113 于 2009-10-26 15:06 编辑
如果有两相同个进程怎么办?
以下是通过进程方式来获得句柄
Local $aWList = WinList()
Local $aRet[1] = [0]
_WinGetByPid(ProcessExists("notepad.exe"))
MsgBox(0,"",$aRet[1])
Func _WinGetByPid($iPID)
For $iCC = 0 To $aWList[0][0]
If WinGetProcess($aWList[$iCC][1]) = $iPID AND _
BitAND(WinGetState($aWList[$iCC][1]), 2) Then
ReDim $aRet[UBound($aRet)+1]
$aRet[0] += 1
$aRet[$aRet[0]] = $aWList[$iCC][1]
EndIf
Next
If $aRet[0] = 0 Then
Return SetError(1, 0, 0)
Else
Return $aRet
EndIf
EndFunc |
|