Aaron Stebner's WebLog

Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio

Possible cause of 1935 error with HRESULT 0x8002802F

Possible cause of 1935 error with HRESULT 0x8002802F

Rate This
  • Comments 25

A while back, I posted an article describing causes of many types of 1935 errors that have been seen in the past.  I wanted to talk about one specific type of 1935 error in a little more detail and provide information about a possible root cause that I did not describe in that previous article.

A 1935 error in an MSI-based installations code is a catch-all for most of the possible assembly installation errors. In order to diagnose the problem in more detail, it is usually necessary to look at the verbose MSI log file.  In some cases, you will see an error like the following:

Error 1935. An error occurred during the installation of assembly '<myAssembly>'. Please refer to Help and Support for more information. HRESULT: 0x8002802F. assembly interface: , function: CreateAssemblyNameObject, component: {A7A9D92E-C67F-4E96-BB90-5A4147DAEF6B}

The key information needed to diagnose the exact root cause of a 1935 error is usually the HRESULT value listed in the verbose MSI log file.

The HRESULT value listed above is 0x8002802F (-2147319761), and it means "function not defined in specified DLL." There are a few possible root causes of this issue. The most common cause is that the file %windir%\system32\mscoree.dll is missing, corrupt or an incorrect version. In most cases, repairing the highest version of the .NET Framework on the system will correct any problems related to mscoree.dll and will resolve the problem if this is the case.

In a few less common cases, the file %windir%\system32\mscoree.dll is present, but registry values used by the .NET Framework to find and load specific versions of the .NET Framework are missing. The following values are required by mscoree.dll in order to load each version of the .NET Framework:

For the .NET Framework 2.0 (on an x86 version of Windows):

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]
InstallRoot = C:\Windows\Microsoft.NET\Framework\

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Policy\Upgrades]
2.0.50727 = 1.0.0-2.0.50727

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Policy\v2.0]
50727 = 50727-50727

For the .NET Framework 2.0 (on an x64 version of Windows):

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]
InstallRoot = C:\Windows\Microsoft.NET\Framework64\

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Policy\Upgrades]
2.0.50727 = 1.0.0-2.0.50727

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Policy\v2.0]
50727 = 50727-50727

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework]
InstallRoot = C:\Windows\Microsoft.NET\Framework\

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432NodeMicrosoft\.NETFramework\Policy\Upgrades]
2.0.50727 = 1.0.0-2.0.50727

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\Policy\v2.0]
50727 = 50727-50727

For the .NET Framework 1.1:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]
InstallRoot = C:\Windows\Microsoft.NET\Framework\

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Policy\Upgrades]
1.1.4322 = 1.0.0.0 - 1.1.4322

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Policy\v1.1]
4322 = 3706-4322

For the .NET Framework 1.0:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]
InstallRoot = C:\Windows\Microsoft.NET\Framework\

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Policy\v1.0]
3705 = 3321-3705

If any of the above registry values are missing on your system, you will need to manually add them in order to resolve 1935 errors with HRESULT value 0x8002802F.  Note that the InstallRoot value must be set to the exact location of the %windir% folder on your system, so you may need to adjust that value from the one listed above if your %windir% is not located at c:\Windows.

<update date="2/4/2008"> One of the values for the .NET Framework 1.0 was incorrect, so I fixed it </update>

