当你在64位计算机上引用visual studio(c#或vb)中的32位dll时,我很模糊。
我正在尝试现在做一个(Interop.PDF2IMGOCXLib.dll或只是PDF2IMGOCXLib.dll)并且错误消息:
检索具有CLSID {66BBFF81-C832-411C-B81E-883C3A96CFD8}的组件的COM类工厂由于以下错误而失败:80040154未注册类(HRESULT异常:0x80040154(REGDB_E_CLASSNOTREG))。
然而,这个代码适用于32位机器。
这是第三方dll,所以我无法编辑它。
请纠正我错在哪里。我认为Visual Studio是一个32位应用程序,允许引用32位和64位引用。
我尝试了几件事:
确保编译>平台设置为(x86)为32位。
注册了dll(在很多地方),包括wow64文件夹。使用标准“模块dllname已加载但未找到入口点dllregisterserver”将regsvr32错误注册到其中。用Regasm注册它。它说工作正常。
Visual Studio中发生的引用错误发生在declare语句
上模块模块1
Sub Main()
Dim x As New PDF2IMGOCXLib.Pdf2Img
Return
End Sub
结束模块
所以,一般来说,什么时候可以在64位机器上的visual studio中使用32位dll?
如果dll仅针对32位系统,那么dll的某些功能才有效,但如果针对32位和64位系统则不行。
有什么想法吗?
答案 0 :(得分:0)