плагины — проверка версии плагина C ++ с помощью функции Export

У меня есть две библиотеки 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). Есть ли способ лучше?

1

Решение

Я добавил следующее в расширение, которое вызывает GetCoreVersion символ для экспорта:

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

Исполняемый файл теперь может найти функцию (через GetProcAddress("GetCoreVersion")).

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]