1

さて、ここで問題です。私は2つのプロジェクトを持っています。1 つはメイン プロジェクト (実行可能)、もう 1 つはライブラリです。

  • MyNameSpace.Libraries.TheHolyMefLibrary
  • MyNameSpace.TheProduct

両方のプロジェクトのデフォルトの出力パスはbin\Debug\であるため、メイン アプリケーションをコンパイルすると、デバッグ フォルダに実行可能ファイルとライブラリの両方が見つかります。

さて、次の出力が必要です。

  • bin\Debug\MyExecutable.exe
  • bin\Debug\plugins\TheHolyMefLibrary.dll

しかし、ライブラリの出力パスを に変更するbin\Debug\plugins\と、コンパイラは引き続き次の出力を作成します

  • bin\Debug\MyExecutable.exe
  • bin\Debug\TheHolyMefLibrary.dll

どのプロジェクトがライブラリにリンクしていても、セットアップ ソリューションであっても、常にメイン アセンブリからの出力パスのサブフォルダーにあることを確認するにはどうすればよいですか?

4

2 に答える 2

2

Post-build scriptこれを解決するには、リンクされたアセンブリ DLL をプラグイン フォルダーに移動する場所を作成するのが最善の方法だと思います。アプリケーション プロジェクト ファイルを右クリックして選択Propertiesし、Build Eventsタブに移動すると、ビルド後のスクリプト エディターが表示されます。ビルド スクリプトを作成するにはCMD、たとえば、MOVEケースのコマンドやXCOPY.

于 2013-03-26T12:46:37.453 に答える
0

参照されたアセンブリの 'Copy Local' プロパティを False に設定して、メイン プロジェクトの bin フォルダーへのコピーを停止します。

于 2013-03-27T02:55:37.867 に答える