我有两个DLL,Core
和Extension
。 Extension
隐式链接Core
(使用Core.lib)。 Extension
旨在成为可执行文件的插件(显式链接),该可执行文件也隐式链接Core
。
Core
声明一个在Core.dll(extern "C" __declspec(dllexport) int GetCoreVersion()
)中导出的函数,我也想在Extension.dll中导出。
预期目的是比较版本 - 我希望能够确保插件(扩展)与可执行文件链接到相同版本的Core.dll。此检查将在可执行文件中执行,因为它显式链接Extension.dll(通过LoadLibrary
和GetProcAddress
)。还有更好的方法吗?
答案 0 :(得分:0)
我将以下内容添加到Extension中,这会导致导出GetCoreVersion
符号:
#pragma comment(linker, "/export:_GetCoreVersion");
现在,可执行文件能够找到该功能(通过GetProcAddress("GetCoreVersion")
)。