Visual Studio - запускать пакетный файл - PullRequest
16 голосов
/ 01 июля 2010

Что бы я хотел

Я бы хотел легко запустить командный файл, не выходя из Visual Studio. Пакетные файлы не всегда одинаковы, они меняются в зависимости от решения, с которым я работаю.

Что я знаю до сих пор

Я знаю, что вы можете создавать собственные ярлыки в разделе Инструменты Visual Studio (в разделе Внешние инструменты).

В моих решениях есть различные сценарии / командные файлы, и мне бы хотелось, чтобы был способ создать ярлыки в папке решений или в другом месте, которое зависит от решения.

Я могу создавать сценарии, но, похоже, нет способа запустить сценарий. Мне не нравится открывать Windows Explorer каждый раз, когда я хочу запустить скрипт.

Возможно, надстройка, которая запускает процесс с выбранным файлом в обозревателе решений? Или что-то подобное?

Ответы [ 5 ]

12 голосов
/ 10 августа 2013

Я сделал это, щелкнув правой кнопкой мыши командный файл и выбрав «Открыть с помощью», затем добавил новый редактор и использовал explorer.exe (а затем установил его в качестве редактора по умолчанию).

Add program dialog

12 голосов
/ 01 июля 2010

Лучший способ продолжить - написать внешний инструмент, а затем вы можете передать параметры в зависимости от загруженного текущего решения.

Существует множество переменных, специфичных для проекта и решения, которые вы можете передать внешнему инструменту.Откройте диалоговое окно «Внешние инструменты» и выберите свой инструмент в списке.Вы увидите название вашего внешнего инструмента, а также команду, которая указывает на скрипт или пакетный скрипт, который вы хотите вызвать.Рядом с полем редактирования аргументов находится кнопка со стрелкой.Нажмите стрелку, и вы увидите большой список переменных или параметров, которые вы можете передать внешнему инструменту.

Так, например, вы можете использовать следующее:

$ (ProjectDir)- Полный путь к каталогу проекта, над которым вы работаете.например, "C: \ builds \ myproject"

$ (ProjectPath) - полный путь к vcproj, с которым вы работаете.например, "C: \ builds \ myproject \ foo.vcproj"

$ (ProjectName) - имя проекта.например, «foo»

$ (SolutionDir) - полный путь к каталогу решения, которое загружено в данный момент.например, "C: \ builds \ mysolution"

и т.д ...

11 голосов
/ 22 июля 2015

Вот полные шаги, как добавить внешний инструмент для запуска пакетных файлов, щелкнув правой кнопкой мыши по файлу и выбрав «Запустить пакетный файл», также, когда вам нужно отредактировать файл, просто откройте и отредактируйте его.

Вот как это сделать ...

Создание внешнего инструмента под названием «Запустить пакетный файл»

    1) From Tools-> External Tools, create a new and put the below parameters:
    2) Set the Command to: CMD.EXE
    3) Set the Arguments to: /c "$(ItemPath)"
    4) Set the Initial directory to: $(ItemDir)
    5) ![DO NOT Check the "use output window" check box and then Apply to create the command
    Note where the new command appeared in the list of commands. 
        The external commands are numbered from 1 starting below the divider bar. 
#1 is usually "Create GUID"
To make it easy to remember you can move the new  command to the top, to be the number one command in the list.][1]

    6) Now go to Tools -> Customize and select the commands tab.
    7) Select the Context menu radio button and select "Project and Solution Context menus | Item" from the drop down.
    8) Now use "Add Command..." to add a new command
    9) In the Categories list select "Tools"
    10) From the commands select the "External Command #" that corresponds to the position of the "Run Batch file" custom command you noted the number of in step 5 above.
    11) Move it to the right position in the list add keyboard short cuts etc.
    12) Close the dialogue.

Теперь щелкните правой кнопкой мыши на командном файле, и вы должны увидеть пункт меню «Run batch file». Это запустит пакетный файл и покажет его вывод в окне VS Output.

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

enter image description here

enter image description here

1 голос
/ 03 июля 2014

Вы можете добавить новый проект Makefile в ваше решение. Проект Makefile - это простой проект Visual Studio, действие по сборке которого - любая необходимая командная строка. Он отображается в категории Visual C ++ - General в диалоговом окне нового проекта. В вашем случае просто установите команду build для запуска вашего пакетного скрипта. Затем, чтобы выполнить ваш сценарий во время работы в решении, просто щелкните правой кнопкой мыши проект Makefile в обозревателе решений и выберите пункт контекстного меню Build.

Поскольку вы намереваетесь запускать этот скрипт по требованию (в отличие от запуска при каждой сборке), вы захотите удалить его из сборки в Configuration Manager. Не забудьте отключить сборку проекта для всех платформ и конфигураций.

Большинство макросов доступны для командной строки проекта Makefile, хотя, возможно, некоторые из них, связанные с вашим основным проектом, не будут иметь правильного значения.

1 голос
/ 02 июля 2010

Будут ли вам полезны хуки Build Event (pre-build, pre-link, post-build)? Также вы можете проверить настройки Custom build тоже. Это часть решения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...