2017-01-16 15 views
0

У меня есть приложение wpf, как мне заставить создать соответствующую DLL в сборке?Как заставить генерировать dll при сборке

Пример: название проекта является "MyWPFproject"

На сборки он должен создать "MyWPFproject.dll" в Bin \ Debug

Как это сделать?

Редактировать из-за многих похожих ответов: Я знаю, как добавлять/ссылаться на «внешние» библиотеки/DLL-файлы. Я полностью осознаю это. Пожалуйста, перечитайте вопрос, я хочу, чтобы BUILD-процесс создал .dll , кроме .exe в bin/Debug

+1

Вы добавили ссылку на проект библиотеки классов из решения? Если это так, он должен автоматически скопировать его в bin \ Debug или bin \ Release – ganeshran

+0

@ganeshran: как мне можно ссылаться на библиотеку классов, если она не генерируется в первую очередь? -mm8: Да, это правда. И теперь я хочу, чтобы Solution также создала .dll проекта. –

+0

У вас действительно есть библиотека классов, то есть другой проект, который вы ссылаетесь на свой проект приложения WPF? В противном случае DLL не будет создан. Само исполняемое приложение построено как .exe. – mm8

ответ

1

Это на самом деле не нужно преобразовать в EXE-файл .dll как .exe отлично работает в качестве ссылки на сборку:

Converting .exe project to class library

Если вы все еще хотите создать копию EXE-файл по какой-то причине, вы можете сделать это в пост-сборки события проекта (Project> свойства-> Build-Events в Visual Studio):

xcopy /y /f "$(TargetPath)" "$(TargetDir)$(ProjectName).dll" 

enter image description here

Обратите внимание, что для этого вам может потребоваться запустить Visual Studo в качестве администратора. Щелкните правой кнопкой мыши и выберите «Запуск от имени администратора» при его открытии.

0

Существует и не зависит от конструкций сообщений.

Добавьте запись в свой проект, затем в свойствах документа выберите в разделе «Дублировать каталог вывода» либо «Дублировать всегда», либо «Дублировать, если новый».

0

В настоящее время я использую следующую рабочую часть: Я также добавляю файл .dll в каталог lib, а не пытаюсь заставить проект/решение построить его в bin/debug и измените каталог соответствующим образом. I'm до сих пор не вполне доволен этим решением, хотя ..

+0

Проверьте этот вопрос - http://stackoverflow.com/questions/6866554/changing-csproj-outputtype-based-on-project-configuration Это изменяет тип вывода вашего проекта на основе конфигурации. Эта конфигурация может быть изменена с msbuild – ganeshran

+0

Вы можете использовать команду события после сборки, как я предложил в своем ответе. – mm8