Visual Studio 2010: используйте командную строку в макросе и запишите выходные данные из cmd в область вывода - PullRequest
0 голосов
/ 06 сентября 2011

Я использую макрос в Visual Studio 2010, чтобы сделать что-то с .bat..Bat генерирует некоторый выходной текст в консоли командной строки.Можно ли получить выходной текст, отобразить его на панели вывода?

Вот часть моего кода:

Sub CompileSCSS()

    Dim cmd As String

    cmd = String.Format("{0} watch {1} ", "C:\Ruby192\bin\Compass.bat", "C:\Workspace\MyProject\Solution\WebApp")
    Shell(cmd, AppWinStyle.NormalNoFocus, False)

    Write("Debug", "I want to write here the output of my .bat")

End Sub

Только для контекстапомочь вам понять мои потребности:

My .bat использует сторонний инструмент для компиляции моего SCSS (расширение синтаксиса CSS) и создания соответствующего CSS в файле.Когда компилятор завершит работу, он выдаст вывод, если все хорошо или если есть какие-то ошибки.Я хотел бы интегрировать информацию сообщения непосредственно в панель вывода, а затем автоматизировать компиляцию моего файла SCSS (например, с помощью Ctrl + S), чтобы я мог почти сразу проверить результаты в браузере.* Извините за мой английский, вы можете исправить меня при необходимости: -)

1 Ответ

0 голосов
/ 06 сентября 2011

Просто определите ваш .BAT как внешний инструмент . У этого есть опция, чтобы показать вывод в окне вывода. Затем вы можете назначить ему комбинацию клавиш . Если вам все еще нужно вызывать его из макроса, используйте синтаксис:

DTE.ExecuteCommand("Tools.ExternalCommandX")

где X - номер заказа вашего внешнего инструмента.

...