консольным приложением не был создан файл

Файл настроек консольного приложения не создается

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

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

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

Выберите » Контент» для параметра Построить действие в сетке свойств.

Выберите Копировать всегда для параметра Копировать в каталог выпуска.

Надеюсь, это поможет вам:)

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

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

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

Быстрое создание проекта консоли в VS2008 и добавление » App.config «, оно имеет настройки:

Действие сборки: нет

Скопировать в каталог Ouput: не копировать

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

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

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

Источник

Консоль управления Microsoft не может создать новый документ [FIX]

Что я могу сделать, если Microsoft Management Console не удается создать новый документ? Первое, что вы можете попробовать – запустить утилиту проверки системных файлов. Это должно иметь дело с очевидной коррупцией системы, которая налицо. В случае повторного появления проблемы, попробуйте проверить ваш профиль пользователя на наличие поврежденных файлов.

Прочитайте подробные инструкции ниже.

Исправить Microsoft Management Console Не удается создать новый документ

1. Запустите проверку системных файлов

Операционная система Windows поставляется со встроенным средством проверки файлов на основе командной строки, которое сканирует все защищенные системные файлы и заменяет поврежденные файлы новой копией системных файлов. Вы можете запустить средство проверки системных файлов, чтобы исправить эту ошибку. Выполните следующие действия, сделайте то же самое.

2. Проверьте профиль пользователя на наличие поврежденных файлов.

Время от времени проблема могла касаться только вашего текущего профиля пользователя. Бывает, что некоторые файлы могут быть повреждены для определенного профиля пользователя. Вы можете войти в альтернативную учетную запись пользователя, чтобы увидеть, является ли ошибка специфичной для пользователя.

Закройте окно командной строки и войдите с новой учетной записью пользователя. Вот как это сделать.

Попробуйте открыть настройки или программу, которая выдавала ошибку. Если ошибка не появляется, вам, возможно, придется создать новый профиль пользователя с правами администратора, поскольку ошибка связана с вашим профилем пользователя.

3. Сбросить Windows без удаления личных файлов

Если проблема не устранена, возможно, что некоторые системные файлы повреждены и не позволяют системе получить доступ к программам и настройкам. Чтобы устранить проблему, вы можете перезагрузить компьютер, не удаляя ваши личные файлы. Хотя это удалит все установленные приложения, но не удалит ваши личные файлы.

После перезагрузки проверьте, устранена ли ошибка. Если нет, возможно, вам придется полностью перезагрузить компьютер и удалить все, включая ваши личные файлы.

Перед заводской настройкой ПК убедитесь, что вы сделали резервную копию ваших личных данных. После создания резервной копии выполните следующие шаги, чтобы снова перезагрузить компьютер.

Вам также понадобится установочный диск Windows или загрузочная флешка Windows 10 для переустановки ОС.

Вставьте загрузочный носитель в ваш компьютер и перезагрузите систему.Следуйте инструкциям на экране для форматирования диска и чистой установки Windows 10.
консольным приложением не был создан файл. lazy placeholder. консольным приложением не был создан файл фото. консольным приложением не был создан файл-lazy placeholder. картинка консольным приложением не был создан файл. картинка lazy placeholder.
Вы можете также использовать инструмент чистой установки Windows 10, чтобы сделать то же самое. Хотя для загрузки Windows ISO требуется стабильное подключение к Интернету (до 3 ГБ).

Скачайте и запустите инструмент. Следуйте инструкциям на экране для чистой установки Windows 10.

Источник

Консольным приложением не был создан файл

Есть общеизвестный пример: http://www.sources.ru/delphi/system/capturing_output_from_console.shtml

Есть также общеизвестная программа openssl.exe

Вот считывание в примере и реализовано, но как бы сделать запись в консоль?

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
брат Птибурдукова ( 2013-01-14 19:40 ) [1]

Создавай два пайпа. Второй запуздыривай сюда: hStdInput := GetStdHandle(STD_INPUT_HANDLE); // стандартный ввод не перенаправляем

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Rouse_ © ( 2013-01-14 19:40 ) [2]

Вон тут Пашка Голубь доделывал этот пример: http://forum.sources.ru/index.php?showtopic=83650

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Игорь Шевченко © ( 2013-01-14 19:52 ) [3]

if not WasOK then
raise Exception.Create( «Ошибка выполнения или компиляции: » +
Chr( 10 ) + Chr( 13 ) + CommandLine )

