移动VC#项目并维护链接

本文关键字:维护 链接 项目 VC# 移动 | 更新日期: 2023-09-27 18:20:56

如何移动Visual Studio C#项目并维护链接的文件?

例如;

  • 我有一个位于文件夹A/V2013_Project中的VC#项目
  • 这个VC#项目链接到文件A/Image/a.png,这是因为我们有许多其他项目也使用这个文件
  • 我想把我的项目转移到A/Release/V2013_Project。把这个项目移到一个子文件夹里
  • 我不会重命名新项目中的任何内容,也不会更改除项目位置之外的任何其他内容

当我移动项目时,我所有的链接都失败了(有50多个),我的大多数参考都失败了。所谓失败,我的意思是它们不再指向文件。在新移动的VC#项目中;当我点击链接文件时,VC#显示一个错误:

Cannot find the file A/Image/a.png. It may have been moved or deleted.

但这个文件从未被移动过。它仍然在同一个地方。

如何移动VC#项目并维护链接和引用?有任何第三方插件可以做到这一点吗?

编辑:使用wintermute的建议;这些联系确实是相对的,而不是绝对的。例如

<Resource Include="..'..'Resources'Other'Images'TOOLBAR_close.png">
  <Link>Resources'Other'Images'TOOLBAR_close.png</Link>
</Resource>

有什么想法可以让链接在VC中绝对化吗?

移动VC#项目并维护链接

这取决于文件的链接方式。你的问题不清楚。

有些文件是.csproj文件的引用。关闭Visual Studio(只是为了确定),然后用记事本或其他文本编辑器打开.csproj文件。看看你所说的文件是否在那里被引用。如果是,请在每个文件名前面添加文本"..''",表示它们是相对于项目位置高出一个目录。

.resx文件中引用了一些文件。在这种情况下,Visual Studio应该将.resx文件的名称作为错误消息的一部分。可以使用Visual Studio的编辑器修复此问题。双击错误消息,它应该会打开.resx文件,其中错误的文件引用作为所选行。再次在文件名前面添加"..''"。

你说你有50个推荐人。希望这意味着您可以进行搜索和替换,将"..''"文本添加到相关的文件名中。

编辑:

你对你的问题进行了编辑,显示了这一行:

<Resource Include="..'..'Resources'Other'Images'TOOLBAR_close.png">

如果你真的想让它变得绝对,那就去做吧。

<Resource Include="D:'Merlinia'Trunk-Debug'Add-Ons'Picture Editor'VS2012 projects'PictureEditor'Resources'Other'Images'TOOLBAR_close.png">

但正如我在评论你的问题时提到的,请确保这是解决问题的最佳方式。