2010-12-17 2 views
11

Я создаю репозиторий svn и задаюсь вопросом, куда я должен поместить файлы dll.Где я должен поместить dll-файл (который я использую в своем проекте)

В настоящее время Ive помещается в папку/bin/debug, а затем связывает их в файле проекта в visual studio.

Это способ сделать это?

ответ

9

Мы обычно имеем отдельную папку под названием dlls или что-то, где мы держим все третью партию/DLLs сборок

+1

Вы помещаете его в папку решения (верхняя папка для проекта): ./dlls или в ./projectname/dlls? – Jason94

+2

Да, мы сохраняем это решение. –

+0

Мне, что я указал «Каталог решений», я держу их там, где сгенерирован мой файл .exe (cutable). Это находится под: $ (SolutionDir) \ Debug. –

9

Вы не должны положить что-нибудь от бен/Debug или bin/Release в управлении версиями. Если вы это сделаете, вы потеряете их при очистке своего решения или ваших проектов. Что вам нужно сделать, так это создать папку в папке с решением, например, и ссылаться на DLL в ваших проектах. Любая сторонняя dll, которая находится в ссылках на проект, будет скопирована в папку bin/Debug или bin/Release при компиляции проекта.

12

Я предполагаю, что вы спрашиваете о файлах сторонних DLL, потому что файлы вывода (exe/dll), сгенерированные проектом, лучше оставить неуправляемыми SVN, потому что они регенерируются для каждой сборки.

Что я обычно делаю, это создать папку Lib, находящуюся на верхнем уровне моего исходного дерева, и поместить туда все необходимые ссылки, обычно в дополнительную папку, деленную на инструмент или по функциональности (ведение журнала, отправка по электронной почте, apis и т. Д. , и т. д.)

0

Dlls необходимы только во время работы. Для быстрого исправления вы можете скопировать ваши DLL-файлы в папку Debug, где находится ваш .exe-файл. Эта папка Debug находится на том же уровне, что и файл .sln решения в Visual Studio. Какую вещь вам придется делать каждый раз, когда вы начинаете новый проект ... Debug folder

Лучшим решением будет копирование всех сторонних библиотек DLL, а также всех соответствующих файлов .h и .lib в 2 папках. C: \ dev \ include и C: \ dev \ lib, а затем добавьте эти 2 папки в переменную среды пути один раз для всех. Таким образом, вы сможете получить к ним доступ из всех ваших проектов, не копируя их снова и снова.

Теперь, если вы хотите, чтобы кто-то мог запускать ваш проект на другом компьютере, вам нужно скопировать все необходимые файлы .h, .lib и .dll в свой проект в отдельные папки, которые вы создаете, скажем, include и lib снова, в вашем каталоге проектов, где находятся ваши собственные файлы программ, как указано в предыдущих сообщениях. Project folder

PS. Извините, это не позволит мне загрузить 2 скриншота, поэтому нажмите на ссылки.

0

Я обычно помещаю его в папку Lib в моей папке решения проекта Visual Studio. Я также создавал бы вспомогательные папки, чтобы указать, является ли DLL для 32-битной или 64-битной сборки, а также какая версия Visual Studio была использована для ее создания. Так что-то вроде этого: Lib \ WIN32 \ VC2015 \. Затем в рамках проекта Свойства проекта под Debugging Конфигурация свойств, я установил Environment в

PATH = $ (SolutionDir) Lib \ WIN32 \ VC2015;% PATH%

Делая это, я могу иметь отдельные папки dll для разных конфигураций проектов, если захочу, а также файлы DLL находятся в хорошем месте, чтобы проверить также и контроль источника.

Смежные вопросы