<update date="12/16/2009"> Added 64-bit registry information for the .NET Framework 2.0. </update>

 

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

  • When I am attempting to investigate a setup-related failure, I typically end up looking at verbose log

  • Hi Guys I have two issues that are causing me great pain and I really don't want to have to reinstall Vista, Here goes hope you can help,

    When I attempt to install office 2007 enterprise or any other bit of software I get an error message during the installation that reads ----------

    "Microsoft Office Enterprise 2007 encountered an error during setup.

    Error 1935.An error occurred during the installation of the assembly component

    {2B2788D3-BB8E-4E9F-BCBD-040F35ECD3AE}.HRSEULT:0x8002802F"

    Then it will rollback changes?

    The other issue is Windows Live Messenger has stopped working, when you click to open messenger you receive an error message

    That reads,

    "The application failed to initialize properly (0xc0000135).Click OK to terminate the application"

    Im not sure if the two errors that im getting are related but they came about on the same day...

    Do you know what may have caused these issues or of a way to get around these without me having to reinstall my OS.

    System spec-----

    Please note if this is due to framwork fault please go easy on me im VERY to this =-)

    OS Vista Ultimate

    1.5 ram

    AMD Opteron Processor 154

    Geforce 6800

  • Hi SmartGuy - I'd suggest checking that you have the registry values for .NET Framework 2.0 on your system from the list above in this blog post.  If that doesn't help, then you may also want to try to repair the files that come with Windows Vista by using the steps listed at http://support.microsoft.com/kb/929833.

    If that also doesn't help, then you may want to try to install Windows Vista SP1 if you haven't already to see if that will resolve this error.

    If none of the above works, then I think you may need to try to repair Vista itself because the .NET Framework 2.0 is an OS component on Windows Vista and the only way to fully repair it is to repair/re-install the OS.

    I don't have enough expertise with Windows Live Messenger to help suggest any solutions for that error.  You may want to try to search on some of the forums or newsgroups that more specifically deal with Messenger issues to try to get some suggestions for that problem.

  • Question: I tried to install the .NET Framework 4 beta 1 and Visual Studio 2010 beta 1 on my Windows

  • Hello,

    I had the HRESULT as a consequence of a aborted .Net 4.0 beta and VS2010 install. At least that is what I believe. I believe I started to install VS2010 the other .. month, and forgot about it, as I never restart my computer normally it was just there in the background for awhile. Suddenly I had a fuse break due to a broken power supply in one of the other computer (not really relevant..).

    Anyhow, I had to clear up all .Net 4.0 reference in the registery, especially the Policy/AppPatch as it seemed to have hooked the setup.exe for VS2008

    I think that did the trick, but I also removed all the other .Net 4.0 files in the system (at least in the places I know of).

    I even tried to upgrade windows to see if that cleared up the problem, which it didn't.

    One could ask for better error strings that actually help..

    Cheers,

    Niclas

  • Hello,

    I'm having the problem mentioned in this post installing the XNA redist 3.1 on Win7 x64. The log is as follows:

    The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2908. The arguments are: {34590A97-6A1C-424D-B783-05BA77C7BE60}, ,

    The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2908. The arguments are: {BE4E2571-28F8-4423-AAE7-A61F69CF6099}, ,

    Error 1935. An error occurred during the installation of assembly 'Microsoft.Xna.Framework,fileVersion="3.1.10527.0",version="3.1.0.00000",culture="neutral",publicKeyToken="6D5C3888EF60E27D",processorArchitecture="x86"'. Please refer to Help and Support for more information. HRESULT: 0x8002802F. assembly interface: , function: CreateAssemblyCache, component: {BE4E2571-28F8-4423-AAE7-A61F69CF6099}

    === Logging stopped: 26/08/2010  19:51:22 ===

    I have checked the registry entries you have posted and added the v2.0, 1.0 and 1.1 values as they weren't there, although this doesn't fix the problem. The version of mscoree.dll I have is 2.0.50727.4927.

    I have run sfc /scannow which appeared to fix a few things, this didn't help. I have repaired v4 .NET which didn't help. I have removed and re-checked .NET 3.5 in features, no help.

    I've run the .NET Framework Setup Verification Utility:

    .NET Framework 1.0 - Product verification failed (most, if not all files not installed)

    .NET Framework 2.0 SP2 - Product verification succeeded!

    .NET Framework 3.0 SP2 - Product verification succeeded!

    .NET Framework 4 Client - Product verification failed (one or two files not installed)

    .NET Framework 4 Full - Product verification failed (one or two files not installed)

    I have uninstalled and reinstalled .NET 4 and the verification utility still fails on it.

    Any help, ideas or suggestions would be welcome!

    Thanks,

    Bob.

  • Hi there,

    fixed my previous issue now, version of mscoree.dll was 2.5.xxxxx when it should have been 4.xxx - needed to replace it and all OK now.

  • HELP IK OOK ZIT VAST MET ERROR 2908 EN VIND GEEN WEG ER UIT ????

  • Hi Jack - What version of Windows are you seeing this error on, what is the exact HRESULT value, and what product are you trying to install when you see this error?  It often helps to repair/re-install the .NET Framework to solve this type of error, but this may or may not help in your scenario depending on what version of Windows you're using and what the exact HRESULT value is for your error.

  • Hi,

    I was also getting same error, the HRESULT :0x8002802F, I have replaced my mscoree.dll and problem get solved.

    Previous version of C:\windows\system32\mscoree.dll file was 2.* something. I have downloaded newer version 4.* at www.dll-files.com/.../dll-files.shtml

    Please try it before going for any other options.

    Thanks.

  • How to set InstallRoot values ? What do I need to do ? I'm awful with those kind of manipulations

  • Hi Rayane1812 - Here are steps that should allow you to set the InstallRoot values if they are missing from your registry:

    1.  Run regedit.exe

    2.  In the tree view on the left side of the regedit window, open the registry key where the InstallRoot value is supposed to be:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework

    and/or

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework

    3.  Right-click on the .NETFramework key name and choose New | String Value

    4.  Give the value the name InstallRoot

    5.  After it has been created, double-click on it and put the correct path into the Value data text box.  Typically, this will be the following:

    On a 32-bit OS:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework\

    On a 64-bit OS:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework64\

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework\

  • I had the same issue while installing VS2010. The installation was failing on the component "VS_Prerequisites_x64_enu".

    =============================================================

    MSI (s) (6C:F0) [17:07:21:470]: Executing op: AssemblyCopy(SourceName=migqkjdu.dll|

    Microsoft.VisualStudio.Debugger.Runtime.dll,SourceCabKey=FL_DebuggerRuntime_dll_amd64.3643236F_FC70_11D3_A536_0090278A1BB8,DestName=Microsoft.VisualStudio.Debugger.Runtime.dll,A

    ttributes=512,FileSize=17296,PerTick=65536,,VerifyMedia=1,,,,,ComponentId={813438C3-8069-495F-9AE3-CA6499E3021B},IsManifest=1,,,AssemblyMode=0,)

    MSI (s) (6C:F0) [17:07:21:470]: Assembly Error:Function not defined in specified DLL.

    =========================================================================

    Unfortunately, it was not an issue with the mscoree.dll and I had to dig further

    The Procmon log for the instalaltion has shown that the msiexec was unable to find "C:\Windows\Microsoft.NET\Framework64v4.0.30319\fusion.dll" (Path not found). Yes, the issue was a '\' missing in the path between Framework64 and v4.0.30319.

    The key from which this was being populated is HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\InstallRoot. The Installroot was having a value C:\Windows\Microsoft.NET\Framework64 and I corrected it to "C:\Windows\Microsoft.NET\Framework64\". That fixed the issue!!!

    A unique scenario but might be helpful for someone who is racking his head not understanding what went wrong (like I did):)

  • Olá, eu to tendo muita dor de cabeça qnd se trata do .net framework,e qria q vc me desse uma ajudinha respondendo minha pergunta.

    Qnd eu vou abrir um programa q precise do .net framework aparece a seguinte mensagem: Defina a chave de Registro

    HKLM\Software\Microsoft\.NetFramework\InstallRoot para apontar para o local de instalaçao .Net framework

    Aí qria saber como resolver esse problema... Ficarei mt grato =)

Page 1 of 2 (25 items) 12
Leave a Comment
  • Please add 3 and 6 and type the answer here:
  • Post