Как установить путь для поиска DLL файлов в Visual Studio только для конкретного проекта?
Теперь я устанавливаю его в переменную окружения path
, но я бы хотел лучше контролировать это.
Как установить путь для поиска DLL файлов в Visual Studio только для конкретного проекта?
Теперь я устанавливаю его в переменную окружения path
, но я бы хотел лучше контролировать это.
У вас есть несколько вариантов:
Поиск в MSDN для Как установить переменные среды для проектов ". (Это проект > Свойствa > Свойства конфигурации > Отладка свойств" Среда "и" Слияние" для тех, кто спешит.)
Синтаксис NAME = VALUE и макросы могут использоваться (например, $(OutDir)).
Например, чтобы добавить C:\Windows\Temp к PATH:
PATH=C:\WINDOWS\Temp;%PATH%
Аналогично, добавьте $(TargetDir)\DLLS в PATH:
PATH=%PATH%;$(TargetDir)\DLLS
Если вам нужно добавить только один путь для каждой конфигурации (debug/release), вы можете установить рабочий каталог команды debug:
Проект | Недвижимость | Выберите Конфигурация | Свойства конфигурации | Отладка | Рабочий каталог
Повторите для каждой конфигурации проекта.
Задайте переменную PATH, как и вы. Если вы запускаете программу из среды IDE, вы можете изменить переменные среды, отредактировав параметры отладки в свойствах проекта.
Если библиотеки DLL названы такими, что вам не нужны разные пути для разных типов конфигурации, вы можете добавить путь к переменной PATH системы или к глобальной Visual Studio в Инструментах | Опции.
Ни один из ответов не решил точно мою проблему (файл решения, который я запускал, пытался найти xcopy для копирования dll после генерации).
То, что решило это для меня, собиралось в меню "Проект → Свойства"
Затем в открывшемся окне выберите на левой панели: "Свойства конфигурации → VC++ Каталоги
На правой панели в разделе "Общие" выберите "Исполняемые каталоги"
А затем добавив:
$(SystemRoot)\system32;$(SystemRoot);$(SystemRoot)\System32\Wbem;$(SystemRoot)\System32\WindowsPowerShell\v1.0\;$(ExecutablePath)