ClickOnceを使わずに.MSIファイルでアプリケーションをユーザーに配布した場合、その後のバージョン・アップ作業や、ちょっとしたバグ修正によるソフトウェア更新作業が大変なものとなることは想像に難くない。
なるほど(前掲のコラムにも書いたように)これが10人程度なら各ユーザーに一声かけて更新作業をお願いすれば済むのかもしれないが、それが100人、1000人、1万人になったらどうだろう? ユーザー数が増えれば増えるほど、クライアント・ソフトウェアの更新作業を管理することは非常に大変になるはずだ。そうなれば、何らかの展開テクノロジを用いてソフトウェアの更新を集中管理しないと、システム管理者はソフトウェアの更新作業以外の仕事に手が回らなくなってしまう。
確かにソフトフェアの更新管理を簡素化するソリューションはすでにいくつか存在するが(例えばSystem Management Serverを使ったアプリケーション展開など)、ClickOnceならば.NET Framework 2.0が標準で提供する機能なので手軽に導入できるし、アプリケーション自らがバージョン・アップを検知してユーザーにソフトウェアのアップデートを提案してくれるので、システム管理者の作業は非常に少なくなり、かなり楽になる。
そこで次に、ClickOnceなら実際にどのようになるのかを示そう。まずは次の画面で行っているようにアプリケーションを変更し、Webサーバ側に配置するClickOnceアプリのバージョン・アップを行ったとしよう。
Webサーバにはバージョン・アップしたClickOnceアプリが配置されたものとし、前述した[スタート]メニューに登録されたClickOnceアプリへのショートカット・メニュー項目をクリックして、インストール済みのアプリケーションを起動してみよう。
これにより(通常は)アプリケーションが起動される前に、次の画面のような[アプリケーションの起動中]ダイアログが表示される。
このダイアログが表示されている間に、Webサーバにアクセスしてアプリケーションの更新がチェックされる。そこでバージョンが更新(主にバージョン・アップ)されていれば、ユーザーにアプリケーション更新の許可を求める次のようなダイアログが表示される。
ここで[OK]ボタンをワン・クリックするだけでアプリケーション全体がアップデートされる。
ちなみにここでは[スタート]メニューから起動する例を示したが、ClickOnceアプリ・インストール用Webページの[インストール]ボタンをクリックしてアプリケーションを起動した場合には、この[利用可能な更新があります]ダイアログは省略されてアプリケーションが即座に自動アップデートされる。
次の画面は[利用可能な更新があります]ダイアログで[OK]ボタンをクリックしてアプリケーションがアップデートされているところと、アップデートされたアプリケーションが起動したところである。
以上のようにClickOnceを活用すれば、非常に容易にアプリケーションのインストール(デプロイメント)とアップデートが実現できることがご理解いただけただろう。
それでは、もしこのようにClickOnceのアップデート機能によりインストールした新しいバージョンのアプリケーションに何らかの不具合があり、それが原因で業務・作業が先に進めなくなってしまった場合はどうなるだろうか? ユーザーは不具合が修正された次のバージョンがWebサーバ上に準備されるのをじっと待つ以外にはどうしようもないのだろうか? これではアプリケーションの安定性・確実性や安全性が十分に確認されるまで、ユーザーは怖くて[利用可能な更新があります]ダイアログの[OK]ボタンが押せないということも起こるだろう。
だがClickOnceではこのような想定し得ない緊急の事態に備えて、アプリケーションのロールバック機能(=昔のバージョンに戻すこと)が標準で搭載されているので、いつでも安心してアプリケーションのアップデートを行うことができるのだ。次にこのロールバック機能について紹介しよう。
ClickOnceが提供するアプリケーションのロールバック機能も、使い方は至って簡単だ。具体的には、コントロール パネルを開き、そこから(Windows XPの場合なら)[プログラムの追加と削除]を実行する。表示された[プログラムの追加と削除]ダイアログで[プログラムの変更と削除]の一覧の中から、ロールバックしたいClickOnceアプリの[変更と削除]ボタンをクリックすればよい。
これにより、次の画面のようなロールバックもしくは削除(=アンインストール)を指定するためのダイアログが表示される。ここで[アプリケーションを以前の状態に復元します。]を選択して[OK]ボタンをクリックする。
以上でClickOnceアプリのロールバックは完了だ。再度[スタート]メニューよりアプリケーションを起動してみると、確かにアプリケーションが前のバージョンに戻っていることが確認できるはずだ。
このようにClickOnceならば、各ユーザーが手動で昔のバージョンに戻して一時的に使用するようなこともできるので、運用の幅・自由度が広くなる。
以上がClickOnceアプリの典型的な利用例だ。
今回はClickOnceの基本動作をユーザーの視点でお伝えしたが、その基本的な特徴や便利さはご理解いただけただろうか。さて次回は、システム管理者やプログラマの視点で、ClickOnceの仕組みや配置方法、使い方・実装方法などを解説する予定だ。お楽しみに。
Copyright© Digital Advantage Corp. All Rights Reserved.