我正在尝试安装一些Windows独立更新文件,为此我需要使用wusu.exe。每次不断wusu.exe都会挂起。我创建了一个名为prereqs.bat的批处理文件,在这个文件中我调用了wusu.exe。如果它挂起,我需要代码杀死wusu.exe,然后重试它。
这是我现在的代码:
:PreReqs32
taskkill /im prereqs32.bat /f
taskkill /im wusa.exe /f
当它循环回来时,它会杀死批处理文件和wusa.exe
start cmd /k c:\windows\temp\prereqs.bat
外部进程,以便在出现问题时我可以杀死wusu.exe。
timeout /t 240 /NOBREAK
此超时要等到安装完成,这有时是不够的。
taskkill /im "[wusa.exe]" /fi "STATUS eq NOT RESPONDING"
if "%ERRORLEVEL%"=="1" goto PreReqs32
是否存在某种FOR循环的方式,如果状态为不"没有响应"则退出逻辑?
另外,作为奖励,有没有办法放弃超时,只是等待"为了在继续之前完成prereqs.bat,假设wusu.exe没有挂起?