症状
当您试图生成在 Visual Studio .NET 中创建的安装和部署项目时,您可能会收到以下错误信息:
Unrecoverable build error
原因
通常,发生此问题的原因有以下几种:
• | 在 Visual Studio .NET 开发环境中,打开了多个窗口。 |
• | 在您的 Visual Studio .NET 项目中,有多个文件夹同名。 |
• | 注册表中的一些接口注册丢失。 |
• | 在注册表中,Mergemod.dll 没有注册,或者注册了不完整的 Mergemod.dll 版本。 |
• | 您从 Visual Studio .NET 的 Beta 2 版本升级到了发行版。 |
解决方案
• | 多个打开的窗口 要解决此问题,请关闭其中的一些窗口,然后再次尝试生成该安装项目。 | ||||||||||||
• | 多个文件夹同名 要解决此问题,请为 Visual Studio .NET 项目中的各个文件夹分别指定一个唯一的名称。 | ||||||||||||
• | 注册丢失 警告:注册表编辑器使用不当可造成严重问题,这些问题可能需要重新安装操作系统。Microsoft 不保证能够解决因为注册表编辑器使用不当而产生的问题。使用注册表编辑器需要您自担风险。 要解决此问题,请在注册表中导入或手动添加丢失的信息。为此,请按照下列步骤操作:
| ||||||||||||
• | Mergemod.dll 未正确注册 要解决此问题,请再次注册 Mergemod.dll。通常,Mergemod.dll 位于以下文件夹中:
C:/Program Files/Common Files/Microsoft Shared/MSI Tools/Mergemod.dll
要注册 Mergemod.dll,请在命令提示符处键入以下命令,然后按 ENTER 键:
regsvr32 "C:/Program Files/Common Files/Microsoft Shared/MSI Tools/mergemod.dll"
| ||||||||||||
• | 从 Visual Studio .NET 的 Beta 2 版本升级 要解决此问题,请删除 Visual Studio .NET 的 Beta 2 版,然后重新安装发行版。 有关如何删除 Visual Studio .NET Beta 版的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
312383 HOW TO:删除 Visual Studio .NET Beta 版和 Release Candidate 版
|
状态
这种现象是设计使然。
更多信息
重现问题的步骤
要重现在 Mergemod.dll 未正确注册时所发生的现象,请遵循下列步骤:1. | 单击“开始”,然后单击“运行”。 |
2. | 在“打开”文本框中,键入以下命令,然后单击“确定”:
regsvr32 /u "C:/Program Files/Common Files/Microsoft Shared/MSI Tools/mergemod.dll"
|
3. | 启动 Visual Studio .NET。在“文件”菜单上,指向“新建”,然后单击“项目”。 |
4. | 在“项目类型”下,单击“安装和部署项目”。在“模板”下,单击“安装项目”。单击“确定”。 |
5. | 在“生成”菜单上,单击“生成解决方案”。 |