Assembly installation error codes in .NET Framework 2.0 setup


I have written several posts in the past about 1935 errors that can happen during the installation of the .NET Framework and other applications that install managed code to the GAC (most notably, this troubleshooting guide).


Starting in version 2.0, you will no longer see 1935 errors during .NET Framework redistributable setup.  This is because we created a new custom action to install assemblies to the GAC instead of using the built-in MsiAssembly and MsiAssemblyName tables.  This custom action was created to eliminate the need to carry 2 copies of each assembly in the setup package for the .NET Framework in order to install to both the GAC and the local file system.  More information about why we would otherwise need to carry 2 copies of each assembly can be found in this previous blog post.


The custom action that installs assemblies to the GAC during .NET Framework setup calls fusion APIs directly and uses information in the custom MSI tables named Assembly and AssemblyName (instead of MsiAssembly and MsiAssemblyName) to determine what assemblies to install to the GAC.  The custom action also logs a new set of error codes in case of any failures.


The following is a list of all possible assembly installation errors that can occur during .NET Framework 2.0 setup:



  • 25000 = "Unexpected error occurred during assembly configuration. This setup package may be bad."
  • 25001 = "Unexpected error occurred during assembly configuration. Function '[2]()' returned [3]."
  • 25002 = "Error occurred while initializing fusion. Unable to load [2]. System error: [3]"
  • 25003 = "Error occurred while initializing fusion."
  • 25004 = "Failed to execute query '[2]'. Is table AssemblyName missing in the MSI package?"
  • 25005 = "There's no matching record for component '[2]' in AssemblyName table."
  • 25006 = "Error occurred while initializing fusion. Setup could not find function 'LoadLibraryShim' in mscoree.dll. System error: [2]"
  • 25007 = "Error occurred while initializing fusion. Setup could not load fusion with LoadLibraryShim(). Error: [2]"
  • 25008 = "Unexpected error occurred during assembly installation."
  • 25010 = "Failed to install assembly '[2]' because the check of the module's hash failed." (the equivalent of fusion error code

    0x80131039 - COR_E_MODULE_HASH_CHECK_FAILED)
    25011 = "Failed to install assembly '[2]' because one or more modules specified in the manifest cannot be found." (the equivalent of fusion error code 0x80131042 - FUSION_E_ASM_MODULE_MISSING)


  • 25012 = "Failed to install assembly '[2]' because one or more modules were streamed in which did not match those specified by the manifest. Invalid file hash in the manifest?" (the equivalent of fusion error code 0x80131043 - FUSION_E_UNEXPECTED_MODULE_FOUND)
  • 25013 = "Failed to install assembly '[2]' because strong name signature could not be verified. Was the assembly built delay-signed?" (the equivalent of fusion error code 0x80131045 - FUSION_E_SIGNATURE_CHECK_FAILED)
  • 25014 = "Failed to install assembly '[2]' because of invalid file or assembly name. The name of the file must be the name of the assembly plus .dll or .exe." (the equivalent of fusion error code 0x80131047 - FUSION_E_INVALID_NAME during install)
  • 25015 = "Failed to install assembly '[2]' because of system error: [3]" (this is a catch-all for all error codes not listed above during installation)
  • 25020 = "Failed to uninstall assembly '[2]' because the strong name is not valid." (the equivalent of fusion error code 0x80131047 - FUSION_E_INVALID_NAME during uninstall)
  • 25021 = "Uninstall of assembly '[2]' is not allowed." (the equivalent of fusion error code 0x80131049 - FUSION_E_UNINSTALL_DISALLOWED)
  • 25022 = "Failed to uninstall assembly '[2]' because of system error: [3]" (this is a catch-all for all error codes not listed above during uninstallation)

 

