1

私の同僚と私が持っている C# プロジェクトは、regasm.exeまたはExcel 相互運用のためのRegistrationServicesを使用して COM に登録する必要があります。その結果、アセンブリは厳密な名前のキーで署名する必要があります。キー ファイルは Visual Studio で生成され、ソース コード リポジトリにコミットされました。

新しい開発者が git リポジトリのクローンを作成するたびに、プロジェクト プロパティの署名タブに移動して .pfx ファイルのパスワードを再入力するか、コマンド ラインで sn.exe を使用してパスワードを再入力する必要があります。どちらも手動の手順と (簡単で広く知られている) パスワードの口頭での伝達を必要とするため、どちらも理想的ではありません。

アセンブリへの署名を遅らせようとしたため、ビルドは続行できましたが、COM に登録できませんでした。

.pfx キー ファイルを手動で更新することを強制せずにこれを行う方法はありますか? ありがとう!

4

2 に答える 2

3

[ComVisible] アセンブリには厳密な名前は必要ありません。regasm.exe の既定のアクションは、アセンブリを GAC に展開することを前提としています。ただし、これは必須ではありません。/codebase オプションを指定して、配置されているディレクトリに登録します。通常、プロジェクトのビルド ディレクトリ。

これは、ビルド プロパティで [COM 相互運用に登録する] オプションをオンにしたときに Visual Studio が行うことでもあります。プロジェクトをビルドするだけで十分です。これがまだインストーラーと互換性があるかどうかを確認してください。DLL Hell の影響がありますが、分離で解決するのが最善です。

于 2011-10-20T23:15:47.913 に答える
2

誰かがあなたの.snkを手に入れて、それを無駄に使うことを心配していなければ、パスワードを要求する必要はありません。パスワードもプロンプトもありません。

于 2011-10-20T22:56:05.823 に答える