Как использовать c ++ .dll в проекте c ++ в visual studio - PullRequest
0 голосов
/ 30 апреля 2020

Я делаю школьный проект, и мой учитель дал мне файл c ++ .dll и соответствующий ему файл .h.

Как мне использовать его в моем консольном приложении c ++ с Visual Studio 2019? Спасибо

1 Ответ

0 голосов
/ 30 апреля 2020

Если вам не дали файл .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 заголовок и сможете вызывать функции, как если бы они были частью ваш проект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...