我正在为 Office 2010 和其他几个应用程序编写部署脚本,我们在测试中遇到的问题之一是一些计算机仍然有 XP SP2,所以我想为此编写一个安全措施。
我想出了这个
Set colOperatingSystem = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystem
ServicePack = objOperatingSystem.ServicePackMajorVersion
Next
IF not ServicePack = "3" Then
MsgBox "WARNING: prerequisite to installing Microsoft Office 2010 Professional you must first install service pack 3" & VbCrlf & "your current Service Pack Version is " & ServicePack
ELSE
'Do Nothing
END IF
我将它插入 XP SP2 机器并得到警告弹出 On_WindowLoad,所以我很高兴,但是一旦我将它插入我的 windows 7 机器,它就会抛出相同的消息,深入研究 powershell 我意识到自从 windows 7报告它的 ServicePackMajorVersion 编号为“1”,因此它不满足条件,
希望有人可能知道如何编写 IF / 条件语句来绕过 Windows 7 PC,我查看了内部版本号 7601,但不确定如何嵌套这些