Visual Studio工程里的自定义宏

本文探讨了在Visual Studio工程中如何管理和使用自定义宏,特别是在研究FreeSWITCH源码时遇到的OpenSSLVersion宏。通过查看vcxproj文件和引用的openssl-version.props配置文件,了解到宏的定义和配置方式,即通过XML配置文件来设定工程所需的宏。
部署运行你感兴趣的模型镜像

在研究FreeSWITCH源码时,经常会看到有一些自定义的宏。例如下图中的OpenSSLVersion。


我试着寻找配置这些宏的地方,但没找到。后来在网上搜索了一番,好像得直接编辑vcxproj文件。


因此我就试着查看了vcxproj文件。我用notepad打开了Download OPENSSL工程的vcxproj文件。文件中发现了如下一些内容:

  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
    <Import Project="..\..\w32\openssl-version.props" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
    <Import Project="..\..\w32\openssl-version.props" />
  </ImportGroup>
这里指示了另外一个文件:openssl-version.props。

因此我又打开了openssl-version.props文件。

<?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">
    <OpenSSLVersion>1.0.1h</OpenSSLVersion>
  </PropertyGroup>
  <PropertyGroup>
    <OpenSSLVersionImported>true</OpenSSLVersionImported>
  </PropertyGroup>
  <PropertyGroup />
  <ItemDefinitionGroup />
  <ItemGroup>
    <BuildMacro Include="OpenSSLVersion">
      <Value>$(OpenSSLVersion)</Value>
    </BuildMacro>
  </ItemGroup>
</Project>
显然这是一个XML文件。这里出现了刚才那个截图中的OpenSSLVersion宏以及它的值“1.0.1h”。


也就是说,每个工程里需要的宏都由一个XML的配置文件提供,并且在工程的vcxproj文件里指向这个配置文件。





您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值