Включение DLL в VC ++ (VS2010) проекта вывода - PullRequest
0 голосов
/ 15 сентября 2011

Отказ от ответственности: я разработчик C #, пытающийся понять некоторые основы C ++

Создан проект командной строки, в котором имеется .lib файла DLL, связанного в разделе «Линкер»> «Вход»> «Дополнительные зависимости», а также расположение заголовочных файлов, указанных в разделе «C / C ++> Общие»> «Дополнительные каталоги включения». Запустил сборку и все хорошо скомпилировано, при этом файл .exe собирается в директории Debug / Release.

Проблема в том, что я также ожидал, что файл .dll, от которого зависит проект, будет там (как при добавлении ссылки в .Net-проекте), но это не так. При запуске .exe он жалуется, что не может найти DLL. Справедливо, но почему VC ++ не поместил туда DLL, если знает, что это необходимо?

И есть ли "наилучшая практика" для обеспечения того, чтобы зависимые файлы DLL находились в выходном каталоге, кроме того, чтобы копировать их туда вручную? У меня есть проект, который потребует использования некоторых сторонних библиотек, и я надеялся, что IDE поможет мне управлять ими ...

Большое спасибо за любые указания!

1 Ответ

1 голос
/ 15 сентября 2011

Если вы создаете решение, содержащее exe и dll, все выходные файлы создаются в подкаталогах Debug или Release $ (SolutionDir), и exe запускается успешно. В противном случае у вас есть один из следующих вариантов:

  1. Скопируйте Dll на этапе после сборки в каталог, где он доступен для загрузки (обычно каталог .exe)

  2. Добавить каталог Dll в PATH.

...