8

このソリューションは、 と の 2 つのプロジェクトで構成されていmain.csprojますhelper.csproj

Id'like は、helperプロジェクトがコンパイルされる dll を .dll の埋め込みリソースとして使用することですmain.dll

mainそのためには、 project :のカスタム compile 属性を追加するのが妥当と思われます/resource: <path to dll>

問題は、プロジェクト プロパティを介してこのコンパイル パラメータを追加する方法が見つからないことです。

PS多分、誰かがコンパイルプロセスの変更を避けるために他の解決策を提案することができます.

4

1 に答える 1

5

ヘルパー アセンブリをリソースとして main.csproj に追加できるはずです。これにより、MsBuild は の正しいパラメーターを生成しますcsc

(MsBuild は、一般に 4.x までの .NET で使用されるビルド エンジンであり、VisualStudio でも使用されます。)

これを設定するためにできることは次のとおりです。

  • MainVisual Studio ソリューション エクスプローラーでプロジェクトを右クリックし、 [既存の項目を追加] を選択します。ヘルパー プロジェクトの bin フォルダーから、リンクされたアイテムとして埋め込むアセンブリを追加します。(選択ダイアログの [追加] ボタンの小さな矢印をクリックして、リンクとして追加するオプションにアクセスします)。
  • Mainプロジェクトのアイテムのプロパティで、ActionEmbedded resourceに設定します。

トリッキーなビットは、ビルドしている構成に応じてデバッグ ビルドまたはリリース ビルドを含めるように、正しいビルドを含めることです。それが必要な場合は、次のいずれかを実行できます。

  • main.csproj ファイルを編集${Configuration}して、ヘルパー dll のパスに変数を含めます。
  • ビルド前の手順を main.csproj ファイルに追加して、アセンブリを特定の場所にコピーし、そこからファイルをインクルードします (リンクビットとしてインクルードする必要はなくなりました)。

メイン アセンブリをビルドするときに常にヘルパー アセンブリをビルドするようにするには、メイン プロジェクトへのプロジェクト参照を追加することをお勧めします。

于 2015-04-23T12:36:09.003 に答える