私のマシンには、同じプロジェクトの 2 つの異なるバージョンがあります。1 つはコード トランクから、もう 1 つはコード ブランチからです。これらのプロジェクトは、厳密な名前付けを有効にするために .pfx キーを使用します。プロジェクトのトランク バージョンを最初にコンパイルしようとしたときに、次のエラーが発生しました。
次のキー ファイルをインポートできません: sgKey.pfx。キー ファイルは、パスワードで保護されている場合があります。これを修正するには、証明書を再度インポートするか、次のキー コンテナー名で証明書を厳密な名前の CSP に手動でインストールしてください: VS_KEY_45891C38BC1BB345
これを解決するには、次のコマンドで sn.exe を使用します。
sn -i sg Key.pfx VS_KEY_45891C38BC1BB345
これにより、トランク プロジェクトの問題が解決され、問題なくビルドされます。
ただし、プロジェクトのブランチ バージョンをビルドしようとすると、(同じキー コンテナー名で) 同じ初期エラーが発生し、sn.exe を使用して証明書をインストールしようとすると (驚くことではありませんが) 次のエラーが発生します。 :
キー ペアのインストールに失敗しました -- オブジェクトは既に存在します
これは、sn コマンドで同じinfileとコンテナーを使用したという点で理にかなっていますが、理解しようとしているのは次のとおりです。
- このオブジェクトが既に存在する場合、証明書が既にインストールされているように見えるため、プロジェクトがビルドに失敗するのはなぜですか。
- これを解決するにはどうすればよいですか (たとえば、アンインストールしてから再インストールできますか? また、できる場合、その方法は?)