为什么不能在C#项目的属性中使用MSBuild宏?这些都可以在CPP项目中找到。
例如:
在命令行控制台中创建一个空的调试命令行的主要方法在解决方案资源管理器中单击项目并单击左侧的“properties
我在"Xml文档文件路径“和其他字段中也遇到了同样的问题。
发布于 2018-06-07 11:05:30
为什么不能在C#项目的属性中使用MSBuild宏?这些都可以在CPP项目中找到。
这是因为C#和CPP项目引入宏的方式不同。
对于C#项目,它介绍了由.props
、.targets
等文件组成的Microsoft.CSharp.targets文件。在您的项目文件.csproj
中,您将找到以下导入:
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
对于CPP项目,它是由属性表引入的,可以从C#项目不支持的View
->Other Windows
->Property Manager
,中获取。
The different:
您可以使用属性表创建可应用于多个项目的项目配置,因为在.vsprops文件中定义的项目设置是可继承的,这与在项目文件(.vcproj文件)中定义的项目设置不同。因此,在.vcproj文件中定义的项目配置可以从一个或多个属性表(.vsprops文件)继承项目设置。有关更多信息,请参见属性继承。
这就是为什么你可以在CPP项目的属性中使用MSBuild宏,而不是在C#项目中。
您可以查看以下文档以了解更多详细信息:
Common macros for build commands and properties
希望这能有所帮助。
https://stackoverflow.com/questions/50729501
复制相似问题