gpt4 book ai didi

c++ - 将现有项目添加到解决方案编辑项目文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:57:37 24 4
gpt4 key购买 nike

我有一个 C++ 解决方案 (solution.sln),我想在其中包含一个现有的库 (library.vcproj),所以我打开 solution.sln 在 Visual Studio 中并为其包含 library.vcproj 文件。然后我设置项目依赖项和一些包含路径以使其编译。一切正常。

当我准备将这些更改提交到存储库 (svn) 时,我注意到 library.vcproj 已更改。我检查了差异,只是项目的 GUID 发生了变化。我查看了 solution.sln 差异,发现正如我所料,新项目 GUID 用于识别 library.vcproj

我已经这样做了无数次,但我以前从未见过这种行为。

作为避免 library.vcproj 文件修改的变通方法,我恢复了对它的更改并手动编辑 solution.sln 以将项目的新 GUID 替换为前一个.

当在 Visual Studio 中打开 solution.sln 时,一切正常,但是会创建一个新的 GUID 来替换 solution.sln 中的 libray 项目>library.vcproj.

library.vcproj 包含在其他几个解决方案中,因此只需提交更改就会影响其他几个文件。

是什么导致了这种行为? GUID 或项目引用是否存储在其他地方?

我正在使用 Visual Studio 2005

最佳答案

我找到了这种行为的原因。这不是 VS 错误,它实际上是一种稳健的行为!

solution.sln 中包含另一个具有相同 GUID 的库,因此 VS 会更新传入的 library.vcproj 的 GUID。

深入研究 svn 日志,我发现有人从 anther 库中复制了 library.vcproj 文件并仅编辑了库名称。这两个库将大部分构建配置数据和其他内容共享到 .vcproj 文件中,但忘记更改 GUID 值。

我很惭愧地说出来,但是...那个人竟然是我。

感谢您的意见和时间来考虑这个问题。

关于c++ - 将现有项目添加到解决方案编辑项目文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4807259/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com