Visual Studio提供了很多可以在IDE中使用的$
变量,例如$(SolutionDir)
。那么,如何创建自己的变量,例如$(MY_INCLUDES_DIR)
(可以由项目的用户设置指向他们的头文件)?这是可能的吗?
Visual Studio提供了很多可以在IDE中使用的$
变量,例如$(SolutionDir)
。那么,如何创建自己的变量,例如$(MY_INCLUDES_DIR)
(可以由项目的用户设置指向他们的头文件)?这是可能的吗?
我知道这对于VS 2010有效:
如果您有属性表,那么在“常规属性”树下有一个名为“用户宏”的部分。 您可以创建自己的$(MyNamedVariable)宏,甚至可以根据其他$(SomeExistingMacro)定义它。 如果您之前没有尝试过属性表,请查找视图菜单下的“属性管理器”,它将允许您创建和编辑它们。
继承属性表的任何项目配置都将像VS自己定义一样看到您的宏,即它将显示在宏列表中。 您项目的用户只需转到某个基本属性表,并在单个位置编辑MY_INCLUDES_DIR(使用您的示例)。
希望这可以帮助到您。
(如何创建属性表?请参见http://msdn.microsoft.com/en-us/library/5k4a0033.aspx。 查看->其他窗口->属性管理器)
我创建了一个属性样式表,用于指定使用哪个Python(和SCons),现在在我的vcxproj中,我可以通过将$(PythonIncludeDir)添加到其他包含属性中来包含Python包含目录。
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros">
<PythonDir>C:\Python27_64</PythonDir>
<PythonExe>$(PythonDir)\python.exe</PythonExe>
<PythonIncludeDir>$(PythonDir)\include</PythonIncludeDir>
<PythonLibDir>$(PythonDir)\libs</PythonLibDir>
<SCons>$(PythonExe) $(PythonDir)\Scripts\scons.py</SCons>
</PropertyGroup>
<ItemDefinitionGroup />
<ItemGroup>
<BuildMacro Include="PythonDir">
<Value>$(PythonDir)</Value>
<EnvironmentVariable>true</EnvironmentVariable>
</BuildMacro>
<BuildMacro Include="PythonExe">
<Value>$(PythonExe)</Value>
<EnvironmentVariable>true</EnvironmentVariable>
</BuildMacro>
<BuildMacro Include="PythonIncludeDir">
<Value>$(PythonIncludeDir)</Value>
<EnvironmentVariable>true</EnvironmentVariable>
</BuildMacro>
<BuildMacro Include="PythonLibDir">
<Value>$(PythonLibDir)</Value>
<EnvironmentVariable>true</EnvironmentVariable>
</BuildMacro>
<BuildMacro Include="SCons">
<Value>$(SCons)</Value>
<EnvironmentVariable>true</EnvironmentVariable>
</BuildMacro>
</ItemGroup>
</Project>
<PropertyGroup Label="UserMacros">
<!-- Add the following line. -->
<MY_INCLUDES_DIR>D:\MyIncludes\</MY_INCLUDES_DIR>
</PropertyGroup>
创建一个名为MY_INCLUDES_DIR
的系统环境变量。
打开Visual Studio,选择菜单栏的视图(View)->属性管理器(Property Manager)。 选择项目、平台和配置,右键单击Microsoft.Cpp.x64.user,然后转到用户宏(User Macros)选项卡,并点击添加宏(Add Macros)。
无论您选择选项1、2、3还是4,您都可以在Visual Studio项目文件中引用$(MY_INCLUDES_DIR)
。
我刚刚也需要做相同的事情。我有三种解决方案,其中包括一个公共项目。每个解决方案都需要使用略有不同的设置来构建公共项目。
发现可以通过项目属性表格轻松完成此操作。为您想要更改的设置创建属性表格文件并将其保存在解决方案目录中。在文本编辑器中打开项目文件(或在VS中使用“打开方式\源代码文本编辑器”),找到属性表格的目录路径。对其进行修改,使其使用路径“$(SolutionDir)”。
现在,您拥有了加载特定解决方案属性表格的Visual Studio项目。