2009-06-20 5 views
2

У меня есть решение, которое имеет 3 проекта. Один из них - консольное приложение, а другие 2 - это приложения для Windows. Оба приложения Windows используют консольное приложение, поэтому я добавил ссылку на консольное приложение в обоих проектах приложений Windows. Теперь, когда я создаю проекты окон, консольное приложение копируется в выходной каталог, но проблема в том, что его конфигурационный файл «consoleapp.exe.config» не копируется!Файл настроек консольного приложения не создается

Если бы я использовал библиотеку (сборку) вместо консольного приложения, она создала файл конфигурации этой сборки в выходной папке.

Как решить эту проблему?

ответ

2

Попробуйте это:

  1. Выберите consoleapp.exe.config в дереве решений.

  2. Выберите "Content" для сборки Действие опции в собственности сетки.

  3. Выберите Копировать всегда для Копировать в выходной каталог вариант.

Надеется, что это помогает :)

+3

В дереве решений отсутствует файл consoleapp.exe.config. Проект содержит файл app.config, который при создании проекта переименовывается в consoleapp.exe.config. Я пробовал ваши шаги с помощью приложения.config, и он копирует его для вывода, но я хочу, чтобы он также был переименован в consoleapp.exe.config. – Hemant

0

Быстрого созданию консольного проекта в VS2008 и добавить "App.config", он имеет параметры:

Build Action: Нет
Копировать в Ouput каталога: не копируйте
Выборочной инструмент: < пустого>
пользовательского инструмент Пространства имен: < пустого>

Однако я не уверен, что эффект добавления ссылки на проект консоли будет иметь, поскольку консольный проект представляет собой приложение, а не библиотеку классов.

Если вы хотите, чтобы консольное приложение запускалось с приложениями Windows для отладки, лучший подход, чем ссылки на проекты, должен был бы установить решение для запуска нескольких приложений. Щелкните правой кнопкой мыши на решении, выберите свойства и на узле «Начать проект» выберите несколько проектов. (И удалите ссылки на консольное приложение.)

0

Ваши приложения используют значения по умолчанию для ваших настроек из скомпилированного кода ссылочного проекта.

Вы должны скопировать ваш app.config из других проектов (или, по крайней мере, скопировать настройки, которые вы хотите изменить) в вызывающий проект, а затем, когда компиляция приложения будет иметь [YourAppName]. exe.config, который вы можете изменить.

Все это происходит потому, что домен приложения на C# может иметь только один файл app.config уровня сборки. Вот дополнительная информация о MSDN.

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