2009-09-02 73 views
1

我需要安装一个USB驱动程序的设备上,以便由ActiveSync(XP下)或移动设备中心(Vista下)的认可。安装需要区分Vista和XP

但是这需要安装用于ActiveSync(XP)的.inf文件是从MDC(Vista系统)的.inf文件不同。所以我需要一个安装程序,它可以确定目标是XP还是Vista,并安装正确的文件。

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

回答

5

使用Windows安装程序属性:

Operating System Property Values

特别:

VersionNT

WindowsBuild

ServicePackLevel

例子:

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

VersionNT=600将意味着Vista的

+0

“VersionNT> 500和VersionNT <600将意味着XP” 怎么样服务器2003? “VersionNT = 600将意味着Vista的”这不是一个好主意,你可能想> = – Anders 2009-09-02 19:50:46

+0

权,我想给一个普通的例子。如果您按照我发布到操作系统属性值的链接,您会看到所有的细节。 502是Server 2003和XP 64位。所以,如果你想考虑使用XP 64位,事情就会改变 - 你会另外使用VersionNT64属性。再次,请参阅我也链接的MSDN文章,并编写一个适合您需求的条件。 – 2009-09-03 04:00:52

+0

感谢威廉 - 工作正常。我不需要担心服务器版本或64位版本在我的情况如此“VersionNT> = 500和VersionNT <600”为XP文件,并为Vista做的伎俩就好了“VersionNT> = 600”。 – AAT 2009-09-04 11:15:51