WIX操作系统条件始终为真

时间:2014-06-06 13:53:13

标签: c# visual-studio-2010 wix conditional-statements deployment-project

我有一个DLL,我需要根据我正在安装的操作系统安装在特定的文件夹中。

对于XP,它安装在system32中,而在Win7上,它安装在SysWow64中。

解决方案是C#,我正在使用部署项目。

在部署项目中,使用文件系统编辑器,我在内部添加了system32和SysWow64以及DLL。

在文件夹级别,我使用条件字段来创建文件夹/ dll。

对于System32,我的条件是[CDATA [VersionNT = 501]]

对于SysWow64,我的条件是[CDATA [VersionNT = 601]]

我发现DLL只会插入XP系统,但会在两个操作系统上创建SysWow64文件夹和DLL。

我尝试了不同的变化,但我似乎无法找到我出错的地方。

我从这个帖子How to check the system is Windows 7 or Windows Server 2008 R2 in Wix Installer?

获得了条件信息

Image of Deployment Project and Condition

1 个答案:

答案 0 :(得分:0)

对不起,我不得不等待8个小时才能回答我自己的问题。

根本问题是一个愚蠢的错误。

每次更改部署项目后,我都在重建解决方案。我应该是右键单击部署项目并选择构建它。谢谢你的帮助。

我在条件字段中删除了WIX <!CDATA[ ]部分,如[Damien_The_Unbeliever] [1]所述,并将条件添加到DLL而不仅仅是文件夹。