安装程序需要区分Vista和XP

AAT*_*AAT 1 windows installer windows-installer

我需要为设备安装USB驱动程序,以便ActiveSync(在XP下)或移动设备中心(在Vista下)识别它.

但是,需要为ActiveSync(XP)安装的.INF文件与MDC(Vista)的.INF文件不同.所以我需要一个安装程序,可以确定目标是XP还是Vista并安装正确的文件.

我只是使用Visual Studio 2005来创建安装程序,而不是更复杂的东西,但我看不到任何方法来安装依赖于目标操作系统的文件.我是否需要创建自定义操作才能执行此操作?如果是这样,它应该做什么,例如设置一个环境变量?

Wil*_*ara 5

使用Windows Installer属性:

操作系统属性值

特别:

VersionNT

WindowsBuild

ServicePackLevel

例:

VersionNT>500 And VersionNT<600 将意味着XP

VersionNT=600 意味着Vista

  • 您可以使用VersionNT和VersionNT64属性区分32位和64位架构; VersionNT将设置为32位,VersionNT64为64位.使用最新的操作系统(即Vista和Server 2008,Windows 7和Server 2008 R2),您甚至无法使用VersionNT,WindowsBuild和ServicePackLevel来区分工作站和服务器操作系统,因为它们是相同的.为此,您需要使用`MsiNTProductType`属性. (2认同)