Для интернетов самое то

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Игорь Шевченко © ( 2013-01-14 20:01 ) [4]

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-14 21:57 ) [5]


> Вон тут Пашка Голубь доделывал этот пример

в принципе, я как-то так и делал.
Только для тестов использовал конструкцию — сначала запускал процесс «ftp», в консоль передавал

Ничего не получалось. Это приводило к тому, что консоль отображалась на экране, программа ничего не считывала (после данного кода шло считывание ReadFile).

Возможно, управление до WriteFile доходило раньше, чем консоль успевала инициализироваться или типа того. Но дело в том, что вроде бы в ответ на команда OpenSSL ничего не выдает, запускаешь — а просто курсор мигает и все. Как понять когда начать программно вводить команды.

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-15 11:10 ) [6]

Я ошибся в том, что забыл писать Enter! то есть, перевод строки: #13#10

Возник другой вопрос, почему я запускаю команду «ftp»:

WasOK := CreateProcess( nil,
«ftp»,
nil,
.

дальше стандартный код, подходим к считыванию данных из консоли:

>WasOK := ReadFile( StdOutPipeRead, Buffer, 255, BytesRead, nil );

на этом месте исполнение зависает навсегда. Хотя если в консоле набрать ftp, то мы видим приглашение:

Почему это приглашение «ftp>» не считывается?

Хотя писать можно, да.

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-18 20:30 ) [7]

Камрады, измучился весь с этим Openssl.exe

Есть такая команда:

Формирует криптоконтейнер PKCS#7, где:

public.pem — публичный ключ
private.pem — приватный 2048-битный ключ

После такого запроса openssl.exe переходит в режим ввода текста с консоли для упаковки в контейнер. Если эту операцию делать ручками, то набираешь текст (при этом Enter — всего лишь перевод строки), далее я знаю что можно нажать [Enter], [CTRL]+[Z], далее Enter — после чего openssl.exe набранный текст упаковывает в контейнер. Вот как это выглядит:

Вот как переделать пример: http://forum.sources.ru/index.php?showtopic=83650

Чтобы все сработало? Там передается [Enter] — и для внешней программы это событие, но для openssl это нифига не событие. У меня все подвисает, что логично, видимо openssl продолжает дальше ждать ввода текста.

Я пробовал после WriteFile делать:

Но ответом идет False с кодом GetLastError = 87, что означает:
«Параметр задан неверно».

После WriteFile делать CloseHandle(StdinPipeWrite) тоже пробовал.

Что делать? Как запустить openssl и передать в него текст, сообщив о конце передачи текста?! (

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Игорь Шевченко © ( 2013-01-18 20:39 ) [8]

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-19 00:37 ) [9]

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-19 00:38 ) [10]

от безысходности писал также:

тоже не получилось.

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
брат Птибурдукова ( 2013-01-19 00:43 ) [11]

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-19 11:51 ) [12]

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
брат Птибурдукова ( 2013-01-19 13:21 ) [13]


> Только в openssl это указывается доп. командой
Так ты уверен, что с перенаправлением вывода всё работает так же корректно, как с дополнительным параметром?

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-20 23:55 ) [14]


> Так ты уверен, что с перенаправлением вывода всё работает
> так же корректно, как с дополнительным параметром?

да, попробовал сейчас команду:

отработало просто на ура, тут же выдало ответ и вышло из программы openssl.

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-21 00:07 ) [15]

Причем, для openssl вроде как есть оттестированный рабочий код для PHP, его структура вроде бы понятна и на дельфи нечто такое же получается:

$descriptorspec = array(
0 => array(«pipe», «r»), // stdin is a pipe that the child will read from
1 => array(«pipe», «w»), // stdout is a pipe that the child will write to
2 => array(«pipe», «w»)); // stderr is a file to write to

if (is_resource($process)) writeable handle connected to child stdin
// 1 => readable handle connected to child stdout

