通过SWIG和Visual Studio 2015在Java中使用编译的DLL
我有一个已编译的DLL(C/C++),我必须在Java中使用它。所以我想使用SWIG创建一个包装器。我遵循了所有教程,如:通过SWIG和Visual Studio 2015在Java中使用编译的DLL,java,c++,dll,visual-studio-2015,swig,Java,C++,Dll,Visual Studio 2015,Swig,我有一个已编译的DLL(C/C++),我必须在Java中使用它。所以我想使用SWIG创建一个包装器。我遵循了所有教程,如: 但在所有示例中,未使用预编译DLL和/或Java和/或Visual Studio(2015)。当使用自己的cpp文件进行实现时(不要使用外部DLL,实现头文件),一切正常(编译到单个DLL并从Java调用) 那么我想要什么:拥有一个预编译的DLL(example.DLL)、它的头文件(example.h)和SWIG头文件(example.I)。将所有内容编译为“包
LoadLibrary
/GetProcAddress
)。基本上需要将调用“转发”到外部库。也就是说,将符号从那里导入包装器库,并与外部DLL库文件链接
如果DLL没有这样的库文件,则需要创建它(例如,从DLL创建库),或者在运行时加载外部库/导入符号(
LoadLibrary
/GetProcAddress
)。axalis的回答绝对正确。以下是一些细节:
阿克萨利斯的回答绝对正确。以下是一些细节: