ClickOnceによるアプリケーションの配布

Visual Basic を利用して作成したアプリケーション(Windows Application)のアプリケーションの配布について、ClickOnce なるものがある。
この ClickOnce によるアプリケーションの配布は、小生自身、四苦八苦している。
今回、メモ程度(忘れないよう)に投稿する。

アプリケーションを作成したパソコンの環境

OSとIISについて
Windwos XP Professional SP3 (32Bits)
IIS は、アプリケーションを作成したパソコンに設定(IIS 5.1)
.NETFramework とアプリケーション作成の言語
.NETFramework のバージョンは、4
言語は、Microsoft Visual Basic 2010 Express
データベースについて
Microsoft SQL Server 2008 Express SP2
Management Studioは、2008を使用
ウェーブブラウザについて
Internet Explorer 8
Mozilla Firefox 3.6.15
Safari 5.0.3

前回 (VS が、2008の時代) は、Internet Explorer 以外のブラウザでは、かんばしくなかったが、今回は、Firefox でもアプリケーションの配布ができた。
追記するが、なんとSafari のブラウザでも配布ができた。

2011-03-27 追記

http://msdn.microsoft.com/ja-jp/library/71baz9ah.aspx に記載があるように、VS のバージョンではなく、.NET Framework のバージョンらしい。
下記のような内容が、このページに記載されていた。

  • .NET Framework 3.5 を対象とするアプリケーションは、任意のブラウザーを使用してインストールできます。
  • .NET Framework 2.0 を対象とするアプリケーションは、Internet Explorer が必要です。

よく発生するエラーの現象

一概にも、述べられないが、小生の場合、(ローカルの) IIS に ClickOnce によるアプリケーションの配布の場合、下記のような現象がよく発生する。

  • application (マニフェスト?) ファイルのライセンス認証により例外が発生
  • App_Data/(SQL Server のデータベース、又は、ログのファイル).deploy のダウンロードに失敗しました。
  • ClickOnce による配布ができた場合に、更新時に InvalidDeployment などがキャッチされる

これらの不可解な現象を対処するため、規定値より変更した主な内容を、次項に、記載する。

アプリケーションファイルの変更

この処置は、「App_Data/(SQL Server のデータベース、又は、ログのファイル).deploy のダウンロードに失敗しました。」に対する内容で、次のように設定を変えると対処できた。
[アプリケーション ファイル]ボタンにて、下記の図のように、「ファイル名」より SQL Server のデータベース ファイルとログファイルの「発行の状態」を「データファイル(自動)」より「除外」に変更する。

アプリケーションファイル

基本的に、アプリケーションの運用時のデータベースの場所は、サーバー内の各々のファイルを使用するので、支障はないと感じている。

発行オプションについて

この部分は、基本的に規定値でも支障がなさそうだが、配布させる際、わかりやすくする意味合いより、「配置 Web ページ」のファイル名称を、setup.html に変更した。
当然、「発行後に毎回配置 Web ページを自動的に生成する」にチェックを入れないと、配置 Web ページが作成されない。

発行オプションの変更

更新時の InvalidDeployment などのキャッチについて

この点は、非常に悩んだ。つまり、どのように行っていいかわからなかった。
発行ウィザードを利用し発行場所を指定するが、教科書 (規定値) だと、「https://(サーバー名。例えば、localhost)/(アプリ名など)/」で、sがつく。
このsを取り、「http://(サーバー名。例えば、localhost)/(アプリ名など)/」だと、作成したアプリケーションの更新などもうまくいった。

参考図書

下記の図書を参考にしながら、アプリケーションの作成を行っている。
これらの図書は、小生のレベルでも読みやすい。

左側の「独習 Visual Basic 2008」が、小生が購入し、利用した図書である。
この図書「独習 Visual Basic 2008」の付録Bにて、PDFファイル形式で、http://seshop.com/book/download より入手した電子図書に、IISに関する内容の記載がある。
尚、この図書で、Visual Basic のプロパテの作成など、初歩的な内容の再確認が行えた。

現在は、2010 より、「独習 Visual Basic 2010」のほうだろう。

左側の「ASP.NET 実践講座」が、小生が購入し、利用した図書である。
今となっては、化石みたいな図書だが、.NETFramework のバージョンが、1.1 の時代より、閲覧している。
この図書に、IIS 5.1 の場合だが、小生自身が感じている IIS に関する詳細事項が説明されていた。
しかし、基本的な内容を把握するのに便利な図書と感じている。

現在は、4 のことを思うと、右側の「独習 ASP.NET」のほうだろう。

出し惜しみではないが、このテーマは、小生自身、分かり次第、徐々に投稿していく考えである。
(はっきり言って、小生自身のメモである。)

追記

Safari の場合でも、警告メッセージが、表示されるが、今回、素直に[開く]ボタンをクリックすることより、アプリケーションを配置することができた。

追記 (2011-03-27)

(ローカルの) IIS に、配置でき、喜んでいたが、Web サイトに張り付けることが、できず、少しがっかり!!
「自動的に作成されたファイル内の関連する内容 (具体的には、サイト名など) も変更したのに」って、気分である。

しかし、いろいろと調べていくと、下記のようなページを見つけた。
近日中に再チャレンジ (本日 3/27 は、見つけたアドレスを忘れないようにメモの程度)

ClickOnce のセキュリティと配置
http://msdn.microsoft.com/ja-jp/library/t71a733d.aspx
ClickOnce のセキュリティと配置に関する基本的な内容みたい。
ClickOnce 配置ストラテジの選択
http://msdn.microsoft.com/ja-jp/library/71baz9ah.aspx
このページに、「Web ブラウザー サポート」の記載がある。
方法 : オンライン ClickOnce アプリケーションでクエリ文字列を取得する
http://msdn.microsoft.com/ja-jp/library/ms172242.aspx
この内容は、面白そうと感じている。
チュートリアル : ClickOnce アプリケーションを手動で配置する
http://msdn.microsoft.com/ja-jp/library/xc3tc5xx.aspx
Microsoft Windows SDK v7.1 なるものを知る。
まだ、利用していないが、Windows XP SP3 も、対応しているみたいなので、さっそくダウンロードしてみた。

この投稿内容のインデックス的なページの紹介

これらのインデックス的なページは、下記に紹介します。
» Microsoft Visual Basic について

追記 (2011-12-23)

更新時の InvalidDeployment などのキャッチについて、ClickOnce の配布先を指定する際、下記のように設定すると、IIS に関するセキュリティが、今回、うまくいった。
つまり、ローカル IIS を選択後、Secure Sockets Layer を使用するの「レ」点を外すとうまくいく感じである。
尚、下記のリンク先に、IIS 7.0 Extensionsも設定させた場合のWebサイトを開く画面も紹介した。

ClickOnceについて勉強不足

-以 上-

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA