プロジェクト A がプロジェクト B を参照し、プロジェクト B がプロジェクト C を参照し、プロジェクト C がネイティブ DLL を参照する .NET ラッパーを持つように、ソリューションをセットアップしました。
A -> B -> C -> .NET ラッパー経由のネイティブ DLL
畳み込みの理由は、サードパーティのハードウェアを扱っているか、プロジェクト B から直接 DLL を参照するためです。とにかく --
プロジェクト C で参照され、プロジェクト A にコピーされたいくつかのファイル (ネイティブ DLL) を取得しようとしています。 「コンテンツ」のビルド アクションを使用したローカル コピーは機能しません。それらが起動し始めると、プロセスはその後クリーンアップされず、実行されたままになります。
ビルドする前に MSBuild でプロセスを強制終了することは可能ですか?
また
MSBuild にネイティブ DLL が存在しない場合、条件付きでプロジェクト B からプロジェクト A にネイティブ DLL をコピーすることは可能ですか? プロジェクト A の bin フォルダーは、それらが起動する場所であり、これはビルドが失敗する場所です (プロジェクト C から B へではありません)。