使用registry或文件系统。 限制的原因是我作为一个MSI条件声明。
干杯!
在注册表项下
HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion
寻找密钥对:
CurrentVersion = Microsoft Windows NT 5.1.2600 Service Pack 3
您应该在以下注册表项中找到足够的信息来确定OS Service Pack(最糟糕的情况下,您始终可以使用构建字符串):
HKLM\Software\Microsoft\Windows NT\CurrentVersion
如果您使用的是MSI,则应该能够在条件语句中使用VersionNT和ServicePackLevel属性。
例如。 以下代码检查Windows XP sp3或更高版本:
VersionNT=501 And ServicePackLevel>2
如果还需要内部版本号,也可以检查WindowsBuild属性。
VerifyVersionInfo函数应该允许您检查正在运行的Windows版本是否符合您的应用程序的要求,而没有使用GetVersionEx检查确切版本时可能发生的问题(例如打破主要版本更改 – 您的应用程序很可能在Vista上运行,和Windows 7,以及未来的版本尚未开发)。
“运行”(Windows键+ r或启动/运行)msinfo32或sysdm.cpl