Visual Studio 2005 で作成したアプリケーションを発行しようとしたところ、突然「SighToolはエラー」が発生するようになり、発行ができなくなってしまった。
以前発生した「SignToolで、キーセットがありません」エラーとは異なるメッセージで「setup.exeの署名に失敗しました」という内容のメッセージが表示されて発行ができない。
調べた結果、@ITに関連する記事があったので覚書しておく。
エラーの原因と関連記事について
@ITで見つけた関連記事のURLを以下に記載。
ClickOnceのデジタル証明書を更新するには?[VS 2005のみ、2.0のみ、C#、VB] - @IT
エラーの原因等については、@ITの記事を見るとして、@ITの記事に記載されている対処方法には、Visual C++ 2005 を使ってRenewCert.exeなるアプリケーションを作成して証明書を更新するという方法。
はっきりいってめんどくさい。
誰か作って公開してくれてないかなーと思って検索したら、ダウンロードできるサイトを発見した。
個人のブログサイトみたいなので、いつまでダウンロードできるか不明。
一応記載しておくが、ウィルスチェックは忘れずに!
対処手順
RenewCert.exeを使って証明書を更新する対処手順を以下に記載する。
- このサイトのrenewcert.zipをクリック。
- 発行するアプリケーションが保存されているフォルダにダウンロードしたRenewCert.exeを保存する。
- 発行するアプリケーションが保存されているフォルダに"xxx.pfx"というファイルがあることを確認する。 (xxxは、アプリケーション名になっているはず)
- コマンドプロンプトを起動して、アプリケーションの保存フォルダに移動する。
- 以下のコマンドを実行 renewcert xxx.pfx xxx_new.pfx "CN=xxx" CN="xxx"のxxxは、発行を行ったユーザーの名前、"マシン名\ログオン名"にする。 わからない場合は、現在の証明書欄を見ればよい。
- xxx_new.pfxが作成されたことを確認したら、Visual Studio 2005を起動し、アプリケーションのプロジェクトを開く。
- プロジェクトのプロパティを表示し、[署名]タブをアクティブにする。
- [証明書]欄の右にある[ファイルから選択]をクリックする。
- [ファイルから選択]画面が表示されるので、作成した"xxx_new.pfx"選択して[開く]をクリックする。
- 有効期限が更新されていることを確認する。
以上で作業は終了。
renewcert.exe の使用方法は、前述した@ITの記事にも詳細が記述されているので、よくわからない場合はそちらを参照すること。
コメント