我已经制作了一个基本的BAT脚本来下载 Avast 病毒数据库更新,然后通过运行下载的文件来应用它们。
但这并不起作用,因为该窗口不会在按下“Enter”或“ALT F4”时关闭,它只有在点击“完成”或关闭窗口的叉号“x”时才会关闭(如果它可以工作,那么它将再次设置时间的问题)。
更新过程完成后,有没有一种自动关闭该窗口的方法?
@ECHO OFF
set downloadFolder=C:\Users\myuser\Downloads\Avast_updates
set downloadUrl=https://install.avcdn.net/vps18/vpsupd.exe
bitsadmin /transfer myAvastUpdates /download /priority normal ^
"%downloadUrl%" "%downloadFolder%\vpsupd.exe"
start /min "Update..." "%downloadFolder%\vpsupd.exe"
exit
此外,我已经创建了一个Windows任务来每隔x个小时运行BAT文件。
一切都正常工作,但是我想知道是否有任何方法可以在更新过程完成后自动关闭可执行窗口。
我考虑使用TASKILL
命令等待x秒后关闭窗口,但这不能保证更新进程在x秒内完成,有时可能需要更长的时间,有时可能需要更短的时间,而且我不想在程序安装器中使用该命令。
然后我想通过WshShell.SendKeys
发送“Enter”:
set SendKeys=CScript //nologo //E:JScript "%~F0"
cls
timeout /t 5 >nul
%SendKeys% "{ENTER}"
@end
var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.SendKeys(WScript.Arguments(0));
但这并不起作用,因为该窗口不会在按下“Enter”或“ALT F4”时关闭,它只有在点击“完成”或关闭窗口的叉号“x”时才会关闭(如果它可以工作,那么它将再次设置时间的问题)。
更新过程完成后,有没有一种自动关闭该窗口的方法?
Taskkill /im notepad.exe
会要求关闭记事本窗口。 - user12431753/silent
,请查看vpsupd.exe /?
。 - Stephancd
到vpsupd.exe
的位置,然后执行vpsupd.exe /?
。如果不起作用,请尝试vpsupd.exe -?
。 - Stephan