Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WIX操作系统条件始终为真_C#_Visual Studio 2010_Wix_Conditional Statements_Deployment Project - Fatal编程技术网

C# WIX操作系统条件始终为真

C# WIX操作系统条件始终为真,c#,visual-studio-2010,wix,conditional-statements,deployment-project,C#,Visual Studio 2010,Wix,Conditional Statements,Deployment Project,我有一个DLL,我需要安装在一个特定的文件夹中,这个文件夹基于我安装的操作系统 对于XP,它安装在system32中,而在Win7上,它安装在SysWow64中 解决方案是C#,我正在使用一个部署项目 在部署项目中,我使用文件系统编辑器添加了system32和SysWow64,其中都包含DLL 在文件夹级别,我使用condition字段创建文件夹/dll或不创建文件夹/dll 对于System32,我有条件[CDATA[VersionNT=501]] 对于SysWow64,我有条件[CDATA[

我有一个DLL,我需要安装在一个特定的文件夹中,这个文件夹基于我安装的操作系统

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

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

在部署项目中,我使用文件系统编辑器添加了system32和SysWow64,其中都包含DLL

在文件夹级别,我使用condition字段创建文件夹/dll或不创建文件夹/dll

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

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

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

我尝试过不同的变化,但我似乎找不到哪里出了问题

我从这个线程获得了条件信息


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

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

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


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

很少根据操作系统版本而不是操作系统的位来选择位置。由于SysWow64只存在于64位OS.Hmm上,您是否也在vs2010安装项目下尝试相同的安装方法?(代替wix)你是什么意思?我正在使用安装项目。我的印象是条件字段与WIX条件相同。WIX答案中的
]]>
位是该条件(与WIX中的所有其他条件一样)存储在XML文件中这一事实的产物。正在测试的实际情况只是
已安装或VersionNT>=601
请将您的答案作为答案发布。您可以从“已编辑…”链接访问回滚功能,以将问题帖子还原为问题。