Подтвердить что ты не робот

Как установить путь к DLL файлу в Visual Studio?

Я разработал приложение, которое зависит от DLL файла. Когда я отлаживаю свое приложение, приложение должно жаловаться, что:

"Это приложение не удалось запустить, потому что xxx.dll не был найден."

Поэтому мне нужно скопировать DLL файл в тот же каталог, что и мой .vcproj файл.

Есть ли способ настроить проект на поиск DLL файла в (предпочтительно) некотором относительном пути или (не предпочтительном) каком-то абсолютном пути?

Аналогичная концепция того, как мы устанавливаем include и путь библиотеки в настройках проекта.

Я имею в виду, когда я отлаживаю свое приложение (нажав F5), появится вышеприведенная ошибка.

4b9b3361

Ответ 1

  • Перейти к свойствам проекта (Alt + F7)
  • В разделе "Отладка" посмотрите вправо
  • Здесь есть поле Environment.
  • Добавьте свой относительный путь (относительно папки vcproj), т.е... \some-framework\lib, добавив PATH=%PATH%;$(ProjectDir)\some-framework\lib или добавив путь PATH=C:\some-framework\lib;%PATH%
  • Хит F5 (debug) снова, и он должен работать.

Ответ 2

Путь поиска, который загрузчик использует при вызове LoadLibrary(), может быть изменен с помощью функции SetDllDirectory(). Поэтому вы можете просто вызвать это и добавить путь к своей зависимости, прежде чем загружать его.

См. также Порядок поиска DLL.

Ответ 3

Перейдите по свойствам проекта → Пути ссылок

Затем добавьте папку с DLL

Ответ 4

Другой возможностью было бы установить Working Directory в параметрах отладки как каталог, в котором есть эта DLL.

Изменить: я хотел бы упомянуть использование пакетного файла для запуска Visual Studio (и установить переменную PATH в пакетном файле). Итак, немного поработал и посмотрел, что этот тот же самый вопрос был задан совсем недавно в этом сообщении. Ответ предлагает вариант пакетного файла, а также параметры проекта, которые, видимо, могут выполнять работу (я не тестировал ее).

Ответ 5

В свойствах вашего проекта (щелкните правой кнопкой мыши на проекте, нажмите кнопку свойства) ▶ Свойства конфигурации ▶ События сборки ▶ События после сборки ▶ Командная строка.

Отредактируйте и добавьте одну инструкцию в командную строку. например скопировать botan.dll из исходного пути в место, где выполняется программа.

copy /Y "$(SolutionDir)ProjectDirs\x64\Botan\lib\botan.dll" "$(TargetDir)"

Project Properties

Ответ 6

Я знаю, что этот вопрос был дан много лет назад, но для тех, кому нравится, когда нужно изменить, где отладчик запускает приложение, измените свойство команды в разделе "Свойства проекта" → "Отладка".