4

是否有用于 Visual Studio 的插件/技巧/宏,它会自动将项目目录之外的所有文件移动并作为链接添加到项目目录并更改文件在项目本身中的位置?

|--Project1
          |--File1.vb REM: already inside the project folder
|--File2.vb REM: outside the project folder and added as link to project1.

有没有办法做到这一点?

|--Project1
          |--File1.vb REM: remains as it is
          |--File2.vb REM: now moved to project1 directory.
4

2 回答 2

3

如果它是您正在寻找的,Visual 已经在编译期间进行了复制。另一方面,如果你想真正添加文件,而不是作为链接,我很确定 VS 中没有本机技巧。

于 2012-06-18T11:51:17.167 回答
3

自己写一个这样的工具应该不会太难。项目文件只是 XML 文件,对源文件的引用如下所示:

带链接:

<ItemGroup>
  <Compile Include="..\Path_To_External_File\SourceFile.vb">
     <Link>SourceFile.vb</Link>
  </Compile>
</ItemGroup>

相同的没有链接:

<ItemGroup>
    <Compile Include="SourceFile.vb" />
</ItemGroup>

因此,编写一个非常简单的程序或脚本来读取所有要处理的项目文件,循环遍历所有<Compile>项目,复制源文件或将其移动到所需位置,并相应地调整项目文件的 XML。如果您事先编写过一些 XML 处理程序,例如使用XMLDocument类,那么这应该在几个小时内(最多)实现。

最后一点:您可能(或可能不必)处理从不同项目引用相同文件的情况。

于 2012-06-18T14:07:54.790 回答