是什么原因导致'System.Management.MTAHelper'的类型初始化程序抛出异常

时间:2011-01-12 07:48:47

标签: .net winforms

......以及如何解决它?

是在64位Windows上运行的32位.Net应用程序抛出的。

该机器安装了require .Net框架。

  

Mozilla / 4.0(兼容; MSIE 8.0;   Windows NT 6.1; WOW64;三叉戟/ 4.0;   SLCC2; .Net CLR 2.0.50727; .NET CLR   3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)

编辑: 这是内部异常

  

异常来源:System.Management

     

异常类型:System.Runtime.InteropServices.COMException

     

异常消息:检索组件的COM类工厂   CLSID {A8F03BE3-EDB7-4972-821F-AF6F8EA34884}由于以下错误而失败:80040154。

     

异常目标站点:.cctor

3 个答案:

答案 0 :(得分:1)

有一个MSDN post使用解决方案报告同样的问题:

  

所以我在我的x64环境中转到HKCR \ CLSID {A8F03BE3-EDB7-4972-821F-AF6F8EA34884} \ InprocServer32(默认),并看到以下路径:C:\ Windows \ system32 \ mscoree.dll。

     

客户将他在那里找到的C:\ WINDOWS \ SysWOW64 \ mscoree.dll路径更改为右路径,并且他没有再次收到错误。

没有解释为什么路径可能是错误的,但似乎它有效......你至少可以检查注册表设置,看看它是否在相关方框上看起来不对。

答案 1 :(得分:1)

我刚刚解决了! 我不得不在Windows 7上重新安装.NET 1.1。 方法如下:

已下载:http://www.microsoft.com/Downloads/details.aspx?FamilyId=262D25E3-F589-4842-8157-034D1E7CF3A3&displaylang=en 已下载:http://www.microsoft.com/downloads/details.aspx?FamilyID=a8f5654f-088e-40b2-bbdb-a83353618b38&displaylang=en

然后:

mkdir c:\dotnetfx
c:\DotNet
dotnetfx.exe /T:c:\dotnetfx /C
c:\dotnetfx\msiexec.exe /a netfx.msi TARGETDIR=C:\DotNet
NDP1.1sp1-KB867460-X86.exe /Xp:C:\DotNet\netfxsp.msp
msiexec.exe /a c:\DotNet\netfx.msi /p c:\DotNet\netfxsp.msp
C:\DotNet\netfx.msi

答案 2 :(得分:0)

如果没有进一步的详细信息,很难说,但当你得到TypeInitializationException时,请检查InnerException,它通常包含潜在原因。