1

我有两个 DLL,CoreExtension. Extension隐式链接Core(使用 Core.lib)。 Extension旨在成为可执行文件的插件(显式链接),该可执行文件也隐式链接Core.

Core声明一个在 Core.dll ( extern "C" __declspec(dllexport) int GetCoreVersion()) 中导出的函数,我也想在 Extension.dll 中导出它。

预期目的是比较版本——我希望能够确保插件(扩展)链接到与可执行文件相同的 Core.dll 版本。此检查将在可执行文件中执行,因为它显式链接 Extension.dll(通过LoadLibraryGetProcAddress)。有没有更好的办法?

4

1 回答 1

0

我在 Extension 中添加了以下内容,这会导致GetCoreVersion符号被导出:

#pragma comment(linker, "/export:_GetCoreVersion");

可执行文件现在能够找到函数(通过GetProcAddress("GetCoreVersion"))。

于 2013-01-17T15:57:07.637 回答