Могу ли я получить функцию копирования / вставки из окна консоли C #? - PullRequest
37 голосов
/ 05 февраля 2010

Я занимаюсь разработкой консольного приложения на C #, и мне было интересно, есть ли способ добавить в мое приложение функцию «копировать-вставить» или «пометить-вставить», аналогичную или аналогичную стандартной командной строке Windows , Это погоня за диким гусем или простая переменная приложения?

Ответы [ 5 ]

64 голосов
/ 06 февраля 2010

Я скопировал текст из окна консоли и многократно вставлял его в другой источник.

По умолчанию в консольном приложении;

Щелкните правой кнопкой мыши на границе консоли:

Step 1

Выберите «Правка»> «Отметить»:

Step 2

Перетащите текст, который вы хотите, с помощью мыши (или с помощью клавиш со стрелками), чтобы выбрать нужный текст:

Step 3

Снова щелкните правой кнопкой мыши на границе консоли и выберите «Правка»> «Копировать»:

Step 4

Отсюда вы можете вставить его в другое приложение, как и в любом другом тексте.

Это было взято из консольного приложения C #, и единственным введенным кодом была команда для записи в консоль, без изменений настроек.

Надеюсь, это поможет!

47 голосов
/ 05 февраля 2010

Спасибо, Шон, за то, что заставил меня осознать полный идиотизм этого вопроса.Позвольте мне быть примером для других, чтобы не запрыгнуть на поезд вывода.

Шон отметил, что «копирование-вставка может быть выполнена с использованием встроенного функционала cmd.exe», что заставляет меня признать, что, да, совершенно точно, когда вы запускаете приложение командной строки в Windows, оно уже имеет этодоступная функциональность.

Я ошибся, поспешив с выводами, потому что я делал все свое первоначальное тестирование с выполнением DEBUG через IDE, и vshost не предоставляет вам такой функциональности.

Быстрый «Старт без отладки» показал мою близорукость.

21 голосов
/ 12 сентября 2013

Я не знаю, почему это не включено ни в один ответ, но, как указано в комментарии Роберт Х. , это абсолютно полезная информация, если вы пришли сюда в поисках этой проблемы в среде VisualStudio :

Запустить консольное приложение в отладчике (F5). Вы не можете скопировать или вставить. Запустите его вне отладчика (Control + F5). Теперь вы можете копировать и вставлять.

Сработало как шарм для меня. Спасибо, Роберт Х.!

1 голос
/ 20 августа 2016

Может быть, я опоздал, но есть ярлык для вставки текста в окне консоли в c #. Нажмите Alt + Пробел, затем «E», затем «P», и ваш текст будет вставлен в окно консоли.

1 голос
/ 05 февраля 2010

Чтобы уточнить, поведение командной строки по умолчанию у вас не работает или просто не так, как вы хотите?

Насколько я понимаю, именно реализация терминала обеспечивает поведение копирования / вставки, а то, что она обеспечивает, не соответствует остальной части Windows. Чтобы изменить это поведение, вам нужно переключить программу, которая реализует терминал. Вот пара программ, которые появляются в поиске Google для «замены командной строки»:
http://www.powercmd.com/
http://sourceforge.net/projects/console/

Из этих двух, я думаю, один из моих друзей на работе попробовал «Консоль». Он сделал достаточно того, что хотел, чтобы он не чувствовал необходимости продолжать искать.

Если вы просто хотите, чтобы ваши выходные данные для этой конкретной программы работали больше, чем для остальной части Windows, ваш другой выбор - сделать ее программой для Windows.

Редактировать: Исправлен URL-адрес консоли. Публиковал в чьем-то блоге, который ссылался на него, раньше

...