Работа с библиотекой EnvDTE в Visual Studio 2010SDK - режимы сборки и двоичный путь (?) - PullRequest
0 голосов
/ 11 августа 2010

Я работаю над небольшой программой, целью которой является изменение моего основного, верхнего уровня двоичного файла приложения после сборки.Чтобы полностью автоматизировать процесс, мне нужно получить действительный путь к двоичному файлу, например ../debug/application.exe или ../release/application.exe.

Моя проблема в том, что мне нужно получить двоичный путь независимо от режима сборки.В то время как мой проект может быть собран как релизная или отладочная версия, мой путь к application.exe должен быть неактуальным.

Так что я обнаружил, что на самом деле могу получить путь vaild программно, с использованием Visual Studio2010 SDK.Мне просто нужно получить значения конфигурации, установленные пользователем в IDE;например, режим выпуска и отладки, и это правильный путь к binary.exe и код их.

В VS2010SDK найдена библиотека, которая может сделать это возможным.Он работает на объекте DTE, который может манипулировать моделью автоматизации в целом.Я довольно неопытен в SDK-части Visual Studio 2010, я мог бы использовать совет или два;человек, который указывает мне, где начать копать.

Не могли бы вы помочь мне с этим?

Очевидно, что моя IDE - Visual Studio 2010, а сам проект написан на C # 4.

Желаю вам всего наилучшего,

Павел

1 Ответ

0 голосов
/ 10 февраля 2011

Установите DxCore и используйте термин «EnvDTE» в своих интернет-поисках. Например, чтобы обнаружить вызовы API, связанные с решениями, выполните поиск «Решения EnvDTE» в своей любимой поисковой системе.

Вот пример кода, который показывает, как определить, какая сборка предназначена и как перейти на сборку "release":

// switch the configuration to "release"
EnvDTE.Solution solution = CodeRush.Solution.Active;

if (solution.SolutionBuild.ActiveConfiguration.Name != "Release")
{
    solution.SolutionBuild.SolutionConfigurations.Item("Release").Activate();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...