Может ли командное окно Visual Studio (2010) обрабатывать "внешние инструменты" с относительными путями проекта / решения?

Я играл с командным окном в Visual Studio (View->Other Windows->Command Window). Это отлично подходит для нескольких сценариев без мыши. (Команда автозаполнения "Открыть" приводит к нетривиальному решению.) Этот успех заставил меня задуматься и поэкспериментировать:

  • Возможность 1.1: Вы можете использовать команды Alias ​​для создания пользовательских команд
  • Возможность 1.2: Вы можете использовать команду Shell для запуска произвольных исполняемых файлов и указания параметров (и передачи результата в окно вывода или команд)
  • Возможность 2: предварительно настроенное определение внешнего инструмента (с переменными пути проекта) можно запустить из командного окна

Что я застрял на это:

  1. Похоже, что нет способа отправить параметры в команду с псевдонимом (и, следовательно, основной вызов Shell)
  2. Похоже, нет способа использовать относительные пути проекта / решения ($SolutionDir/$ProjectDir) при вызове Shell
  3. Использование абсолютных путей в Shell работает, но хрупко и требует большого обслуживания (один псевдоним для каждого необходимого варианта использования). Обычно вы хотите, чтобы команда выполнялась для файла относительно вашего проекта / решения.
  4. Кажется, вы не можете запустить традиционные внешние инструменты (Инструменты-> Внешние инструменты...) в командном окне

В конечном счете, я хочу каким-то образом использовать функциональность внешнего инструмента в командном окне. Кто-нибудь может увидеть способ сделать это? Или я лаю не на том дереве?

Итак, мои вопросы:

  1. Можно ли использовать какое-либо "внешнее средство" (используя относительные параметры пути проекта / решения) в окне командной строки?
  2. Если да, то как?
  3. Если нет, что может быть подходящей альтернативой?

2 ответа

Решение

Похоже, что действительно может быть (намного) лучший подход.

Как насчет расширения VS, которое встраивает PowerShell в IDE и позволяет использовать DTE (объекты автоматизации Visual Studio)?

Да уж. Это сделало бы свое дело и многое другое.

" Интерактивная оболочка со скриптами?" ты спрашиваешь? "Да!" Я говорю.

StudioShell - еще один хороший, мощный вариант. Нет ничего лучше, чем перемещаться по вашему решению (и Visual Studio в целом), как если бы это была файловая система. Сценарий конечно. Я только начал царапать поверхность этого инструмента.

Другие вопросы по тегам