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

如何在Visual Studio 2019中移除跨项目的.h/.cpp文件别名?

Visual Studio跨项目文件关联问题排查与重构需求

解决方案结构

Solution1
|_Project1 (WindowsApp)
  |_"Header Files"
    |_Utility.h
  |_"Source Files"
    |_Utility.cpp
    |_Main.cpp
...
|_Project10 (SystemService)
  |_"Header Files"
    |_Utility.h
  |_"Source Files"
    |_Utility.cpp

文件关联现象

Project1中的Utility.h和Utility.cpp实际是Project10对应文件的关联映射,具体表现为:

  • 若已打开Project10的Utility.h/.cpp编辑窗口,双击打开Project1的对应文件时,VS会直接聚焦到已打开的窗口,而非新建窗口;
  • 关闭所有相关窗口后,编辑保存Project1的Utility文件,再打开Project10的对应文件能看到修改内容。

另外,Project1已将Project10的项目文件夹添加至Additional Include Directories中。

已排查内容

  • 非资源管理器快捷方式:在资源管理器中检查Project1的顶级项目文件夹,未发现指向Project10对应文件的快捷方式,仅存在Project1独有的源文件和头文件;
  • 未添加项目引用:右键Project1 > References > Add Reference...,确认未勾选Project10的复选框;
  • 非版本控制配置:通过IBM Rational ClearCase的GUI检查,Project1的这些文件未注册/签入,排除版本控制层面的别名设置,确定是Visual Studio相关特性导致。

重构目标

原搭建方案的开发者已退休,目前我是唯一维护人员。不清楚为何当初未将Utility.h/.cpp提取为静态库项目,代码最初基于VS2010开发(距今近十年),可能采用了当时的旧特性,或是后续VS2019的新特性尚未出现。当前仓库已更新至可在VS2019运行,但仍有一个项目依赖VS2010 v100平台工具集。

由于仓库受IBM Rational ClearCase版本控制且历史悠久,不能直接删除现有关联(可能引发问题),必须先明确开发者当初的设置方式,撤销该关联后,再创建标准的静态库项目。

内容的提问来源于stack exchange,提问作者Minh Tran

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 04:53:27