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

それがあなたが探しているものであるならば、ビジュアルはすでにコンパイル中にコピーを行います。一方、実際にファイルを追加したいが、リンクとしてではない場合は、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を調整する非常に単純なプログラムまたはスクリプトを作成します。たとえば、XMLDocumentクラスを使用してXML処理を事前にプログラムしたことがある場合は、これを数時間(最大)で実装する必要があります。

最後に、同じファイルが異なるプロジェクトから参照されている場合に対処する必要がある場合もあれば、そうでない場合もあります。

于 2012-06-18T14:07:54.790 に答える