2

Visual Studio でアセンブリに署名してもらいたいです。

PFX ファイルを問題なく指定できるようになりました。2つのエラーがあったので、それは簡単ではありませんでした. はい、openssl を使用したことを確認する必要があり (stackoverflow の記事がそのエラーに役立ちました)、Microsoft の記事が最初のエラー メッセージに役立ちました。そこでは、PFX ファイルをインポートし、オプションをクリア/設定してから、再エクスポートしないようにする必要がありました。ダウンストリーム証明書を含めます。

プロジェクトをビルドしようとすると、次の警告が表示されます。

オプション 'keycontainer' は、ソース ファイルまたは追加されたモジュールで指定された属性 'System.Reflection.AssemblyKeyNameAttribute' をオーバーライドします"

当然、私のアセンブリは署名されませんでした。

私はいくつかの調査を行いましたが、私が見た最良の提案は、プロジェクトファイルに行を追加するか (助けにはなりませんでした)、ビルド後のイベントを使用して手動で署名することでした。動作する署名ツール。

大多数の開発者がこの機能を使用できない場合、Microsoft が [歌う] タブを提供するとは想像できません。

まったく、新しい Visual Studio 2012 Update 1 リリースでは、アセンブリ (DLL または EXE) への署名は子供の遊びだと思っていました。タスクは何でもありません。

考え?

4

1 に答える 1

4

これ以上の情報がなければ、これで問題が解決するかどうかわかりません。しかし、私のために働いた答えを投稿します。私の場合、AssemblyInfo.cs ファイルで署名を指定した古いプロジェクト (VS 2012 より前) を次のように変換しました...

[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

あなたが説明したように、私は通常、プロジェクト/プロパティの署名タブを使用します。警告メッセージは、本質的に「ねえ、あなたはソース コードで何か違うことを私に言った!」というものでした。

私にとっての解決策は、AssemblyInfo.cs ファイルで上記の 3 行を削除することでした。これはおそらくあなたの元の投稿の後の方法だと思いますが、誰かが役立つことを願っています.

于 2013-04-05T19:17:14.520 に答える