如何检查是否已从 c# 安装了 Windows QFE/补丁? [英] How do I check that a Windows QFE/patch has been installed from c#?
本文介绍了如何检查是否已从 c# 安装了 Windows QFE/补丁?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在 c# 中确定是否已安装给定 QFE/补丁的最佳方法是什么?
解决方案
使用 WMI 并检查 Win32_QuickFixEngineering 枚举.
来自 TechNet:
strComputer = "."Set objWMIService = GetObject("winmgmts:" _&"{impersonationLevel=impersonate}!\\" &strComputer &"\root\cimv2")设置 colQuickFixes = objWMIService.ExecQuery _(从 Win32_QuickFixEngineering 中选择 *")对于 colQuickFixes 中的每个 objQuickFixWscript.Echo "计算机:" &objQuickFix.CSNameWscript.Echo "描述:" &objQuickFix.DescriptionWscript.Echo "Hot Fix ID: " &objQuickFix.HotFixIDWscript.Echo "安装日期:" &objQuickFix.InstallDateWscript.Echo "安装者:" &objQuickFix.InstalledBy下一个
HotFixID 是您要检查的内容.
这是我系统上的输出:
<前>热修复 ID:KB941569描述:Windows XP 安全更新 (KB941569)热修复 ID:KB937143-IE7描述:Windows Internet Explorer 7 安全更新 (KB937143)热修复 ID:KB938127-IE7描述:Windows Internet Explorer 7 安全更新 (KB938127)热修复 ID:KB939653-IE7描述:Windows Internet Explorer 7 安全更新 (KB939653)热修复 ID:KB942615-IE7说明:Windows Internet Explorer 7 安全更新 (KB942615)热修复 ID:KB944533-IE7描述:Windows Internet Explorer 7 安全更新 (KB944533)热修复 ID:KB947864-IE7说明:Windows Internet Explorer 7 修补程序 (KB947864)热修复 ID:KB950759-IE7描述:Windows Internet Explorer 7 安全更新 (KB950759)热修复 ID:KB953838-IE7描述:Windows Internet Explorer 7 安全更新 (KB953838)热修复 ID:MSCompPackV1描述:Microsoft Compression Client Pack 1.0 for Windows XP热修复 ID:KB873339描述:Windows XP 修补程序 - KB873339热修复 ID:KB885835描述:Windows XP 修补程序 - KB885835热修复 ID:KB885836描述:Windows XP 修补程序 - KB885836热修复 ID:KB886185描述:Windows XP 修补程序 - KB886185热修复 ID:KB887472描述:Windows XP 修补程序 - KB887472热修复 ID:KB888302描述:Windows XP 修补程序 - KB888302热修复 ID:KB890046说明:Windows XP 安全更新 (KB890046)What's the best way in c# to determine is a given QFE/patch has been installed?
解决方案
Use WMI and inspect the Win32_QuickFixEngineering enumeration.
From TechNet:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colQuickFixes = objWMIService.ExecQuery _
("Select * from Win32_QuickFixEngineering")
For Each objQuickFix in colQuickFixes
Wscript.Echo "Computer: " & objQuickFix.CSName
Wscript.Echo "Description: " & objQuickFix.Description
Wscript.Echo "Hot Fix ID: " & objQuickFix.HotFixID
Wscript.Echo "Installation Date: " & objQuickFix.InstallDate
Wscript.Echo "Installed By: " & objQuickFix.InstalledBy
Next
The HotFixID is what you want to examine.
Here's the output on my system:
Hot Fix ID: KB941569 Description: Security Update for Windows XP (KB941569) Hot Fix ID: KB937143-IE7 Description: Security Update for Windows Internet Explorer 7 (KB937143) Hot Fix ID: KB938127-IE7 Description: Security Update for Windows Internet Explorer 7 (KB938127) Hot Fix ID: KB939653-IE7 Description: Security Update for Windows Internet Explorer 7 (KB939653) Hot Fix ID: KB942615-IE7 Description: Security Update for Windows Internet Explorer 7 (KB942615) Hot Fix ID: KB944533-IE7 Description: Security Update for Windows Internet Explorer 7 (KB944533) Hot Fix ID: KB947864-IE7 Description: Hotfix for Windows Internet Explorer 7 (KB947864) Hot Fix ID: KB950759-IE7 Description: Security Update for Windows Internet Explorer 7 (KB950759) Hot Fix ID: KB953838-IE7 Description: Security Update for Windows Internet Explorer 7 (KB953838) Hot Fix ID: MSCompPackV1 Description: Microsoft Compression Client Pack 1.0 for Windows XP Hot Fix ID: KB873339 Description: Windows XP Hotfix - KB873339 Hot Fix ID: KB885835 Description: Windows XP Hotfix - KB885835 Hot Fix ID: KB885836 Description: Windows XP Hotfix - KB885836 Hot Fix ID: KB886185 Description: Windows XP Hotfix - KB886185 Hot Fix ID: KB887472 Description: Windows XP Hotfix - KB887472 Hot Fix ID: KB888302 Description: Windows XP Hotfix - KB888302 Hot Fix ID: KB890046 Description: Security Update for Windows XP (KB890046)
这篇关于如何检查是否已从 c# 安装了 Windows QFE/补丁?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文