PRB: "Unrecoverable build error" error message when you build Setup and Deployment projects (329214)



The information in this article applies to:

  • Microsoft Visual Studio .NET (2003), Enterprise Architect Edition
  • Microsoft Visual Studio .NET (2003), Enterprise Developer Edition
  • Microsoft Visual Studio .NET (2003), Academic Edition
  • Microsoft Visual Studio .NET (2002), Professional Edition
  • Microsoft Visual Studio .NET (2002), Enterprise Architect Edition
  • Microsoft Visual Studio .NET (2002), Enterprise Developer Edition
  • Microsoft Visual Studio .NET (2002), Academic Edition

This article was previously published under Q329214
Important This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry

SYMPTOMS

When you try to build Setup and Deployment projects that you created in Visual Studio .NET, you may receive the following error message:
Unrecoverable build error

CAUSE

Typically, this problem occurs because of one of the following:
  • In the Visual Studio .NET development environment, you have multiple open windows.
  • In your Visual Studio .NET project, multiple folders have the same name.
  • Some interface registrations are missing from the registry.
  • In the registry, Mergemod.dll is not registered or an incomplete version of Mergemod.dll is registered.
  • You have upgraded from the Beta 2 version of Visual Studio .NET to the release version.

RESOLUTION

  • Too many code and design windows open
    To resolve this problem, close any start, code, or design windows that are not being used from within the Visual Studio .NET interactive development environment (IDE). These windows are accessed by tabs or by MDI type in the work area of the IDE.
  • Multiple folders have the same name
    To resolve this problem, assign a unique name to each folder in the Visual Studio .NET project.
  • Missing registrations
    Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

    To resolve this problem, import or manually add the missing information to the registry. To do this, follow these steps:
    1. Click Start, and then click Run. In the Open text box, type regedit, and then click OK to start Registry Editor.
    2. Add the following registry keys:
      • HKEY_CLASSES_ROOT\Interface\{00020404-0000-0000-C000-000000000046}
        Set the Default value of this key to IEnumVARIANT
      • HKEY_CLASSES_ROOT\Interface\{00020404-0000-0000-C000-000000000046}\NumMethods
        Set the Default value of this key to 7
      • HKEY_CLASSES_ROOT\Interface\{00020404-0000-0000-C000-000000000046}\ProxyStubClsid
        Set the Default value of this key to {00020421-0000-0000-C000-000000000046}
      • HKEY_CLASSES_ROOT\Interface\{00020404-0000-0000-C000-000000000046}\ProxyStubClsid32
        Set the Default value of this key to {00020421-0000-0000-C000-000000000046}
  • Mergemod.dll is not registered correctly
    To resolve this problem, register Mergemod.dll again. Typically, Mergemod.dll is located in the following folder:

    C:\Program Files\Common Files\Microsoft Shared\MSI Tools\Mergemod.dll

    To register the Mergemod.dll, type the following command at a command prompt, and then press ENTER:

    regsvr32 "C:\Program Files\Common Files\Microsoft Shared\MSI Tools\mergemod.dll"

  • Upgrade from the Beta 2 version of Visual Studio .NET
    To resolve this problem, remove the Beta 2 version of Visual Studio .NET, and then reinstall the release version. For more information about how to remove the Visual Studio .NET Beta version, click the following article number to view the article in the Microsoft Knowledge Base:

    312383 How to remove Visual Studio .NET beta and release candidate versions

STATUS

This behavior is by design.

MORE INFORMATION

Steps to Reproduce the Behavior

To reproduce the behavior that occurs when Mergemod.dll is not registered correctly, follow these steps:
  1. Click Start, and then click Run.
  2. In the Open text box, type the following command, and then click OK:

    regsvr32 /u "C:\Program Files\Common Files\Microsoft Shared\MSI Tools\mergemod.dll"

  3. Start Visual Studio .NET. On the File menu, point to New, and then click Project.
  4. Under Project Type, click Setup and Deployment Project. Under Templates, click Setup Project. Click OK.
  5. On the Build menu, click Build Solution.
IMPORTANT After you have reproduced the behavior, follow the steps in the "Resolution" section to register Mergemod.dll again.

REFERENCES

For more information, click the following article numbers to view the articles in the Microsoft Knowledge Base:

320426 PRB: "This setup does not contain the .NET Framework" error message during Visual Studio .NET deployment

307353 How to create a Setup package by using Visual Studio .NET





Modification Type:MajorLast Reviewed:7/1/2005
Keywords:kbsetup kbDeployment kberrmsg kbprb KB329214 kbAudDeveloper