任何MSI安装项目上的"不可恢复的构建错误"

Rob*_*cks 20 windows-installer compiler-errors vs-error visual-studio-2008

前一段时间我在构建任何Visual Studio部署项目时遇到此错误.

"无法恢复的构建错误"

我以为我的VS安装已损坏或我删除了一些重要文件,但是......

Rob*_*cks 25

......我所要做的就是.

关闭 Visual Studio.

启动,运行或WIN + R,键入cmd,确定.

regsvr32 "C:\Program Files\Common Files\Microsoft Shared\MSI Tools\mergemod.dll"
regsvr32 ole32.dll
Run Code Online (Sandbox Code Playgroud)

关闭命令提示符.

打开 Visual Studio并尝试重建部署项目!它对我有用!

  • 不要忘记,如果你在x64位机器上运行,你必须从`C:\ Program Files(x86)\ Common Files\Microsoft Shared\MSI Tools\mergemod.dll`引用mergemod.dll. (4认同)
  • 非常棒的回答老兄!+1 (2认同)
  • 我确信它一定是显而易见的,但微软的指示不包括关闭Visual Studio,这阻止了他们为我工作.谢谢! (2认同)
  • 另外,不要忘记以管理员身份运行cmd.否则,您可能会因臭名昭着的代码0x80004005而出错. (2认同)

Bid*_*ids 6

我们遇到了这个问题,上面的解决方案对我们没有用.经过几天的搔痒,我们发现我们的解决方案是从本地用户临时文件夹中删除所有VSI*.TMP文件:

C:\ Documents and Settings\username\Local Settings\Temp

在我们的情况下,这在Hudson构建机器上出错 - Visual Studio似乎创建临时文件而不是正确清理它们.一旦它创建了65536个临时文件(VSI0000.tmp到VSIFFFF.tmp),它就不能再创建了,并且MSI项目将无法构建.

感谢此博客文章的解决方案:

http://blog.richardadleta.com/2009/08/using-visual-studio-command-line.html


gri*_*mdp 5

如果您将项目输出包含为“发布项”并且未指定将生成输出的 PublishProfilePath,也可能会发生这种情况。不幸的是,当您选择此输出类型时,系统不会提示您选择此关键信息。

要指定路径,请单击“文件系统”窗口右窗格中的“项目输出”项, 文件系统选项卡

然后显示它的“属性”面板(Ctrl+W、P)。

属性面板

单击该字段,您应该能够为您的项目选择所需的发布配置文件(如果您尚未创建发布配置文件,则需要右键单击“解决方案资源管理器”中的主项目,然后单击“发布”;我创建了一个文件夹配置文件) 。进行干净的构建,就我而言,问题已解决。

请注意,我之前已经注册了上述 DLL,因此这也可能是问题的一部分。