Мой проект содержит компоненты клиента и сервера в одном файле решения. У меня обычно есть отладчик, настроенный на их совместный запуск при отладке, но часто я запускаю сервер вне отладчика, чтобы при необходимости работать только с клиентской частью, чтобы запускать и останавливать клиент. (это намного быстрее).
Я пытаюсь избавить себя от необходимости ковыряться в Solution Explorer, чтобы запускать отдельные проекты, и предпочел бы просто нажать кнопку на панели инструментов, которая вызывает макрос, запускающий отладчик для отдельных проектов (оставляя тип «F5»). отладка в одиночку для запуска обеих процессов).
Я попытался записать, но на самом деле это ничего не дало.
Пока все, что мне удалось сделать, это найти элемент проекта в обозревателе решений:
Dim projItem As UIHierarchyItem
projItem = DTE.ToolWindows.SolutionExplorer.GetItem("SolutionName\ProjectFolder\ProjectName").Select(vsUISelectionType.vsUISelectionTypeSelect)
(Это в значительной степени основано на том, как макрос-рекордер пытался это сделать. Я не уверен, что навигация по объектной модели пользовательского интерфейса - это правильный подход, или мне следует вместо этого взглянуть на прохождение через объектную модель Solution / Project ).