AU3 如何判断应用程序没有运行但进程里面包含的这种情况
RT, AU3 如何判断没有运行的程序但系统进程里面有这个程序这种情况了,用 Not Run("") AND ProcessExists("") 时候最小化时候也会被判断为木有运行了,菜鸟求指导啊~~~ 检测进程并返回路径,再对比你要检测的没有运行的文件的路径,不一致就是没运行啊~! 和你的文件的路径对比就行了$PID=ProcessExists ( "hh.exe" )MsgBox(64, "提示", "进程路径是:" & Procespath($PID))
Func Procespath($iPID)
;通过API获取指定PID的进程路径
;官方牛人制作
Local $aProc = DllCall('kernel32.dll', 'hwnd', 'OpenProcess', 'int', BitOR(0x0400, 0x0010), 'int', 0, 'int', $iPID)
If $aProc = 0 Then Return SetError(1, 0, '')
Local $vStruct = DllStructCreate('int')
DllCall('psapi.dll', 'int', 'EnumProcessModules', 'hwnd', $aProc, 'ptr', DllStructGetPtr($vStruct), 'int', DllStructGetSize($vStruct), 'int_ptr', 0)
Local $aReturn = DllCall('psapi.dll', 'int', 'GetModuleFileNameEx', 'hwnd', $aProc, 'int', DllStructGetData($vStruct, 1), 'str', '', 'int', 2048)
If StringLen($aReturn) = 0 Then Return SetError(2, 0, '')
Return $aReturn
EndFunc ;==>Processpath
页:
[1]