Если вам не дали файл .lib
в дополнение к файлам .h
и .dll
, то вам, вероятно, потребуется go маршрут LoadLibrary
/ GetProcAddress
. Это будет неприятно, если экспортированные функции будут на самом деле украшены искажением имен в C ++.
HINSTANCE hMyLib = LoadLibrary(_T("mydll.dll"));
if (!hMyLib) { /* error */ }
bool (*func)() = reinterpret_cast<bool (*)()>(GetProcAddress(hMyLib, "some_func"));
if (!func) { /* error */ }
if (!func()) // actual function call
{}
Обратите внимание, что возможно для создания файла .lib
самостоятельно с использованием инструмент lib.exe . Затем вы добавите файл .lib
к ссылкам проекта (либо в настройках проекта, либо с помощью директивы #pragma comment(lib, ...)
), а затем просто #include
заголовок и сможете вызывать функции, как если бы они были частью ваш проект.