我在ASP.Net网站上使用VB6 DLL,当我添加VB6 DLL的引用时,它被添加为Interop.X.DLL并且它被正确编译和执行。但是,当我使用IIS 6.0在Windows Server 2003上发布该网站并执行它时会出错 “由于以下错误,检索具有CLSID {82EA3A98-AD80-4250-9EEF-5B8001F65091}的组件的COM类工厂失败:80040154”
我还没有在Windows Server 2003上注册interop.X.DLL。
请帮我解决这个问题。
答案 0 :(得分:1)
COM错误80040154表示您的COM组件未正确注册。
典型的问题是IIS通常在不同的帐户下运行。使用regedit.exe检查注册表,并确保以下项中存在注册:
HKLM\Software\Classes\CLSID\{your guid}
而非HKCU或HKCR。如果不存在,请使用管理员帐户使用regsvr32重新注册COM组件。
如果您在x64版本的Windows Server上运行,请确保在C:\ Windows \ SysWOW64下选择32位版本的regsvr32。