Для проектов VC ++ вам необходимо получить доступ к объекту VCConfiguration
, доступ к которому вы должны иметь из свойства EnvDTE.Project
Object
, например:
EnvDTE.Project project = ...
VCProject vcProj = (VCProject)project.Object;
IVCCollection configs = (IVCCollection)vcProj.Configurations;
VCConfiguration config = (VCConfiguration)configs.Item(configName); // like "Debug"
На данный момент с VCConfiguration
, как именно получить правильные свойства, зависит от вашей настройки. Вы можете получить доступ к VCLinkerTool
из свойства Tools
и получить OutputFile
и другие свойства. Или, если вы используете более новые унаследованные списки свойств, вы можете получить к ним доступ через свойство Rules
.
IVCCollection tools = (IVCCollection)config.Tools;
VCLinkerTool linkTool = (VCLinkerTool)tools.Item("Linker Tool");
string outputFile = linkTool.OutputFile;
// -------
IVCRulePropertyStorage ruleStorage = config.Rules.Item(ruleName);
string outputFile = ruleStorage.GetEvaluatedPropertyValue("TargetName");