Вы можете достичь этого довольно легко. Сначала необходимо создать пункт меню в контекстном меню обозревателя решений. Вы можете узнать, как добавить пункты меню в целом на MSDN .
Точнее, вам нужно установить родительский элемент вашей группы меню:
И guid, и id предопределены в Visual Studio, последнее означает, что элемент меню будет отображаться всякий раз, когда пользователь нажимает на стандартный элемент проекта. Однако вам нужно, чтобы он появлялся только тогда, когда имя файла заканчивается на «.bat». Это может быть достигнуто в методе BeforeQueryStatus - см. Ссылку MSDN выше. Чтобы найти выбранные узлы в обозревателе решений, используйте
(UIHierarchy) ideObject.Windows.Item (EnvDTE.Constants.vsWindowKindSolutionExplorer) .Object
, который имеет свойство SelectedItems.