每次Windows更新完成后(即重新启动后还是更新后不需要重新启动),是否有办法运行特定的脚本?
我的应用程序正在遭受MSCOMCTL.OCX更新 ,而且似乎每次Windows Update更新时,用户都需要应用我的修补程序脚本。
编辑 :对于Windows 7和更高版本。
我相信,最终,正确的答案是“修复你的申请”。 但是,您可能无法出于任何原因。 话虽如此…
哪个版本的Windows? 在Vista / 2008及更高版本中,您可以将“计划任务”与特定的事件ID绑定。 在系统事件日志中,来自WindowsUpdateClient的事件ID 19表示成功的WUA更新安装 。

启动任务计划程序pipe理单元taskschd.msc 。 右键单击“任务计划程序库”,然后select“创build基本任务…”。

在下一个屏幕中,input名称和简要说明,然后单击“下一步”。

点击标有“logging特定事件时”的单选button,点击“下一步”。

select“系统”作为日志,“WindowsUpdateClient”作为源,“19”作为事件ID,点击“下一步”。

点击“开始程序”单选button,点击“下一步”。

提供“修复”脚本或可执行文件的path,单击“下一步”。

检查您的设置是否正确,然后点击“完成”。

现在,您将看到使用您的设置在库中列出的计划任务。
这是一个命令行示例,仅使用C:\Windows\system32\schtasks.exe ,XPathfilter语法花了我一段时间。 看来Task Scheduler 只使用XPath的一个子集 。
REM Create scheduled task triggered by WindowsUpdateClient event ID 19 schtasks /Create /TN "Post WUA Update Install" /TR "C:\scripts\your.fix.cmd" /SC ONEVENT /EC System /MO "*[System[Provider[@Name='Microsoft-Windows-WindowsUpdateClient'] and (EventID=19)]]"