如何创造空闲时间



我正在创建一个批处理文件程序,如果你打开一个mspaint.exe,如果它空闲10秒,程序将自动关闭。我创建了这个:

@echo off
:Start
tasklist /FI "IMAGENAME eq mspaint.exe" | findstr "mspaint.exe" >nul  
IF "%ERRORLEVEL%" == "0" GOTO Running
IF "%ERRORLEVEL%" == "1" GOTO NotRunning
:Running
***::Check if idle***
GOTO Terminate
:NotRunning
 GOTO EOF
:Terminate
timeout 5
taskkill /im mspaint.exe /f
ECHO Paint has been terminated due to inactivity
PAUSE
:EOF
EXIT

我有麻烦找到空闲语法(似乎它不存在),有没有另一种方法使空闲时间的工作?因为这是我第一次创建批处理文件,所以我真的需要一个帮手。

不是你想听到的答案,而是你需要的答案。监视另一个进程的活动的唯一方法是安装窗口钩子,但这将需要一个更低级的语言(C或c++)。

如果这还没有让你感到厌烦,那就从Microsoft Hooks概述开始,并发布进一步的问题。祝你好运(你可能需要它)。

谢谢你的帮助,但这似乎很复杂。我用SCHTASKS代替,它工作了:)

最新更新