MSB3325: 次のキー ファイルをインポートできません

完全なエラー テキストは、次の例のようになります。

MSB3325: Cannot import the following key file: {0}. The key file may be password protected. To correct this, try to import the certificate again or manually install the certificate to the Strong Name CSP with the following key container name: 'name'

[プロジェクトのプロパティ][アセンブリの署名] オプションをオンにし、アセンブリの署名用に .pfx ファイルを選択した場合、このエラーが表示されることがあります。 この場合、.pfx ファイルを選択するときに、厳密な名前の公開キーがコンピューターの暗号化サービス プロバイダー (CSP) にインポートされる必要があります。 アプリを発行すると、MSBuild によってアセンブリの署名が試みられます。 何らかの理由により署名コードで厳密な名前の公開キーを厳密な名前の CSP から読み取ることができなかった場合、このエラーが発生します。

何らかの理由でこのエラーが発生した場合、回避策は、エラー メッセージに示されているキー コンテナー名を使用して、厳密な名前の暗号化サービス プロバイダー (CSP) に .pfx を手動でインストールすることです。

CSP に厳密な名前の証明書を手動でインストールするには、開発者コマンド プロンプトを開き、次のように sn.exe コマンドを実行します。

sn.exe -i <pfx_file> <key_container_name_from_error_message>

その後、発行プロセスで CSP から厳密な名前の公開キーを読み取り、厳密な名前でアセンブリに署名することができるようになるはずです。

Screenshot of Signing tab in Project Properties.

.NET プロジェクトを新しくした場合、厳密な名前の設定は、[プロジェクト プロパティ][ビルド] セクションにあります。

Screenshot of the Build > Strong naming section of the Project Properties.