но тем не менее на дельфи изобразить не получается ((

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Игорь Шевченко © ( 2013-01-21 00:21 ) [16]

уже код пора выкладывать

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-21 11:35 ) [17]

procedure TExternalProgRunner.Execute;
var
CommandLine: string;
StdOutPipeRead, StdOutPipeWrite, StdInPipeRead, StdInPipeWrite: THandle;
SA : TSecurityAttributes;
SI : TStartupInfo;
PI : TProcessInformation;
WasOK : BOOL;
Buffer : array[0..255] of Char;
BytesRead, Written : Cardinal;
WaitRes: Cardinal;
hArray: array[0..1] of THandle;
sCurDir: string;
aaa: integer;
begin
With SA do
Begin
nLength := SizeOf( SA );
bInheritHandle := True;
lpSecurityDescriptor := nil;
end;
// создаём пайп для перенаправления стандартного вывода
CreatePipe( StdOutPipeRead, // дескриптор чтения
StdOutPipeWrite, // дескриптор записи
@SA, // аттрибуты безопасности
0 // количество байт принятых для пайпа — 0 по умолчанию
);
// создаём пайп для перенаправления стандартного ввода
CreatePipe( StdInPipeRead, // дескриптор чтения
StdInPipeWrite, // дескриптор записи
@SA, // аттрибуты безопасности
0 // количество байт принятых для пайпа — 0 по умолчанию
);

try
// Создаём дочерний процесс, используя StdOutPipeWrite в качестве стандартного вывода,
// а так же проверяем, чтобы он не показывался на экране.
with SI do
Begin
FillChar( SI, SizeOf( SI ), 0 );
cb := SizeOf( SI );
dwFlags := STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES;
wShowWindow := SW_HIDE or SW_SHOWMINNOACTIVE;
hStdInput := StdInPipeRead; //GetStdHandle(STD_INPUT_HANDLE);
hStdOutput := StdOutPipeWrite;
hStdError := StdOutPipeWrite;
end;

CommandLine := «»» + FAppPath + «» » + FParam ;
sCurDir := ExtractFileDir(FAppPath);
WasOK := CreateProcess( nil,
PChar( CommandLine ),
nil,
nil,
True,
0,
nil,
PChar(sCurDir),
SI,
PI );
FhProcess := PI.hProcess ;

// если процесс может быть создан, то дескриптор, это его вывод
CloseHandle( StdOutPipeWrite );
if not WasOK then
begin
FStatus := prsEnd ;
end
else
begin
FStatus := prsRun ;
FisSuccessRun := true ;
try
// если указано — пишем в консоль текст
if FConsoleInput <> «» then
begin
WriteFile(StdinPipeWrite, FConsoleInput[1], length(FConsoleInput),
Written, nil);
end;
// получаем весь вывод до тех пор, пока DOS-приложение не будет завершено
Repeat
// читаем блок символов (могут содержать возвраты каретки и переводы строки)
WasOK := ReadFile(StdOutPipeRead, Buffer, 255, BytesRead, nil );
// есть ли что-нибудь ещё для чтения?
if BytesRead > 0 then
Begin
// завершаем буфер PChar-ом
Buffer[BytesRead] := #0;
// добавляем буфер в общий вывод
FcsData.Enter;
try
FAllRead := FAllRead + Buffer;
finally
FcsData.Leave;
end;
end;
Until not WasOK or ( BytesRead = 0 ) or (Terminated);

if Line <> «» then
OemToChar(PChar(Line), PChar(FAllRead)) ;>

SetEvent(FeventFinishRead) ;
// ждём, пока завершится консольное приложение
hArray[0] := pi.hProcess;
hArray[1] := FeventTerminate ;
WaitRes := WaitForMultipleObjects(2, @hArray, false, INFINITE);
if WaitRes = WAIT_OBJECT_0 then // значит, терминировался именно процесс запущенный
FStatus := prsEnd ;
FExitCode := 0;
GetExitCodeProcess( pi.hProcess, FExitCode );
finally
// Закрываем все оставшиеся дескрипторы
CloseHandle( PI.hThread );
CloseHandle( pi.hProcess );
end;
end;
finally
SetEvent(FeventFinishRead) ;
CloseHandle( StdOutPipeRead );
if StdInPipeWrite <> 0 then
CloseHandle( StdInPipeWrite );
if StdInPipeRead <> 0 then
CloseHandle(StdInPipeRead);
end;
end;

> WasOK := ReadFile(StdOutPipeRead, Buffer, 255, BytesRead, nil );

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Игорь Шевченко © ( 2013-01-21 15:34 ) [18]

WaitForInputIdle вставить не поможет перед началом работы с вводом-выводом?

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Юрий Зотов © ( 2013-01-21 17:47 ) [19]

Я делал иначе, без пайпов. В своей программе создаю консоль и запускаю чужое консольное приложение, как дочерний процесс с наследуемыми дескрипторами ввода-вывода. В результате чужая программа разделяет с моей одну и ту же консоль — то есть, моя программа может в консоль писать, а та читает.

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
ES ( 2013-01-22 11:28 ) [20]


> WaitForInputIdle вставить не поможет перед началом работы
> с вводом-выводом?

вставил перед WriteFile.
WaitForInputIdle(pi.hProcess, INFINITE) возвращает 0xFFFFFFFF.
GetLastError = 18: «Больше файлов не осталось»

Результата не дало.

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Игорь Шевченко © ( 2013-01-22 14:41 ) [21]


> // если процесс может быть создан, то дескриптор, это его
> вывод
> CloseHandle( StdOutPipeWrite );

консольным приложением не был создан файл. top. консольным приложением не был создан файл фото. консольным приложением не был создан файл-top. картинка консольным приложением не был создан файл. картинка top. консольным приложением не был создан файл. down. консольным приложением не был создан файл фото. консольным приложением не был создан файл-down. картинка консольным приложением не был создан файл. картинка down.
Игорь Шевченко © ( 2013-01-22 14:57 ) [22]

надо закрыть описатели записи в stdout и чтения stdin

Рис. 6.2. Начало работы над консольным приложением

консольным приложением не был создан файл. htmlconvd. консольным приложением не был создан файл фото. консольным приложением не был создан файл-htmlconvd. картинка консольным приложением не был создан файл. картинка htmlconvd.

Часть II. Практикум программирования

текущего каталога, делает текущим первый (по номеру элементов списка) подкаталог и вызывает себя (рекурсия) для обработки этого подкаталога.

Листинг 6.2. Очистка диска (консольное приложение)

// clear.cpp : main project file.

using namespace System;

using namespace System::IO;

кол-во удаленных файлов

true — только сообщение о выполнении

bool clearDebug = false ; //

очистка каталогов Debug

// Очистка текущего каталога и всех его подкаталогов.

// подкаталоги текущего каталога

// файлы, которые надо удалить

int p = System::IO::Directory::GetCurrentDirectory()->

ToString()->LastIndexOf(‘\’); String^ aFolder =

// удалить все файлы из каталога Debug

Files = Directory::GetFiles (System::IO::Directory::GetCurrentDirectory(),»*.*»);

Глава 6. Консольное приложение

Files = Directory::GetFiles (System::IO::Directory::GetCurrentDirectory(),»*.tmp»);

// удалить tmp-файлы из текущего каталога

Files = Directory::GetFiles (System::IO::Directory::GetCurrentDirectory(),»*.tmp»);

int nf = Files->Length; for (i = 0; i if (! debug)

Console::WriteLine(Files[i] + » — удален»); nDel = nDel +1;

// обработать подкаталоги if (debug)

n = Directories->Length; for (i = 0; i if (debug) Console::WriteLine(Directories[i]);

Часть II. Практикум программирования

int main( array ^args)

char r; // ответ пользователя: Y или N

// проверим, указано ли имя файла теста if (args->Length == 0)

Console::WriteLine(«Ошибка: Надо задать каталог.»); Console::WriteLine(«Команда: clear [-CLEARDEBUG]»); Console::WriteLine(«-CLEARDEBUG — очистка каталогов Debug
«);

// проверим, существует ли указанный каталог try

catch (System::IO::DirectoryNotFoundException^ ex)

Console::WriteLine(«Каталог » + path +» не найден»);

(«Программа удалит все файлы из подкаталогов Debug»);

Глава 6. Консольное приложение

Console::WriteLine(«каталога «+ path+ » и всех его подкаталогов.»);

Console::WriteLine(«Программа удалит tmp-файлы»);

Console::WriteLine(«из каталога «+ path+

» и всех его подкаталогов.»);

Console::WriteLine(«Удалено файлов: «+ nDel.ToString()); Console::WriteLine(«Работа выполнена!»); Console::Write(«Нажмите «);

Console::ReadLine(); return 0;

Если программа должна получать параметры из командной строки, то при ее запуске из среды разработки параметры надо ввести в поле Command Arguments раздела Configuration Properties Debugging окна Property Page

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

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

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

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

Выберите « Содержимое » для сборки Действие опции в собственности сетки.

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

Надеюсь, что это помогает 🙂

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

Строить Действие: Нет
Скопировать в каталог Ouput: Не копировать
пользовательский инструмент:
Пользовательский инструмент Пространство имен:

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

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

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *