两种方式 安装:
① NuGet 直接 安装DllExport (此方法 我安装的时候异常,一直装不上,应该是参数设置问题)
② GitHub 下载源码安装 (https://github.com/3F/DllExport),解压找到 DllExport.bat,打开,配置如下
c# Export示例
[DllExport("Hello", CallingConvention = CallingConvention.StdCall)]
public static int Hello()
{
try
{
return 42;
}
catch (Exception)
{
return 0;
}
}
c++ 调用示例
HMODULE hDll = LoadLibraryA("C:\\Users\\Admin\\source\\repos\\bin\\x64\\Debug\\x64\\你生成的DLL.dll");
if (!hDll)
{
MessageBoxA(NULL, "无法加载 ScannerClassLibrary.dll", "错误", MB_OK);
return -1;
}
typedef int(__stdcall* HelloFunc)();
HelloFunc hello = (HelloFunc)GetProcAddress(hDll, "Hello");
if (!hello) MessageBoxA(NULL, "找不到 Hello 函数", "错误", MB_OK);
else MessageBoxA(NULL, ("Hello 返回: " + std::to_string(hello())).c_str(), "测试", MB_OK);