VS2005 IDEで初めて発行したオフライン利用可能なアプリケーションでの Click Once に利用される証明書は、
発行先・発行元: [Computer Name]\[User Name]
有効期限: 作成1年後
となりますが、
バージョンアップ版の発行を証明書の有効期限後に行うと
エラー 2 SignTool はエラー 'bin\hoge.publish\\setup.exe の署名に失敗しました。
SignTool Error: ISignedCode::Sign returned error: 0x80880253
The signer's certificate is not valid for signing.
SignTool Error: An error occurred while attempting to sign: bin\' を報告しました。
のエラーが表示され、発行することが出来ません。
このアプリケーションのバージョンアップを行うためには、どのような手段を採るのが適切なのか記されているドキュメントに行き当たっていないため難儀しています。
証明書を新たに生成すれば、既に利用しているユーザーがバージョンアップ版の自動ダウンロード後に相違エラーが発生して使えなくなってしまいます。証明書の期限の更新という手法が正しいのでしょうが、「HOW TO」情報を発見できていません。
現状の回避策は、より有効期限の長い証明書を生成して、旧バージョンを「アプリケーションの追加と削除」で一度削除してもらってから、新たに新しい証明書で作成したバージョンアップ版をインストールしていただいていますが、これでは Click Once の利便性が否定されてしまいます。
VS2005がリリースされて1年数ヶ月経過しましたので、そろそろこの問題に直面する方も多いかと思いますので、正しい対処方法をご存じの方にお尋ねしたく思います。(有償の証明書を購入して・・というのは無しにしてください)
教訓:
IDEが自動生成する証明書の有効期限は1年であり、そのままでは事実上使えない。
この問題の回避策を知っておくか、有効期限の長い証明書を使って Click Once を利用する。