这篇文章中“使用 Windows 更新包部分”下描述了唯一对我有用的东西(但我必须对启动脚本进行一些小改动)
基本上,我必须创建一个启动任务,它执行我在我的 Web 项目下创建的批处理文件 InstallWif.cmd。我还下载了 WIF 安装包 (Windows6.0-KB974405-x64.msu) 并将其包含到我的 Web 项目中。我将这两个文件的“复制到输出目录”属性设置为“始终复制” 。
InstallWif.cmd 包含以下脚本
@echo off
sc config wuauserv start= demand
wusa.exe "%~dp0Windows6.0-KB974405-x64.msu" /quiet /norestart
sc config wuauserv start= disabled
exit /b 0
请注意,我必须使用 Windows6.0-KB974405-x64.msu 而不是 Windows6.1-KB974405-x64.msu。我发现通过使用与 Azure 的远程桌面连接登录到 Azure VM 实例并尝试在此处手动安装此版本,无法安装 6.1 版本。
启动任务在 ServiceDefinition.csdef 文件中定义,如下所示
<Startup>
<Task commandLine="InstallWif.cmd" executionContext="elevated" taskType="simple" />
</Startup>