0

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

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

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

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

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

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

对于 SysWow64 我有条件 [CDATA[VersionNT = 601]]

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

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

我从这个线程获得了条件信息如何在 Wix 安装程序中检查系统是 Windows 7 还是 Windows Server 2008 R2?

部署项目和条件的形象

4

1 回答 1

0

抱歉耽搁了,我不得不等待 8 小时才能回答我自己的问题。

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

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

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

于 2014-06-09T13:57:00.907 回答