升级客户端.Net Framework版本时无法创建COM对象

时间:2010-12-15 13:04:03

标签: .net com instantiation

我有.net控制台应用程序和com对象我希望通过以下方式实例化:

var t = Type.GetTypeFromProgID("myProgID");
var o = Activator.CreateInstance(t);

当客户端平台是.net framework 3.5时一切正常,但是当我使用

将版本号升级到4.0时崩溃了

由于以下错误,检索CLSID为{xxx-xxx}的组件的COM类工厂失败:80004005(E_FAIL)?

COM对象是使用.Net Framework 3.5构建的

如何使我的Com对象可用?

提前谢谢!

3 个答案:

答案 0 :(得分:1)

错误消息没有希望,您需要调试COM服务器以查看出现了什么问题。如果您没有源代码,那么您可能会从SysInternals的ProcMon中获得一些信息。实际上,您需要组件供应商或作者的帮助。

答案 1 :(得分:1)

答案是 - Avira Antivirus!

此处描述了Antivirus的另一个问题: (SEH)Exception initializing Nlog

我卸下了那个,发现一切都变好了!

答案 2 :(得分:0)

似乎更改了GUID。你确定它正在寻找正确的GUID,并且COM对象是用该GUID注册的吗?