如何使用ATL COM(dll)引用的MVC4 web.api应用程序在IIS 7上运行

时间:2013-09-11 13:29:13

标签: asp.net-mvc-4 dll iis-7 com

我需要我的MVC4 web.api应用程序才能使用简单的Com-object(ATL dll)。 所有在开发服务器上工作正常,但当我将项目发布到本地IIS时,我收到了错误消息

由于以下错误,无法获取具有CLSID {E3D8B330-0622-4857-99D2-A72EB7A4CDE3}的组件的COM类工厂:80040154未注册类(HRESULT异常:0x80040154(REGDB_E_CLASSNOTREG))。

我用regsvr32来注册我的dll。 我甚至制作了使用相同dll的示例控制台应用程序,所有这些都可以正常工作。

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

测试应用程序是否可以使用IIS运行的凭据成功运行?

如果没有,IIS下运行的帐户是否可以访问注册表项?

应用程序池是32位还是64位;它与COM DLL匹配吗?

答案 1 :(得分:0)

解决!

需要为x64构建COM-object(dll)(请参阅VS中的Project&#39属性)。 我安装了Win7 x64,因此运行它的IIS也是x64(我猜)。