启动条件:具有OS位的Windows OS Service Pack版本

时间:2015-05-20 14:25:42

标签: c# visual-studio-2010 setup-deployment

对于Windows应用程序,我在VS2010创建一个部署项目。我想添加Launch Condition,例如:

安装程序应该开始:

  • 拥有Service Pack 3的Windows XP 适用于32位

      

    OR

  • 拥有Service Pack 2的Windows XP 适用于64位

目前我尝试使用条件(VersionNT = "501") AND (ServicePackLevel = "3"),但此条件仅检查适用于32位Windows XP的Windows XP和Service Pack版本3,但是当我在64位Windows XP上运行时,它会给出我已发出的消息。< / p>

那么如何检查Windows版本和Bit以及Service Pack版本?

1 个答案:

答案 0 :(得分:0)

我是通过这个启动条件写的来实现的:

((VersionNT = "501") AND (Not VersionNT64) AND (ServicePackLevel = "3")) OR ((VersionNT = "501") AND (VersionNT64) AND (ServicePackLevel = "2"))

VersionNTServicePackLevel将检查Windows操作系统名称和Service Pack版本。阅读更多@ https://msdn.microsoft.com/en-us/library/aa370556%28v=vs.85%29.aspx

VersionNT64表示64位操作系统,Not VersionNT64操作系统是32位。阅读更多@ http://blogs.flexerasoftware.com/installtalk/2010/11/using-msi-launch-conditions-to-prevent-installation-on-unsupported-windows-platforms.html