Comments (47)

  1. Chris says:

    On a semi related note, is there an easier/more official way in 2.0 to get the pdb assembly debug files into the GAC using Setups, or custom installers?

  2. Hi Chris – I am not sure I understand your scenario. Why do you need to install PDB files to the GAC? Can you give me an example of a setup that is doing this so I can try to take a look?

  3. Chris says:

    I’ve developed a set of assemblies that need to be installed into the GAC to be used by many different websites via COM Interop/ASP as well as many different ASP.NET/.NET apps. They are developed on my machine, but deployed onto a development server used by others using a Setup installer. During development, the Debug builds are deployed.

    The problem happens when they log unexpected exceptions using StackTrace. Without the PDB files in the GAC_MSIL directories, debug versions of GAC assemblies will not emit line numbers/file names when logging StackTrace.

    Manually copying the pdb files into the hidden assembly directories fixes the problem of crouse, because the debug symbols can no be found.

    That’s what prompted my question. It appears that debug assemblies in the GAC can never emit complete stacktraces without the pdb files als being installed into the GAC, which isn’t permitted in the stock setup projects. The setup simply chokes up an error about the pdb files not being strong named.

    I knopw there are various bat file/robocopy hacks, but I was lokking for something cleaner involving custom installer classes.

  4. Diego says:

    I’m getting the error "25002" when I’m installing the .NET Framework Beta 2 (for VS Team System). Could you help me to solve this problem?

  5. Hi Diego – I would suggest trying to install the final released version of the .NET Framework 2.0 instead of beta 2 if at all possible. You can download it at http://msdn.microsoft.com/netframework/downloads/updates/. Also, if this machine has had previous beta versions on it, you may want to try the manual cleanup steps listed at http://blogs.msdn.com/astebner/archive/2005/04/16/408856.aspx.

    Hi Chris – I am not aware of any cleaner solution for this type of debugging. I will try to ask around and see what kind of techniques our developers use and let you know if I find anything useful.

  6. Hunter says:

    I got Error 25007 when installing .NET Framework 2.0 from Visual Studio 2005. The installation failed. Is there a workaround?

  7. Hi Hunter and Diego – can you please try the manual cleanup steps listed at http://blogs.msdn.com/astebner/archive/2005/04/16/408856.aspx and then attempt to reinstall and see if that helps here?

  8. Hi, I found this page while trying to figure out why .net will not install on my PC. it’s a freshly built XP box with SP2 and all updates applied and no other software as yet. I get the error 25013 Failed to install assembly ‘C:windowsmicrosoft.NETv2.0.50727system.design.dll’ because strong name signature could not be verified. Was the assembly built delay signed? Options are to retry which does nothing, or to ignore which rools back the instalation…(I love the part where it asks a question and doesn’t have a button to say yes)…this is driving me nuts to say the least…

  9. Hi Julian – I am not sure why you would be running into an error like that, because I know that all of the binaries in the .NET Framework 2.0 final release are correctly strong name signed.  There might be some kind of error related to the crypto functionality needed to verify signing.  Can you please try to re-apply XP SP2 and see if that helps at all?

  10. nx_2020 says:

    pple i am getting no answer for the problem of error 25015 ..please email me at nx_2020@hotmail.com ..i am in a very tight situation .

  11. Hi nx_2020 – I responded to your comment with this same question that is located at http://blogs.msdn.com/astebner/archive/2005/04/08/406671.aspx#541684.  I will repeat the response here as well:

    Can you please try to use the manual removal steps for the .NET Framework 2.0 that are listed at http://blogs.msdn.com/astebner/archive/2005/04/16/408856.aspx and then try to re-install the .NET Framework 2.0 and see if that resolves this issue?  If that doesn’t help, I would suggest contacting Microsoft technical support (you are entitled to a free support call for .NET Framework setup issues).  I’m sorry I’m not able to be more helpful here.

  12. I am geting following error while installing .NET Framework 2.0

    Machine is XP and SP2

    Error 25013

    Failed to Instal Assembly because stroing name signature could not be verified. Was the assembly built delay signed?

    Please repy. Its Urgent

  13. Hi Nilesh – Can you please try to use the steps listed at http://blogs.msdn.com/astebner/archive/2005/04/16/408856.aspx to manually remove the .NET Framework 2.0 and try to reinstall?  Hopefully this will help.

  14. Hi Astebner,

    I have followed steps given in the http://blogs.msdn.com/astebner/archive/2005/04/16/408856.aspx to remove .NET Framework 2.0. But it couldn’t make it successfull.

    Then I formated my C Drive and Installed Windows XP & SP2 and tried again but then also 25013 is there.

    Then Once again I formated and Installed Windows Server 2003 but unfortunately 25012 is there..

    Please help

  15. Hi Nilesh – At this point, I am not sure the best option to recommend to you to resolve this issue in a timely manner.  You are entitled to a free technical support call for setup-related issues with the .NET Framework so I would suggest contacting technical support for some direct assistance from them.  I’m sorry I haven’t been able to be more helpful here.

  16. He intentado la eliminación manual de alguna instalación anterior, pero sigo teniendo el mismo problema: Error 25013

  17. Hi Guillermo – If you have already tried the manual removal steps listed at http://blogs.msdn.com/astebner/archive/2005/04/16/408856.aspx and they didn’t work, I think your best bet would be to contact Microsoft technical support for further assistance.  You are entitled to a free support call for setup-related .NET Framework problems.  I’m sorry I’m not able to be more helpful here.

  18. Hello Astenber,

    I installed Visual Studio Team suite RC on my development environment Windows 2003.  After the beta expired I got a copy of a release version of VSTS.  I uninstalled all the beta products and restarted the server. When I install the release version of VSTS I get a dialog box while installing .Net FW with Can I commit?  Whether I choose OK or Cancel the setup fails.  I downloaded the redistributable of .Net 2.0 from MS and I still get the same behaviour and the instalation rool backs after showing the following message:

    —————————

    Microsoft .NET Framework 2.0 Setup

    —————————

    The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 29527.

    —————————

    OK  

    —————————

    Can you help?

    Thanks,

    Mohamed Yehia

  19. Hi Mohamed – I have never heard of error code 29527 during .NET Framework 2.0 setup.  Do you have any log files for this installation that you could send me?  The logs are named %temp%dd_netfx20*.txt.  You can send them to me at Aaron.Stebner (at) microsoft (dot) com and I will try to take a look.

  20. Melissa says:

    When I try to install 2.0 framework I get error 25007 but I have 1.1 Framework.  What should I do?  

  21. Hi Melissa – Can you please try to use the manual cleanup steps listed at http://blogs.msdn.com/astebner/archive/2005/04/16/408856.aspx and then try to install .NET 2.0 again and see if that helps?

  22. Details about the .NET Framework 2.0 setup packaging Available command line switches for .NET Framework

  23. watermouse says:

    Hi,

    I’m trying to install visual studio C# 2005 express on my machine and the install fails everytime it gets to installing .net framework 2.0.  I’ve tried installing .net 2.0 separately using the dotnetfx.exe and it fails with this error:

    Error 25015.Failed to install assembly

    ‘C:WINDOWSMicrosoft.NETFrameworkv2.0.50727System.EnterpriseServices.dll’because of system error: The parameter is incorrect.

    I’ve tried to rename the assembly folder and when I try to delete the folder, windows refuses, saying "cannot delete System.EnterpriseServices.dll, The parameter is incorrect.

    I’ve disabled my McAfee antivirus and used .net framework cleanup tool with no success.  

    Does anyone have any suggestions for fixing this so I can successfully install .net framework 2.0?

  24. Hi Watermouse – It might help to try to disable non-system services and install again.  The steps listed at http://blogs.msdn.com/astebner/archive/2006/11/25/disabling-services-with-msconfig-to-work-around-setup-failures.aspx describe how to do that.

    If that doesn’t work and the cleanup tool didn’t help, your best bet is to contact Microsoft technical support for more detailed troubleshooting.  You are entitled to a free support case for setup-related issues such as this.  You can find contact information for the technical support team at http://support.microsoft.com.

  25. dean m says:

    Hi,

    Im trying to install Microsoft .NET Framework 2.0   but i get an error message; Error 25015.Failed to install assembly ‘C:WINDOWSMicrosoft.NETFrameworkv2.0.50727Microsoft.VisualBasic.VisualBasic.Vsa>dll’ because of system error: 0x80131107

  26. Hi Dean M – I’d suggest trying the steps listed at http://blogs.msdn.com/astebner/archive/2005/10/11/479928.aspx to remove and re-install the .NET Framework 2.0 and hopefully this will help resolve this error on your system.

  27. dean m says:

    Hi,

    Thanks man. Those steps help me out A LOT and now it works

    Cheers

  28. triplehull says:

    install of visual c++ failed several times because .NET 2.0 couldn’t be installed.

    when trying to install it from the redistributable i keep getting error 25003.

    i’ve removed and reinstalled all .NET versions (incl. with cleanup.exe) – all antivirus/firewall is off. all non windows services are off. i can install .NET 1 and 1.1.

    however, when installing .NET 2.0 it’ll stop at initializing fusion (microsoft.visualbasic.vsa.dll)and throw 25003.

    what should i do?

  29. Hi Triplehull – Error 25003 means that setup is having trouble loading a specific function inside of the DLL named fusion.dll.  I’m not sure how this could be happening though, especially after removing all versions of the .NET Framework using the cleanup tool.  It is possible that your downloaded copy of the .NET Framework 2.0 is corrupt somehow and you may want to try to re-download it.

    The following workaround might also help in this scenario – http://blogs.msdn.com/astebner/archive/2006/11/25/disabling-services-with-msconfig-to-work-around-setup-failures.aspx.

    If none of the above help, then I think your best bet is to contact Microsoft technical support for more detailed troubleshooting assistance.  You are entitled to a free support case for setup-related issues such as this, and you can find contact information at http://support.microsoft.com.

  30. hockeyfan21 says:

    I have tried everything I can find to resolve this issue over the last couple of weeks and nothing is working. I am hoping you can provide some help with this. I was running .NET 2.0 with VWD Express. I didn’t use it for a while, then, when I tried recently, it would not work (don’t even remember what the message was, unfortunately). I tried reinstall 2.0 and am getting the following message.

    Error 25015: Failed to install assembly ‘C:WINNTMicrosoft.NETFrameworkv2.0.50727System.EnterpriseServices.dll’ because of system error. The system cannot find the path specified.

    It was suggested that I try 3.5 which includes 2.0. This is the last line of the VSSWMSIFailInfo.txt file:

    DDSet_Error: "Failed to install assembly ‘C:WINNTMicrosoft.NETFrameworkv2.0.50727IEExecRemote.dll’ because of system error: The system cannot find the path specified."

    I would really appreciate any ideas you may have. I have tried all of your tools, removal, clean up, everything and nothing changes.

    Thanks,

    Toni

  31. Hi Hockeyfan21 – I’m not sure what would cause this type of "system cannot find the path specified" error.  It sounds like you’ve already tried the .NET Framework cleanup tool described at http://blogs.msdn.com/astebner/archive/2006/05/30/611355.aspx, but if not, I’d suggest that first.  If that doesn’t help, then the MSConfig utility described at http://blogs.msdn.com/astebner/archive/2006/11/25/disabling-services-with-msconfig-to-work-around-setup-failures.aspx.

    Also, it is possible that this error could be caused by corrupted installation media, so you may want to try to re-download the .NET Framework 2.0 setup and run it again from the newly downloaded copy to see if that helps at all.

    If none of the above helps, you may want to try to use a tool like Process Monitor (http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx) to see if it can help narrow down what path it is having trouble finding and any information about why.

  32. hockeyfan21 says:

    Thanks for you quick response. I will try the Process Monitor tool. I have download the 2.0 and 3.5 setups from Microsoft several times now so I hope this tool will help. I did find a post that talked about the System.EnterpriseServices.dll 2.0 not being in the GAC but have been unable to locate the GAC folder in WINNT/assembly (I’m assuming it’s in 2.0 and I don’t have it because it’s not installed yet(?))

  33. Hi Hockeyfan21 – The physical location of the GAC is %windir%assemblyGAC, %windir%assemblyGAC_32, %windir%assemblyGAC_MSIL and the subfolders.  If you don’t have any previous versions of the .NET Framework on your system, you won’t have a GAC at all until you install a version of the .NET Framework.

    Hopefully MsConfig and/or Process Monitor will be helpful in this scenario.

  34. hockeyfan21 says:

    I don’t see the GAC with 1.1 installed, is that just for 2.0 and later? What exactly should I look for in the Process Monitor? I have been looking for any paths in the registry to Microsoft.NET but didn’t see any.

    Thanks,

    Toni

  35. hockeyfan21 says:

    After another attempt, I looked at a txt file ngen.log and see

    02/06/2008 13:19:33 [1664]: Command line: C:WINNTMicrosoft.NETFrameworkv2.0.50727ngen.exe queue scmstop

    02/06/2008 13:19:33 [1664]: The handle is invalid. (Exception from HRESULT: 0x80070006 (E_HANDLE))

    02/06/2008 13:19:33 [1664]: ngen returning 0xffffffff

    02/07/2008 09:06:17 [2412]: Command line: C:WINNTMicrosoft.NETFrameworkv2.0.50727ngen.exe queue pause

    02/07/2008 09:06:18 [2412]: The specified service does not exist as an installed service. (Exception from HRESULT: 0x80070424)

    02/07/2008 09:06:18 [2412]: ngen returning 0xffffffff

    Does this mean that I need ngen.exe service installed and running?

  36. Hi Hockeyfan21 – All versions of the .NET Framework include assemblies that need to install to the GAC, and all versions will create the %windir%assembly folder if it doesn’t yet exist.

    In Process Monitor, you’ll probably want to look at file reads/writes and not the registry.  Then you’ll want to look for errors and not successful reads/writes.  Finally, you’ll need to try to narrow it down to the exact error message you saw in your logs "system cannot find the path specified."

    The Ngen service is installed by .NET Framework 2.0 setup, but if you’re getting the 2.0 install failures you described earlier, you won’t be able to run the Ngen service, so I think those errors are related to your earlier errors.

    If you still have trouble with Process Monitor, can you please contact me via email at Aaron.Stebner (at) microsoft (dot) com and attach your .NET Framework 2.0 setup log files (named %temp%dd_netfx*) so I can see if there is anything else I can figure out about this scenario?

  37. v-6aksh says:

    Hi Aaron,

    Im getting this error "Error 25013 Failed to install assembly ‘C:windowsmicrosoft.NETv2.0.50727***.dll’ because strong name signature could not be verified. Was the assembly built delay signed?". Please help me out.

  38. emmem says:

    pls help me to solve the eror no 25003 while installing the dot net

  39. Hi Emmem – For error code 25003, I'd suggest trying to use the steps listed at blogs.msdn.com/…/8108332.aspx to manually remove and then try again to re-install the .NET Framework 3.5 SP1 (which will install the .NET Framework 2.0 SP2 and 3.0 SP2 for you behind the scenes).

  40. scerazy says:

    Error 25015.Failed to install assembly 'C:WINDOWSMicrosoft.NETFrameworkv2.0.50727System.EnterpriseServices.dll' because of system error: The system cannot find the file specified

    I have so far tested each & every one of the suggestions floating on the web

    None made a bit of difference. It is not an image I can easily re-do & I do need to have some program that uses the **** dotnet running

    Anybody more ideas?

    Thanks

    Seb

  41. Hi Scerazy – Unfortunately, there are a lot of possible causes for this type of error.  Some of the things I typically suggest are the following:

    1.  Temporarily disable anti-virus or anti-spyware software

    2.  Use MsConfig to disable non-essential services using steps like the ones at blogs.msdn.com/…/disabling-services-with-msconfig-to-work-around-setup-failures.aspx

    3.  If you don't have any other versions of the .NET Framework installed, you can try to rename the folder %windir%assembly so that .NET Framework setup will re-create it – there might be some invalid data in there from a previous install or something like that

  42. tenjoteng says:

    I'm install .netframe work 2.0

    but it error 25007.

    i try to every thing on the top but him say error 25007

    plzz Help me

    thank you

  43. Hi Tenjoteng – I'd suggest using the steps and the cleanup tool listed at blogs.msdn.com/…/8108332.aspx to fully remove the .NET Framework from your computer, then try to re-install the .NET Framework 3.5 SP1 (which will also install the .NET Framework 2.0 SP2 and 3.0 SP2 for you behind the scenes).

  44. Kevin says:

    i recently had to install a new HD on my pc. After reloading everything I get the error message 25015 failed to install assembly microsoft.netframeworkv20.50727microsoft.visualbasic.vsa.dll'device not ready.

    I have tried everything to get net framework updated including re-installing windows.

  45. Hi Kevin – What version of Windows do you have on your computer?  I'd first suggest trying to use the cleanup tool and the steps listed at blogs.msdn.com/…/8108332.aspx to fully remove all versions of the .NET Framework and then try to re-install the .NET Framework 3.5 SP1 (which will also install the .NET Framework 2.0 SP2 and 3.0 SP2 for you behind the scenes).

    This type of error might also be caused by malware or a virus, so I'd suggest doing a system scan with your anti-virus and anti-malware software to see if you have any issues.

    In some cases, this error can also be caused by overly aggressive anti-virus or anti-malware software, so if the above suggestions don't help, then I'd suggest trying to temporarily disable anti-virus and anti-malware software on your computer, running .NET Framework setup, then re-enabling the anti-virus and anti-malware software after setup completes.

Skip to main content