“80040154类没有注册'与ASP.NET互操作没有注册、操作、NET、ASP

2023-09-04 00:19:25 作者:作业逼我做了它

我收到的Windows XP专业版SP2的x64机器上运行IIS6以下错误:

I'm receiving the following error on a Windows XP Pro SP2 x64 machine running IIS6:

System.Runtime.InteropServices.COMException: 
Retrieving the COM class factory for component with CLSID
{3C250CBD-6CC9-11D2-9457-00004B48467E} failed due to the following error:
80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).

这试图实例化一个COM互操作对象时发生。

This occurs when trying to instantiate a COM interop object.

奇怪的是,这工作正常从在相同的帐户作为应用程序池(公元用户)运行的控制台应用程序。即都使用UserX,所以它似乎并不像一个明显的权限问题。

Oddly enough, this works fine from a console application running under the same account as the application pool (a user in AD). I.e. both use UserX, so it doesn't seem like an obvious permissions issue.

别人有什么相似?

推荐答案

请确保您的应用程序池为32位(或支持32位应用程序)或COM控件支持64位应用程序。最有可能的,你的本机COM库是32位和池运行64位工人在默认情况下,这是无法加载32位COM DLL。

Make sure that your application pool is either 32 bit (or supports 32 bit apps) or your COM control supports 64 bit apps. Most likely, your native COM library is 32bit and your pool runs a 64 bit worker by default, which is unable to load 32bit COM dll.