然后,您需要检查所有列出的更新是否已应用或单个主更新是否已应用。我不确定如何仅使用C#进行此操作,但通过命令行,您可以通过控制台命令轻松完成。
wmic qfe get hotfixid | find "KB2919355"
我从MSDN下载安装了Windows 8.1更新,在它在Windows Update上线之前。它被分发为一系列带有ReadMe的MSU文件。如果您选择检测它们的存在,ReadMe中的更新列表可能会很有用。
Windows 8.1, Windows Server 2012 R2, Windows RT 8.1 Update
Recommended Install Order
1. KB2919442
2. KB2919355
3. KB2932046
4. KB2937592
5. KB2938439
6. KB2949621
这可能是罪魁祸首:
Windows 8.1和Windows Server 2012 R2中的操作系统版本更改
表现
在Windows 8.1中,GetVersion(Ex) API已被弃用。这意味着虽然您仍然可以调用API,但如果您的应用程序没有专门针对Windows 8.1进行定位,则会获得Windows 8版本(6.2.0.0)。
解决方案
为了针对Windows 8.1进行定位,您需要包含应用程序清单或在源文件中包含_NT_TARGET_VERSION=$(_NT_TARGET_VERSION_LATEST)。
所需清单内容的详细信息在文章中给出。