これは、私が遭遇した別のエラーの結果であった。プラグインをビルドするときにビルドが失敗することがありました。
アセンブリ署名に失敗しました。出力が署名されていない可能性があります - エラー署名アセンブリ - プロセスが別のプロセスで使用されているため、ファイルにアクセスできません。
このエラーを修正するより多くの場合、このエラーは修正されません。 2番目のビルドでは、Plugins.dllが残っており、署名が遅れていることが判明しました。 UnitTestsは、DLLに署名したこの遅延を受け取り、わかりやすく不平を言うでしょう。
これが実行している問題であることを確認するには、開発者コマンドプロンプトを開き、「sn -vf Plugins.dll」を実行します。出力が "Plugins.dllが遅延署名されたアセンブリまたはテスト署名されたアセンブリ"の場合、何らかの問題が発生する可能性があります。
私が使用している回避策は、動作するまで繰り返しPlugins.dllに署名しようとしています。これを行うには私が最初に走った:
のsn -i ../../FakeXRMTesting.pfx keyContainer
をパスワードなしで仕事ができるようSNキーコンテナを設定します。次の私は、符号のみを遅らせることPlugins.dllを設定し、ビルド後のイベント
を追加しました: "プログラムファイル(x86の)" \ "マイクロソフトのSDK" \ WINDOWS \ v8.0A \:
Cを繰り返し\ bin \ "NETFX 4.0 Tools" \ sn.exe -Rc Plugins.dll keyContainer || goto:repeat
通常、作業前に4-5で失敗します。これは非常にはっきりとはっきりしたものであり、dllにアクセスしているプログラムがどんなものであれ停止することが望ましいでしょう。
テストプロジェクトにも署名してみましたか? –
@MichaelCoxon私もテストプロジェクトに署名しようとしました。同じキーを使用しましたが、エラーは変更されません。 – Ceribia
私はあなたが[sn.exe -vR](https://stackoverflow.com/questions/1845222/how-to-use-sn-exe-vr)でそれをオフにすることができると思うが、私は構文を覚えていない.. – stuartd