C++ 如何在64位vb.net windows应用程序中引用32位dll

C++ 如何在64位vb.net windows应用程序中引用32位dll,c++,vb.net,exception,dll,dllimport,C++,Vb.net,Exception,Dll,Dllimport,我们正在vb.net中开发一个windows窗体应用程序,该解决方案中包含400多个项目,均采用64位体系结构。现在,我们有一个C++类型的外部DLL,它具有32位结构,我们可以在我们的应用程序中引用,但会引发这样的错误: “试图加载格式不正确的程序。(hresult异常:0x8007000)” 我是否可以运行应用程序并引用dll而不将所有400个项目更改为32位体系结构?您不能在64位进程中加载32位dll。 您需要实现一个32位的EXE进程来托管DLL,并发明一种IPC机制来代理对它的调用。

我们正在vb.net中开发一个windows窗体应用程序,该解决方案中包含400多个项目,均采用64位体系结构。现在,我们有一个C++类型的外部DLL,它具有32位结构,我们可以在我们的应用程序中引用,但会引发这样的错误:

“试图加载格式不正确的程序。(hresult异常:0x8007000)”


我是否可以运行应用程序并引用dll而不将所有400个项目更改为32位体系结构?

您不能在64位进程中加载32位dll。


您需要实现一个32位的EXE进程来托管DLL,并发明一种IPC机制来代理对它的调用。进程外EXE似乎是可能的选择。

dll做什么?Winforms应用程序中的400个项目???主啊,我的好奇心被激发了。