我需要知道项目中实际的输出文件名完整路径。我使用 microsoft.build.evaluation.project 打开具有正确属性的项目,并尝试使用属性 TargetPath、TargetDir、TargetFileName,但我找不到一致的属性来为我提供带有路径的输出文件名。在某些项目中它有效,而在某些项目中则无效。我同时处理 csproj 文件和 vcxproj 文件。
问问题
1960 次
2 回答
2
输出路径与项目文件夹有关。您可以通过属性从项目文件中获取其值OutputPath
(假设project
是 的一个实例Microsoft.Build.Evaluation.Project
)
var outputPath = project.GetPropertyValue("OutputPath")
然后您可以使用 Path.Combine 连接您的输出路径和项目文件夹
var fullpath = Path.Combine(projectDirectory, outputPath);
于 2015-01-12T13:58:04.543 回答
2
除了Ask的回答:
如果您需要为当前配置以外的其他配置获取 OutputPath(例如,Release),您应该执行以下操作:
project.SetProperty("Configuration", "Release");
project.ReevaluateIfNecessary();
var outputPath = project.GetPropertyValue("OutputPath");
或者
ProjectCollection.GlobalProjectCollection.SetGlobalProperty("Configuration", "Release");
load project
var outputPath = project.GetPropertyValue("OutputPath");
于 2016-01-28T07:43:15.283 回答