[PR]着うた何曲でも無料でGET!:毎週更新!リクエスト充実

 

目次

 

 

 

 

一年を過ぎるとClickOnceで配布した
プログラムが起動しない

Visual Basic 2005 Express Edition SP1
Windows XP SP2
2006/6/10


 

 作成したアプリケーションをClickOnceで配布しておけば、クライアント側で配布元を確認して必要に応じて更新する為、極めて便利である。これにより、配布先を管理して更新があるたびにインストールのお願いをする必要が無くなる。また、ASPやJAVAといった多少貧弱なソリューションに頼らなくて済む。

 デフォルトのプロジェクトで生成されるテスト証明書は期限が1年だったりする。期限が切れると、新しい証明書をつけて再ビルドして、全端末に対して再インストールする必要がある。これを一年毎に繰り返さjなければならない。それを避けるには、期限が長めの証明書を作っておくのが手っ取り早い。

 社内で認証局が統一管理されていれば、証明書の発行は問題の無い日常業務だろう。そうでないなら、独自の認証局を立てるか、プライベートな証明書を作るしかない。

 2040年まで使えるプライベート証明書の作り方は、下記の通り。

厳密に言うと、.Net Framework環境が想定しない重大なセキュリティーホールを作る、好ましくない解決方法です。何があっても責任持てません。少なくとも、外部から隔絶された社内ネットワークなどでのみ使ってください。

1.ルート証明書の作成

 makecert -n CN=test -sv c:\test.pvk -r c:\test.cer

 ※makecert.exeはOfficeがインストールされたPCでファイル名検索をすると見つかります。
 ※パスワードの入力が必要です。2.で使います
 ※本来はこのルート証明書をベースにデジタル署名を作成すべきですが、ここではそのまま使います。

 参考:http://www.ki.rim.or.jp/~kuro/ActiveX/CabAndSign/MakeCert.html

2.証明書のインポート

 a)pvkimprt.exe をマイクロソフトからダウンロードする。

    マイクロソフトのサイトで検索してください。

 b)インポートする

    pvkinprt -PFX test.cer test.pvk

    秘密キーをエクスポートしてください。
    出力ファイル形式は Personal Information Exchange - PKCS #12 (PFX) です。

    test.pfx というファイルが作成されます。
    このファイルをフォームなどがあるプロジェクトのディレクトリへ移動して ください。

    ※途中、1.で入力したパスワードが必要です。

    参考: http://www.atmarkit.co.jp/fdotnet/clickonce/clickonce07/clickonce07_03.html

3.VBプロジェクトの設定

 プロジェクトを開きます。「署名」のシートを選択します。「ファイルから選択」を指定して、2.で作ったpfxファイルを指定します。

 

 作業が終わったら、pfxファイル以外は削除しましょう。また、証明書管理の社内スキームができあがったら、再ビルドして再インストールをしましょう。

 

コメントがあればブログ

 

目次

 

 

 

 

 

 

 

 

 

 


[PR]人気ブランドの公式通販サイト:ビームス、Cher等≪全品送料無料≫。