You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2019中如何跨项目引用VS宏$(TargetFileName)定义预处理器?

在Visual Studio 2019中跨项目传递目标文件名到预处理器宏

要在ProjectB中定义预处理器宏THE_OTHER_FILE_NAME,使其值等于ProjectA的$(TargetFileName),按以下步骤操作:

  1. 设置项目依赖
    右键解决方案中的ProjectB,选择「项目依赖」,勾选ProjectA。这能确保VS先编译ProjectA,保证其目标文件信息可被正确读取。

  2. 配置ProjectB的预处理器定义
    右键ProjectB → 属性 → 配置属性 → C/C++ → 预处理器 → 预处理器定义,添加以下内容:

    THE_OTHER_FILE_NAME="$(ProjectA_TargetFileName)"
    
    • $(ProjectA_TargetFileName)是VS提供的跨项目宏,专门用于获取ProjectA的目标文件名(如ProjectA.exe或ProjectA.dll)
    • 外层引号是为了让预处理器宏的值作为合法的C++字符串常量存在
  3. 验证配置(可选)
    在ProjectB的源文件中添加测试代码,确认宏值正确:

    #include <iostream>
    int main() {
        std::cout << "ProjectA的目标文件名:" << THE_OTHER_FILE_NAME << std::endl;
        return 0;
    }
    

    编译并运行ProjectB,控制台应输出ProjectA的实际目标文件名。

注意:确保操作时选择的配置(Debug/Release)和平台(x86/x64)与ProjectA一致,避免因配置差异导致宏值不正确。

内容的提问来源于stack exchange,提问作者Pavel Stepanek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 08:50:43