интерактивное окно для выполнения команд DOS в Visual Studio - PullRequest
9 голосов
/ 25 мая 2010

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

Я хочу иметь возможность вызывать подсказку для душ в визуальной студии, которая должна быть интерактивной. Таким образом, я не буду вне визуальной студии и смогу выполнять все свои команды DOS. Является ли это возможным? Или я могу расширить командное окно и захватить набранные команды и обработать их, используя мой собственный код?

Спасибо

Ответы [ 3 ]

15 голосов
/ 18 марта 2011

Существует команда Tools.Shell , которая может работать для вас. Вы используете ключ / c, чтобы указать, что вывод для исполняемого файла отображается в окне команд. Затем вы вызываете cmd.exe с ключом / C, который выдает команду на закрытие после завершения команды. Например, если вы наберете:

Tools.Shell /c cmd.exe /C dir C:

Это напечатает вывод в окно команд. К сожалению, в отличие от вывода, ввод не работает. Так что если вы наберете:

Tools.Shell /c cmd.exe /C pause

Подсказка не будет ждать вашего ввода (нажатие клавиши).

Если это нормально, вы даже можете определить псевдоним для большей части этого. Например, вы задаете псевдоним ш для Tools.Shell / c cmd.exe / C :

alias sh Tools.Shell /c cmd.exe /C

Тогда вы просто используете его следующим образом:

sh dir c:
5 голосов
/ 22 марта 2011

Если вы установите NuGet , то он добавляет консоль диспетчера пакетов в Visual Studio, которая по сути является командной строкой Powershell. Должны быть способы сделать большинство вещей для DOS с помощью Powershell, а также добавить больше функциональности.

3 голосов
/ 17 марта 2011

Не совсем то, что вы просите, но я думаю, что вы можете достичь своей цели с помощью StudioShell:

http://studioshell.codeplex.com/

Должен признать, что я не использовал его до сих пор, но выглядит очень интересно.

...