Как запустить консольную программу C ++ (которая представляет собой отдельный файл C ++, а не проект консольного приложения в Code :: Blocks) в ConEmu?

943
Gaganjot Singh

Я могу изменить терминал по умолчанию для всех консольных приложений в Windows 7 на ConEmu, используя этот ответ, и это было действительно здорово. До сих пор я не создавал ++ консольное приложение C проект в Code :: Blocks и когда я «скомпилировать и запустить» проект открывает терминал ConEmu. Но когда я попытался запустить отдельный автономный файл C ++ (не создавая проект) в Code :: Blocks, он открывает терминал Windows по умолчанию, а не терминал ConEmu, как в предыдущем случае.

Как я могу изменить терминал по умолчанию на ConEmu, даже если я запускаю отдельную файловую программу C ++ в Code :: Blocks?

Некоторые связанные детали: (1). Я использую Code :: Blocks 13.12, (2). Я использую Windows 7, (3). Я использую настройку ConEmuSetup.151115.exe.

0

1 ответ на вопрос

0
Maximus

CodeBlocks игнорирует требования для параметра lpCommandLine, описанного в функции CreateProcess . Он запускает командную строку, содержащую пробелы без кавычек. Я считаю, что это ошибка CodeBlocks, и об этом нужно сообщать их авторам. Для информации, он запускает следующее:

C:\Program Files\CodeBlocks/cb_console_runner.exe "C:\source\contest.exe" 

Чтобы запустить CodeBlocks «используя короткие имена», выполните файл dir /Xcmd.exe в корневом каталоге C:диска и найдите короткое имя Program Filesили Program Files (x86). Скорее всего, вы должны запустить CB следующим образом C:\Progra~1\CodeBlocks\codeblocks.exe.

ConEmu build 151122 представляет обходной путь для этой ошибки CB. Но было бы лучше сообщить о проблеме авторам CB!

Хорошо. В ссылке, упомянутой в вопросе, вы сказали, что это можно исправить: Переустановите C: B в папку без пробелов или запустите C: B, используя короткие имена. Что вы подразумеваете под "** запустить C: B, используя короткие имена **" и как именно я могу это сделать? Gaganjot Singh 8 лет назад 0
https://sourceforge.net/p/codeblocks/tickets/261/ Maximus 8 лет назад 0