Как скрыть exe dll в C ++? - PullRequest
       55

Как скрыть exe dll в C ++?

0 голосов
/ 04 августа 2020

У меня есть моя программа (.exe), и ее работа зависит от трех библиотек DLL, но я хочу скрыть эти библиотеки, могу ли я «поместить их в .exe» эти библиотеки? Есть только .exe, есть ли способ сделать это?

Информация: Язык программы: C ++ DLL: {libcrypto-1_1-x64, libcurl-x64, libssl-1_1-x64}

1 Ответ

3 голосов
/ 04 августа 2020

Если вы используете stati c версии библиотек, их код будет скомпилирован прямо в ваш EXE, и тогда вам вообще не понадобятся библиотеки DLL.

Но, если вам нужно использовать DLL, затем вы можете скомпилировать их в ресурсы вашего EXE, а затем извлечь их во время выполнения во временные файлы перед их использованием. Вы не сможете статически связать ни одну из функций DLL во время компиляции, иначе ваше приложение вообще не запустится. Но вы можете динамически загружать их во время выполнения, используя LoadLibrary() и GetProcAddress() (или, если ваш компилятор поддерживает это, используйте delay-loading ), что позволит вам извлечь DLL перед вызовом их функций.

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