忽略“定位' xxx'与项目的目标“警告不兼容

时间:2014-05-07 18:32:02

标签: windows-installer setup-deployment mismatch vdproj target-platform

这个问题在here之前提出过,但这个问题从来没有回答过。 如何在MS安装程序部署项目中禁止警告/错误?

由于

2 个答案:

答案 0 :(得分:0)

它提醒你,你做错了,因为32位MSI不能包含64位组件:

http://msdn.microsoft.com/en-us/library/aa367451(v=vs.85).aspx

并且不同的架构需要不同的设置:

http://blogs.msdn.com/b/heaths/archive/2008/01/15/different-packages-are-required-for-different-processor-architectures.aspx

因此,如果目标机器是x64(为什么还需要64位Dll?),那么你可以通过将其构建为x64 MSI文件来消除警告,因为64位MSI可以同时包含32位和64位文件。我刚试过这个,它确实摆脱了警告。我知道没有其他方法来压制这个警告。

答案 1 :(得分:0)

亲爱的stackoverflow朋友, 如果您按照msdn或其博客或其他安装程序供应商中提供的建议进行操作,他们会将您带入圈内。

如果您阅读我原来的问题,那就非常简单 - 这是一个常见的做法是一个单独的问题。但我和其他人确实需要针对此部署方案的解决方案。

所以我发现最简单的解决方法是安装程序限制(禁止在x86目标平台中使用x64程序集)压缩到文件并将其包含到项目中,安装程序无法检测到它是否适用于x64。下一步是在AfterInstall事件中创建要解压缩的自定义操作,并删除AfterUninstall事件中的解压缩文件。自定义动作dll非常容易创建!!

我希望这有助于其他尝试完成类似部署方案的人。