(57)【要約】【課題】複数のアプリケーションにおいて、最新の機能を提供することができるようにする。【解決手段】ＰＣ１は、装着された光ディスク３から、セットアッププログラム１３の機能世代情報が含まれるＵＤ情報ファイル１４を読み出し、ネットワーク２を介して、サーバ４に登録されているセットアッププログラム１５の機能世代情報が含まれるＵＤ情報ファイル１６を取得する。そして、ＰＣ１は、光ディスク３のＵＤ情報ファイル１４、サーバ４のＵＤ情報ファイル１６およびＵＤ情報レジストリ１２の機能世代情報を比較し、最も新しい機能世代に対応するセットアッププログラムを用いて、アプリケーションプログラム１１およびＵＤ情報レジストリ１２を更新する。本発明は、ネットワークを介して、著作権管理機能を有する音楽コンテンツ配信サービスを提供する情報提供システムに適用することができる。【選択図】      図１
2004334465.tif 000002
【特許請求の範囲】
【請求項１】
メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報を管理する管理手段と、
前記第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得手段と、
前記第１の機能世代情報および前記第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断手段と、
前記比較判断手段により前記第２の機能世代情報が前記第１の機能世代情報よりも新しいと判断された場合、前記第１の機能世代情報を、前記第２の機能世代情報に更新する情報更新手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記第１の機能世代情報に基づいて、所定の時間が経過したか否かを判断する経過判断手段をさらに備え、
前記経過判断手段により前記所定の時間が経過したと判断された場合、前記取得手段は、前記ネットワークを介して、前記情報提供装置に登録されている前記第２の機能世代情報を取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記比較判断手段により前記第２の機能世代情報が前記第１の機能世代情報よりも新しいと判断された場合、前記第２の機能世代情報に対応するソフトウェアを用いて、前記メモリに記憶されているソフトウェアを更新するソフトウェア更新手段
をさらに備えることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記比較判断手段により前記第２の機能世代情報が前記第１の機能世代情報よりも新しいと判断された場合、前記第２の機能世代情報に対応する機能が前記ソフトウェアにあるか否かを判断する機能判断手段をさらに備え、
前記機能判断手段により前記第２の機能世代情報に対応する機能が前記ソフトウェアにないと判断された場合、前記ソフトウェア更新手段は、前記第２の機能世代情報に対応するソフトウェアを用いて、前記メモリに記憶されているソフトウェアを更新する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
記録メディアが装着されたか否かを判断するメディア判断手段と、
前記メディア判断手段により前記記録メディアが装着されたと判断された場合、前記記録メディアに記録されているソフトウェアの機能情報である第３の機能世代情報を読み出す読み出し手段とをさらに備え、
前記比較判断手段は、前記第１の機能世代情報および前記第２の機能世代情報の他に、前記第３の機能世代情報をも比較して、最も新しい機能世代情報を判断し、
前記情報更新手段は、前記第１の機能世代情報を、前記最も新しい機能世代情報に更新し、
前記ソフトウェア更新手段は、前記最も新しい機能世代情報に対応するソフトウェアを用いて、前記メモリに記憶されているソフトウェアを更新する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記取得手段により前記ネットワークを介して前記第２の機能世代情報が取得されなかった場合、前記比較判断手段は、前記第１の機能世代情報および前記第３の機能世代情報を比較して、前記最も新しい機能世代情報を判断する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記比較判断処理により前記第２の機能世代情報と前記第３の機能世代情報が同じであると判断された場合、前記情報更新手段は、前記第１の機能世代情報を、前記第３の機能世代情報に更新し、
前記ソフトウェア更新手段は、前記第３の機能世代情報に対応するソフトウェアを用いて、前記メモリに記憶されているソフトウェアを更新する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項８】
メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得ステップと、
前記第１の機能世代情報および前記第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断ステップと、
前記比較判断ステップの処理により前記第２の機能世代情報が前記第１の機能世代情報よりも新しいと判断された場合、前記第１の機能世代情報を、前記第２の機能世代情報に更新する情報更新ステップと
を含むことを特徴とする情報処理方法。
【請求項９】
メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得ステップと、
前記第１の機能世代情報および前記第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断ステップと、
前記比較判断ステップの処理により前記第２の機能世代情報が前記第１の機能世代情報よりも新しいと判断された場合、前記第１の機能世代情報を、前記第２の機能世代情報に更新する情報更新ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項１０】
メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得ステップと、
前記第１の機能世代情報および前記第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断ステップと、
前記比較判断ステップの処理により前記第２の機能世代情報が前記第１の機能世代情報よりも新しいと判断された場合、前記第１の機能世代情報を、前記第２の機能世代情報に更新する情報更新ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置および方法、記録媒体、並びにプログラムに関し、特に、複数のアプリケーションにおいて、最新の機能を提供することができるようにした情報処理装置および方法、記録媒体、並びにプログラムに関する。
【０００２】
【従来の技術】
従来より、アプリケーションソフトウェア製品の配布形態としては、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）などの読み出し専用記録メディアなどが用いられている。これらのソフトウェア製品においては、配布後に、プログラムの不正箇所が修正されたり、機能改善が付加されてしまうことが多くあり、ＣＤに記録されている情報が古い情報になってしまう。
【０００３】
このような場合に対応して、例えば、特許文献１には、記録メディア上に記録された情報を利用する場合、記録メディア上のアプリケーションを起動し、ネットワークを介して更新情報サーバなどから最新の読み替えテーブル情報を取得し、その読み替えテーブル情報に基づいて、記録メディア上に記録された情報を利用することが提案されている。
【０００４】
また、記録メディアにより配布されたアプリケーションソフトウェアをインストールする場合においては、記録メディアに記録されているセットアップを用いて、アプリケーションを一旦インストールし、インストール後、使用する機能一覧を認識し、定期的に、ネットワークを介して情報提供サーバを確認し、差分があった場合には、機能を更新するようにするアプリケーションも存在する。
【０００５】
さらに、アプリケーションのセットアップ時に、記録メディアに記録されているセットアップを起動させ、情報提供サーバに問い合わせを行い、記録メディアに記録されているセットアップよりも新しいものがあるか否かを確認し、新しいセットアップがあった場合、情報提供サーバよりダウンロードをしてから、新しいセットアップを用いてインストールを行うアプリケーションも存在する。
【０００６】
以上のように、記録メディアにより配布されたアプリケーションソフトウェアにおいては、記録メディアに記録されているセットアップを、一旦、インストールまたは起動させて、情報提供サーバに問い合わせることにより、最新のセットアップをインストールし、最新の機能を更新、保持することができた。
【０００７】
【特許文献１】
特開２００１−１１７７６７号公報
【０００８】
【発明が解決しようとする課題】
ところで、近年、著作権管理機能を有する音楽コンテンツ配信サービス（ＥＭＤ（Ｅｌｅｃｔｒｏｎｉｃ  Ｍｕｓｉｃ  Ｄｉｓｔｒｉｂｕｔｉｏｎ））がネットワークおよびＣＤを用いて展開されている。ＥＭＤにおいては、悪意の者によって著作権管理機能の暗号化方法が解読されたり、暗号鍵が漏洩されてしまった場合、ソフトウェアの管理機能を、新管理機能に更新して、機能世代の更新を行うことにより対応している。
【０００９】
しかしながら、ＣＤを用いてＥＭＤの配布を行う場合においては、上述したソフトウェアのように、ＣＤの内部に固定されたソフトウェアを用いて、サーバにアクセスし、最新の機能を得ようとしても、ＣＤの内部に固定されたソフトウェアの管理機能の暗号化方法の解読または暗号鍵の漏洩により、ＣＤの内部に固定されたソフトウェアを用いて、サーバにアクセスすることができず、したがって、機能世代更新されたＥＭＤに対応することが困難である課題があった。
【００１０】
また、上述したソフトウェアの場合には、１つのソフトウェアにおいて、最新の機能を更新することができるが、例えば、同じ機能を利用する複数のソフトウェアがＰＣにあったとしても、そのソフトウェアの機能が同じであるにも関わらず、１つのソフトウェアの機能更新時に、他のソフトウェアの機能を同時に更新することができない課題があった。
【００１１】
本発明はこのような状況に鑑みてなされたものであり、複数のアプリケーションにおいて、最新の機能を提供することができるようにするものである。
【００１２】
【課題を解決するための手段】
本発明の情報処理装置は、メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報を管理する管理手段と、第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得手段と、第１の機能世代情報および第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断手段と、比較判断手段により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第１の機能世代情報を、第２の機能世代情報に更新する情報更新手段とを備えることを特徴とする。
【００１３】
第１の機能世代情報に基づいて、所定の時間が経過したか否かを判断する経過判断手段をさらに備え、経過判断手段により所定の時間が経過したと判断された場合、取得手段は、ネットワークを介して、情報提供装置に登録されている第２の機能世代情報を取得するようにすることができる。
【００１４】
比較判断手段により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第２の機能世代情報に対応するソフトウェアを用いて、メモリに記憶されているソフトウェアを更新するソフトウェア更新手段をさらに備えるようにすることができる。
【００１５】
比較判断手段により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第２の機能世代情報に対応する機能がソフトウェアにあるか否かを判断する機能判断手段をさらに備え、機能判断手段により第２の機能世代情報に対応する機能がソフトウェアにないと判断された場合、ソフトウェア更新手段は、第２の機能世代情報に対応するソフトウェアを用いて、メモリに記憶されているソフトウェアを更新するようにすることができる。
【００１６】
記録メディアが装着されたか否かを判断するメディア判断手段と、メディア判断手段により記録メディアが装着されたと判断された場合、記録メディアに記録されているソフトウェアの機能情報である第３の機能世代情報を読み出す読み出し手段とをさらに備え、比較判断手段は、第１の機能世代情報および第２の機能世代情報の他に、第３の機能世代情報をも比較して、最も新しい機能世代情報を判断し、情報更新手段は、第１の機能世代情報を、最も新しい機能世代情報に更新し、ソフトウェア更新手段は、最も新しい機能世代情報に対応するソフトウェアを用いて、メモリに記憶されているソフトウェアを更新するようにすることができる。
【００１７】
取得手段によりネットワークを介して第２の機能世代情報が取得されなかった場合、比較判断手段は、第１の機能世代情報および第３の機能世代情報を比較して、最も新しい機能世代情報を判断するようにすることができる。
【００１８】
比較判断処理により第２の機能世代情報と第３の機能世代情報が同じであると判断された場合、情報更新手段は、第１の機能世代情報を、第３の機能世代情報に更新し、ソフトウェア更新手段は、第３の機能世代情報に対応するソフトウェアを用いて、メモリに記憶されているソフトウェアを更新するようにすることができる。
【００１９】
本発明の情報処理方法は、メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得ステップと、第１の機能世代情報および第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断ステップと、比較判断ステップの処理により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第１の機能世代情報を、第２の機能世代情報に更新する情報更新ステップとを含むことを特徴とする。
【００２０】
本発明の記録媒体に記録されているプログラムは、メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得ステップと、第１の機能世代情報および第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断ステップと、比較判断ステップの処理により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第１の機能世代情報を、第２の機能世代情報に更新する情報更新ステップとを含むことを特徴とする。
【００２１】
本発明のプログラムは、メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得ステップと、第１の機能世代情報および第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断ステップと、比較判断ステップの処理により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第１の機能世代情報を、第２の機能世代情報に更新する情報更新ステップとを含むことを特徴とする。
【００２２】
本発明においては、メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報が取得され、第１の機能世代情報および第２の機能世代情報が比較されて、最も新しい機能世代情報が判断される。そして、第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第１の機能世代情報が、第２の機能世代情報に更新される。
【００２３】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２４】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【００２５】
請求項１に記載の情報処理装置（例えば、図１のＰＣ１−１）は、メモリに記憶されているソフトウェア（例えば、図１のアプリケーション１１−１）の機能情報である第１の機能世代情報（例えば、図１のＵＤ情報レジストリ１２−１）を管理する管理手段（例えば、図１のＵＤ情報レジストリ１２−１を管理する図２のＣＰＵ２１）と、第１の機能世代情報に基づいて、ネットワーク（例えば、図１のネットワーク２）を介して、情報提供装置（例えば、図１のサーバ４）に登録されているソフトウェア（例えば、図１のセットアッププログラム１５）の機能情報である第２の機能世代情報（例えば、図１のＵＤ情報ファイル１６）を取得する取得手段（例えば、図１０のステップＳ３２の処理を実行する図２の通信部２９）と、第１の機能世代情報および第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断手段（例えば、図１０のステップＳ３４の処理を実行する図２のＣＰＵ２１）と、比較判断手段により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第１の機能世代情報を、第２の機能世代情報に更新する情報更新手段（例えば、図１０のステップＳ３５の処理を実行する図２のＣＰＵ２１）とを備えることを特徴とする情報処理装置。
【００２６】
請求項２に記載の情報処理装置は、第１の機能世代情報に基づいて、所定の時間が経過したか否かを判断する経過判断手段（例えば、図１０のステップＳ３１の処理を実行する図２のＣＰＵ２１）をさらに備え、経過判断手段により所定の時間が経過したと判断された場合、取得手段は、ネットワークを介して、情報提供装置に登録されている第２の機能世代情報を取得することを特徴とする。
【００２７】
請求項３に記載の情報処理装置は、比較判断手段により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第２の機能世代情報に対応するソフトウェアを用いて、メモリに記憶されているソフトウェアを更新するソフトウェア更新手段（例えば、図１４のステップＳ９７の処理を実行する図２のＣＰＵ２１）をさらに備えることを特徴とする。
【００２８】
請求項４に記載の情報処理装置は、比較判断手段により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第２の機能世代情報に対応する機能がソフトウェアにあるか否かを判断する機能判断手段（例えば、図１０のステップＳ３６の処理を実行する図２のＣＰＵ２１）をさらに備え、機能判断手段により第２の機能世代情報に対応する機能がソフトウェアにないと判断された場合、ソフトウェア更新手段は、第２の機能世代情報に対応するソフトウェアを用いて、メモリに記憶されているソフトウェアを更新することを特徴とする。
【００２９】
請求項５に記載の情報処理装置は、記録メディア（例えば、図１の光ディスク３−１）が装着されたか否かを判断するメディア判断手段（例えば、図４のステップＳ１の処理を実行する図２のＣＰＵ２１）と、メディア判断手段により記録メディアが装着されたと判断された場合、記録メディアに記録されているソフトウェア（例えば、図１のセットアッププログラム１３−１）の機能情報である第３の機能世代情報（例えば、図１のＵＤ情報ファイル１４−１）を読み出す読み出し手段（例えば、図４のステップＳ２の処理を実行する図２のドライブ３０）とをさらに備え、比較判断手段は、第１の機能世代情報および第２の機能世代情報の他に、第３の機能世代情報をも比較して、最も新しい機能世代情報を判断し、情報更新手段は、第１の機能世代情報を、最も新しい機能世代情報に更新し、ソフトウェア更新手段は、最も新しい機能世代情報に対応するソフトウェアを用いて、メモリに記憶されているソフトウェアを更新することを特徴とする。
【００３０】
本発明の情報処理方法、記録媒体およびプログラムは、メモリに記憶されているソフトウェアの機能情報である第１の機能世代情報に基づいて、ネットワークを介して、情報提供装置に登録されているソフトウェアの機能情報である第２の機能世代情報を取得する取得ステップ（例えば、図１０のステップＳ３２）と、第１の機能世代情報および第２の機能世代情報を比較して、最も新しい機能世代情報を判断する比較判断ステップ（例えば、図１０のステップＳ３４）と、比較判断ステップの処理により第２の機能世代情報が第１の機能世代情報よりも新しいと判断された場合、第１の機能世代情報を、第２の機能世代情報に更新する情報更新ステップ（例えば、図１０のステップＳ３５）とを含むことを特徴とする。
【００３１】
以下、図を参照して本発明の実施の形態について説明する。
【００３２】
図１は、本発明を適用した情報提供システムの構成例を表している。インターネットに代表されるネットワーク２には、光ディスク３−１を着脱することができるＰＣ（パーソナルコンピュータ）１−１，光ディスク３−２を着脱することができるＰＣ１−２（以下、これらのＰＣおよび光ディスクを個々に区別する必要がない場合、単にＰＣ１および光ディスク３と称する）、および、ＰＣ１に対して、著作権管理機能付きの音楽コンテンツ配信サービス（ＥＭＤ（Ｅｌｅｃｔｒｏｎｉｃ  Ｍｕｓｉｃ  Ｄｉｓｔｒｉｂｕｔｉｏｎ））を提供するサーバ４が接続されている。この例においては、ＰＣが２台、サーバが１台のみ示されているが、ネットワーク２には、任意の台数のＰＣおよびサーバが接続される。
【００３３】
ＰＣ１は、インストール済みのアプリケーション１１を有している。アプリケーション１１は、サーバ４からＥＭＤのサービスの提供を受けるためのアプリケーションソフトウェアである。また、ＰＣ１は、アプリケーション１１のバージョンとは別に、アプリケーション１１の機能世代の情報を含むＵＤ（アップデート）情報ファイルを、ＵＤ（アップデート）情報レジストリ１２で管理している。機能世代とは、ある時点のサービスにおいて必要とされる暗号鍵、機能またはプロトコルなどの組み合わせをまとめて定義したものである。ＵＤ情報ファイルは、アプリケーション１１に固有のものではなく、ＰＣ１にアプリケーション１１と同様の暗号鍵、機能またはプロトコルなどの組み合わせの定義である機能世代を用いる他のアプリケーションにも共通の情報ファイルである。
【００３４】
ＵＤ情報レジストリ１２には、アプリケーション１１がＰＣ１にインストールされた時点において、アプリケーション１１に対して定義されていた機能世代の情報が管理されている。なお、いまの場合、ＰＣ１に、アプリケーション１１と同じ機能世代を用いるアプリケーションが複数あった場合、ＵＤ情報レジストリ１２に管理される情報は、複数のアプリケーションに対応するものとする。
【００３５】
また、機能世代は、例えば、暗号化方法の解読または暗号鍵の漏洩などによるセキュリティ上の問題やサービス要求に応じて、暗号鍵、機能またはプロトコルなどの組み合わせが変更されるたびにＥＭＤのサービス提供者により更新される。したがって、ＵＤ情報レジストリ１２において管理されるアプリケーション１１の機能世代の情報が、サーバ４が求める機能世代よりも古い機能世代の情報であった場合、ＰＣ１は、サーバ４からＥＭＤのサービスの提供を受けることができない。
【００３６】
また、ＰＣ１は、ＥＭＤのサービスの提供を受けるために、光ディスク３を着脱することができるようになっている。光ディスク３は、ＥＭＤ用のレーベルゲートＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）などの記録済み記録媒体などにより構成される。光ディスク３には、暗号化などの手段により著作権保護されたコンテンツとともに、それを読み出すためのアプリケーション１１を更新するためのセットアッププログラム１３とともに、ＵＤ情報ファイル１４が記録されている。ＵＤ情報ファイル１４は、セットアッププログラム１３が記録された時点において、アプリケーション１１に対して定義されていた機能世代の情報を有する。
【００３７】
ＰＣ１は、光ディスク３が装着されると、装着された光ディスク３から、ＵＤ情報ファイル１４を読み出し、セットアッププログラム１３の機能世代の情報を取得する。さらに、ＰＣ１は、ネットワーク２を介してサーバ４にアクセスし、サーバ４に登録されているアプリケーション１１を更新するためのセットアッププログラム１５の機能世代の情報が含まれるＵＤ情報ファイル１６を取得する。そして、ＰＣ１は、光ディスク３のＵＤ情報ファイル１４、サーバ４のＵＤ情報ファイル１６およびＵＤ情報レジストリ１２の機能世代の情報を比較し、最も新しい機能世代の情報を判断し、ＵＤ情報レジストリ１２の情報を、最も新しい機能世代のＵＤ情報ファイルの情報に更新する。また、ＰＣ１は、最も新しい機能世代に対応するセットアッププログラムを用いて、アプリケーションプログラム１１を更新する。なお、アプリケーション１１の更新においては、アプリケーション１１全体が更新されるのではなく、機能世代の情報を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけが更新される。
【００３８】
以上のようにして、アプリケーション１１の機能世代が、最新の機能世代に更新される。これにより、アプリケーション１１は、ユーザにより起動された場合、ＵＤ情報レジストリ１２の機能世代の情報を確認し、機能世代に基づいた暗号鍵、機能またはプロトコルなどの組み合わせを用いて、ネットワーク２を介して、サーバ４にアクセスし、ＥＭＤのサービスの提供を受ける。これにより、ＰＣ１においては、光ディスク３または記憶部２８（図２）に記録されているコンテンツなどを読み出すことができる。
【００３９】
サーバ４は、ＰＣ１がＥＭＤのサービスの提供を受けるためのアプリケーション１１のセットアッププログラム１５とともに、ＵＤ情報ファイル１６を有する。なお、このセットアッププログラム１５は、アプリケーション１１全体が更新されるのではなく、機能世代を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけを更新するものである。したがって、このセットアッププログラム１５を用いることにより、アプリケーション１１と同様の暗号鍵、機能またはプロトコルなどの組み合わせを用いる他のアプリケーションを更新することもできる。
【００４０】
サーバ４は、暗号化方法の解読または暗号鍵の漏洩などによるセキュリティ上の問題やサービス要求に応じて、暗号鍵、機能またはプロトコルなどの組み合わせを変更して、セットアッププログラム１５を更新し、それに伴って、ＵＤ情報ファイル１６の機能世代の情報を更新している。サーバ４は、ＵＤ情報レジストリ１２で管理されている情報に基づいて、ネットワーク２を介してアクセスしてきたＰＣ１に、ＵＤ情報ファイル１６を提供したり、セットアッププログラム１５を提供する。また、サーバ４は、ＰＣ１のユーザを予め登録しており、サーバ４は、適する機能世代の情報を有するアプリケーション１１を用いてアクセスしてきたＰＣ１に、ＥＭＤのサービスを提供する。
【００４１】
なお、図１においては、ＰＣ１にはすでにアプリケーション１１がインストールされているが、ＰＣ１にもアプリケーション１１用のセットアッププログラムとＵＤ情報ファイルが記録されており、アプリケーション１１のインストール時に、ＰＣ１、光ディスク３およびサーバ４のＵＤ情報ファイルの機能世代の情報を比較し、最新の機能世代の情報のセットアッププログラムをインストールするようにしてもよい。
【００４２】
図２は、ＰＣ１の構成を表している。図２において、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２２に記憶されているプログラム、または記憶部２８からＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２３にロードされたアプリケーション１１などのプログラムに従って各種の処理を実行する。ＲＡＭ２３にはまた、ＣＰＵ２１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【００４３】
ＣＰＵ２１、ＲＯＭ２２およびＲＡＭ２３は、バス２４を介して相互に接続されている。このバス２４にはまた、入出力インタフェース２５も接続されている。
【００４４】
入出力インタフェース２５には、キーボード、マウスなどよりなる入力部２６、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などよりなるディスプレイ、並びにスピーカなどよりなる出力部２７、ハードディスクなどより構成される記憶部２８、モデム、ターミナルアダプタなどより構成される通信部２９が接続されている。通信部２９は、インターネットやイントラネットなどのネットワーク２を介してサーバ４などとの通信処理を行う。
【００４５】
入出力インタフェース２５にはまた、ドライブ３０が接続され、光ディスク３が装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部２８にインストールされる。
【００４６】
なお、サーバ４も、ＰＣ１と基本的に同様に構成されている。したがって、以下の説明においては、図２のＰＣ１の構成は、サーバ４の構成としても引用する。
【００４７】
図３は、ＰＣ１のＵＤ情報レジストリ１２の構成を表している。図３の例の場合、ＵＤ情報レジストリ１２は、「バージョン」、「アップデートサーバ」、「アップデートサイト」、「アップデートチェック」および「アップデートダイアログ」の各レジストリキーにより構成される。
【００４８】
「バージョン」には、アプリケーション１１の機能世代のバージョン情報が登録される。アプリケーション１１のインストール時には、０が指定される。「アップデートサーバ」には、ＵＤ情報ファイルの取得先のサーバのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）情報が登録される。「アップデートサーバ」の情報は、アプリケーション１１がインストールされたときに登録される。いまの場合、ＵＤ情報ファイル１６が登録されているサーバ４のＵＲＬ情報が登録されている。
【００４９】
「アップデートサイト」には、アプリケーション１１を更新するセットアッププログラムを提供するサイトのページのＵＲＬ情報が登録される。いまの場合、セットアッププログラム１５を提供するサーバ４のサイトのページのＵＲＬ情報が登録されている。
【００５０】
「アップデートチェック」には、サーバ４から、次にＵＤ情報ファイル１６を取得する日時情報である、次回のアップデートチェック日時情報が登録される。「アップデートダイアログ」には、アプリケーション１１を起動したときに、機能世代を更新したことにより、アップデートが必要な情報がサーバ４にあることを示すアップデートダイアログの表示をＯＮするかＯＦＦするかのアップデートダイアログ表示情報が登録される。
【００５１】
ＰＣ１のＣＰＵ２１は、以上のようなＵＤ情報レジストリ１２に登録された情報に基づいて、サーバ４にネットワーク２を介してアクセスし、アプリケーション１１の機能世代、および、必要であればそのアプリケーション１１を更新する。
【００５２】
次に、図４を参照して、ＰＣ１のアプリケーション１１のセットアップ処理について説明する。なお、このセットアップ処理は、サーバ４のＥＭＤのサービスの提供を受けるために、光ディスク３がドライブ３０に装着されたときに実行される処理である。
【００５３】
ＰＣ１のユーザは、サーバ４のＥＭＤのサービスの提供を受けるために、光ディスク３をドライブ３０に装着する。ＣＰＵ２１は、ドライブ３０に光ディスク３が装着されるまで待機しており、光ディスク３が装着されたと判断した場合、ステップＳ２に進み、ドライブ３０を制御して、光ディスク３上に記録されているＵＤ情報ファイル１４を取得し、ステップＳ３に進む。
【００５４】
ＰＣ１のＵＤ情報レジストリ１２には、アプリケーション１１が初めにインストールされたときのＵＤ情報ファイルの情報が登録されている。そこで、ＣＰＵ２１は、ステップＳ３において、ＵＤ情報レジストリ１２の「アップデートサーバ」に基づいて、通信部２９を制御し、ネットワーク２を介して、サーバ４にアクセスさせ、サーバ４に登録されているＵＤ情報ファイル１６を取得させ、ステップＳ４に進む。
【００５５】
図５は、ＵＤ情報ファイル１６の構成例を示している。図５の例の場合、ＵＤ情報ファイル１６は、サーバ４に登録されているセットアッププログラム１５の機能世代を表す機能世代のバージョン、アップデートサイトのＵＲＬのデータサイズ、セットアッププログラム１５を提供しているアップデートサイト（ページ）のＵＲＬ、および、次のアップデートがあるか否かをチェックする（サービス提供者などにより設定される次の機能世代のアップデート予定日時）までの期間を表すアップデートチェック期間（いまの場合、日単位）により構成されている。
【００５６】
ここで、ＰＣ１は、サーバ４との通信において予め取り決められている所定の暗号鍵を有している。そこで、ＣＰＵ２１は、ステップＳ４において、所定の暗号鍵を用いて、サーバ４から取得されたＵＤ情報ファイル１６が改竄されているか否かを判断し、サーバ４から取得されたＵＤ情報ファイル１６が改竄されていないと判断した場合、ステップＳ５に進み、図６に示されるように、光ディスク３から取得されたＵＤ情報ファイル１４、サーバから取得されたＵＤ情報ファイル１６およびＵＤ情報レジスタ１２の「バージョン」の機能世代のバージョンを比較し、ステップＳ６に進み、サーバ４の機能世代のバージョンが他の機能世代のバージョンよりも新しいか否かを判断する。
【００５７】
図６は、セットアッププログラムとＵＤ情報ファイルのバージョンの組み合わせの例を示している。ＰＣ１のアプリケーション１１のバージョンは、「Ｖｅｒ．１．０」であり、ＵＤ情報レジストリ１２の機能世代のバージョンは、「Ｖｅｒ．１」である。光ディスク３のセットアッププログラム１３のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１４の機能世代のバージョンは、「Ｖｅｒ．２」である。サーバ４のセットアッププログラム１５のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１６の機能世代のバージョンは、「Ｖｅｒ．３」である。なお、ここで、セットアッププログラムのバージョンも、アプリケーションプログラムのバージョンを示すものとする。
【００５８】
図６の例に示されるように、アプリケーションのバージョンと機能世代のバージョンは、無関係であり、光ディスク３のセットアッププログラム１３と、サーバ４のセットアッププログラム１５のバージョンは、同じでも、暗号化方法の解読または暗号鍵の漏洩などによるセキュリティ上の問題やサービス要求に応じて、暗号鍵、機能またはプロトコルなどの組み合わせを変更して機能世代のバージョンのみが、ＵＤ情報ファイル１４の機能世代のバージョン「Ｖｅｒ．２」とＵＤ情報ファイル１６の機能世代のバージョン「Ｖｅｒ．３」に示されるように、更新されている。
【００５９】
したがって、図６の例においては、ＣＰＵ２１は、ステップＳ５において、ＵＤ情報ファイル１４の機能世代のバージョン「Ｖｅｒ．２」、ＵＤ情報ファイル１６の機能世代のバージョン「Ｖｅｒ．３」、およびＵＤ情報レジストリ１２の機能世代のバージョン「Ｖｅｒ．１」を比較し、ステップＳ６において、サーバ４の機能世代のバージョンが他の機能世代のバージョンよりも新しいと判断した場合、ステップＳ７に進み、サーバのＵＤ情報ファイル１６に基づいて、ＵＤ情報レジストリ１２の情報を更新（上書き）する。すなわち、ＵＤ情報ファイル１６の機能世代のバージョンを、ＵＤ情報レジストリ１２の「バージョン」に登録し、ＵＤ情報ファイル１６のアップデートチェック期間を、ＣＰＵ２１に内蔵されるクロックが示す時刻に足して、ＵＤ情報レジストリ１２の「アップデートチェック」に登録し、さらに、ＵＤ情報ファイル１６のアップデートサイトのＵＲＬを、ＵＤ情報レジストリ１２の「アップデートサイト」に登録して、ＵＤ情報レジストリ１２の情報を更新し、ステップＳ８に進む。
【００６０】
ＣＰＵ２１は、ステップＳ８において、ＵＤ情報レジストリ１２の「アップデートサイト」に基づいて、サーバ４にアクセスし、サーバ４のセットアッププログラム１５を用いて、アプリケーション１１を更新し、セットアップ処理を終了する。具体的には、ＣＰＵ２１は、通信部２９を制御し、サーバ４のＵＤ情報ファイル１６の「アップデートサイト」のＵＲＬに基づいて、ネットワーク２を介して、サーバ４のセットアッププログラム１５のアップデートサイトから、セットアッププログラム１５をダウンロードさせ、ダウンロードされたセットアッププログラム１５を用いて、アプリケーション１１における機能世代を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけを更新する。
【００６１】
ここで、ＰＣ１がアプリケーション１１と同じ機能世代を用いる他のアプリケーションを有している場合、他のアプリケーションにおける機能世代を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけが更新される。なお、このとき、同じセットアッププログラム１５を用いるようにしてもよいし、同じアップデートサイトに、他のアプリケーション用のセットアッププログラムが別に登録されており、それをセットアッププログラム１５と同時にダウンロードし、更新するようにしてもよい。
【００６２】
一方、ステップＳ４において、サーバ４から取得されたＵＤ情報ファイル１６が改竄されていると判断された場合、ＣＰＵ２１は、ステップＳ９に進み、図７に示されるように、光ディスク３から取得されたＵＤ情報ファイル１４およびＵＤ情報レジスタ１２にある機能世代のバージョンを比較し、ステップＳ１０に進み、光ディスク３の機能世代のバージョンがＰＣ１の機能世代のバージョンよりも新しいか否かを判断する。
【００６３】
図７は、セットアッププログラムとＵＤ情報ファイルのバージョンの組み合わせの他の例を示している。ＰＣ１のアプリケーション１１のバージョンは、「Ｖｅｒ．１．０」であり、ＵＤ情報レジストリ１２の機能世代のバージョンは、「Ｖｅｒ．１」である。光ディスク３のセットアッププログラム１３のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１４の機能世代のバージョンは、「Ｖｅｒ．２」である。サーバ４のセットアッププログラム１５のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１６の機能世代のバージョンは、「Ｖｅｒ．３」である。
【００６４】
図７の例の場合、図６の例と同様に、サーバ４のＵＤ情報ファイル１６の機能世代のバージョン「Ｖｅｒ．３」が一番新しいが、サーバ４のＵＤ情報ファイル１６は、ネットワーク２上において、改竄されたり、もしくは、なんらかの通信の失敗によりＰＣ１において取得されていない。したがって、ＰＣ１のＣＰＵ２１は、ステップＳ９において、ＵＤ情報ファイル１４の機能世代のバージョン「Ｖｅｒ．２」およびＵＤ情報レジストリ１２の機能世代のバージョン「Ｖｅｒ．１」を比較し、ステップＳ１０において、光ディスク３の機能世代のバージョン「Ｖｅｒ．２」がＰＣ１の機能世代のバージョン「Ｖｅｒ．１」よりも新しいと判断し、ステップＳ１１に進み、光ディスク３のＵＤ情報ファイル１４に基づいて、ＵＤ情報レジストリ１２の情報を更新（上書き）し、ステップＳ１２に進む。
【００６５】
ＣＰＵ２１は、ステップＳ１２において、ドライブ３０を制御し、光ディスク３のセットアッププログラム１３を読み出させ、読み出されたセットアッププログラム１３を用いて、アプリケーション１１を更新し、セットアップ処理を終了する。具体的には、ＣＰＵ２１は、ドライブ３０を制御し、光ディスク３のセットアッププログラム１３を読み出させ、読み出されたセットアッププログラム１３を用いて、アプリケーション１１における機能世代を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけを更新する。なお、セットアッププログラム１３の場合も、ＰＣ１がアプリケーション１１と同じ機能世代を用いる他のアプリケーションを有している場合、他のアプリケーションにおける機能世代を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけが更新される
【００６６】
また、ステップＳ６において、図８に示されるように、サーバ４の機能世代のバージョンが他の機能世代のバージョンよりも新しいと判断されなかった場合も、ステップＳ１０に進み、光ディスク３の機能世代のバージョンがＰＣ１の機能世代のバージョンよりも新しいか否かを判断する。
【００６７】
図８は、セットアッププログラムとＵＤ情報ファイルのバージョンの組み合わせの他の例を示している。ＰＣ１のアプリケーション１１のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報レジストリ１２の機能世代のバージョンは、「Ｖｅｒ．２」である。光ディスク３のセットアッププログラム１３のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１４の機能世代のバージョンは、「Ｖｅｒ．３」である。サーバ４のセットアッププログラム１５のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１６の機能世代のバージョンは、「Ｖｅｒ．３」である。
【００６８】
図８の例においては、光ディスク３のＵＤ情報ファイル１４の機能世代のバージョン「Ｖｅｒ．３」と、サーバ４のＵＤ情報レジストリ１６の機能世代のバージョン「Ｖｅｒ．３」は、同じバージョンである。したがって、図８の例の場合、ステップＳ６において、サーバ４の機能世代のバージョンが他の機能世代のバージョンよりも新しいと判断されず、ステップＳ１０において、光ディスク３の機能世代のバージョン「Ｖｅｒ．３」がＰＣ１の機能世代のバージョン「Ｖｅｒ．２」よりも新しいと判断され、ＣＰＵ２１は、ステップＳ１１に進み、光ディスク３のＵＤ情報ファイル１４に基づいて、ＵＤ情報レジストリ１２の情報を更新し、ステップＳ１２に進み、ドライブ３０を制御し、光ディスク３のセットアッププログラム１３を読み出させ、読み出されたセットアッププログラム１３を用いて、アプリケーション１１を更新し、セットアップ処理を終了する。
【００６９】
以上のように、光ディスク３のＵＤ情報ファイル１４の機能世代のバージョンと、サーバ４のＵＤ情報ファイル１６の機能世代のバージョンが同じ機能世代のバージョンであった場合、光ディスク３のセットアッププログラム１３を用いて、アプリケーション１１を更新するようにしたので、ネットワーク２上におけるデータ転送の負荷が軽減される。
【００７０】
一方、ステップＳ１０において、図９に示されるように、光ディスク３の機能世代のバージョンがＰＣ１の機能世代のバージョンよりも新しくないと判断された場合、ステップＳ１３に進み、ＣＰＵ２１は、ＵＤ情報レジストリ１２およびアプリケーション１１を更新せず、セットアップ処理を終了する。
【００７１】
図９は、セットアッププログラムとＵＤ情報ファイルのバージョンの組み合わせの他の例を示している。ＰＣ１のアプリケーション１１のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報レジストリ１２の機能世代のバージョンは、「Ｖｅｒ．２」である。光ディスク３のセットアッププログラム１３のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１４の機能世代のバージョンは、「Ｖｅｒ．２」である。サーバ４のセットアッププログラム１５のバージョンは、「Ｖｅｒ．１．１」であり、ＵＤ情報ファイル１６の機能世代のバージョンは、「Ｖｅｒ．２」である。
【００７２】
図９の例においては、ＰＣ１のＵＤ情報レジスタ１２の機能世代のバージョン「Ｖｅｒ．２」と、サーバ４のＵＤ情報ファイル１６の機能世代のバージョン「Ｖｅｒ．２」は、同じバージョンである。すなわち、ＵＤ情報ファイル１６の機能世代のバージョン「Ｖｅｒ．２」のみが一番新しいわけではないので、図８の例の場合、ステップＳ６において、サーバ４の機能世代のバージョンが他の機能世代のバージョンよりも新しいと判断されず、ステップＳ１０において、光ディスク３の機能世代のバージョン「Ｖｅｒ．２」がＰＣ１の機能世代のバージョン「Ｖｅｒ．２」よりも新しくはない（同じである）と判断され、ＣＰＵ２１は、ステップＳ１３に進み、ＵＤ情報レジストリ１２の情報およびアプリケーション１１を更新せず、セットアップ処理を終了する。
【００７３】
以上のように、光ディスク３から取得されたＵＤ情報ファイル１４、サーバから取得されたＵＤ情報ファイル１６およびＵＤ情報レジスタ１２にある機能世代のバージョンを比較し、その中で、機能世代のバージョンが最も新しいものを用いて、機能世代が更新され、さらに、必要であれば、アプリケーション１１の機能が更新される。これにより、ＰＣ１や光ディスク３に古い暗号鍵、機能またはプロトコルの組み合わせである機能世代が用いられたアプリケーション１１で、ネットワーク２を介して、サーバ４にアクセスすることができるので、サーバ４において、ＥＭＤの提供を拒否されることが抑制される。さらに、光ディスク３提供者は、光ディスク３に記録されたセットアッププログラム１３の機能世代が古くなっていても、常に新しい機能世代に更新する必要がなくなるため、コストがかかることが抑制される。
【００７４】
また、機能世代の情報をアプリケーションのバージョンとは別に管理するようにしたので、１つのアプリケーションを更新したときに、そのアプリケーションだけでなく、同じ機能世代を有する他のアプリケーションの機能世代も同時に更新することができる。これにより、ユーザのアプリケーション更新の手間が省ける。
【００７５】
以上のようにして、セットアップされたアプリケーション１１の更新チェック処理について、図１０のフローチャートを参照して説明する。なお、いまの場合、ＰＣ１は、アプリケーション１１の他に、アプリケーション１１と同じ機能世代を用いるアプリケーション５１を有しているとする。
【００７６】
図１１は、ＰＣ１のアプリケーション１１とアプリケーション５１の構成を示す。図１１の例の場合、アプリケーション１１は、アプリケーションのバージョンが「Ｖｅｒ．α」であり、２種類の暗号鍵「ｍ，ｍ＋１」を有しており、３種類の機能「Ａ，Ｂ，Ｃ」を有しているとする。アプリケーション５１は、アプリケーションのバージョンが「Ｖｅｒ．β」であり、２種類の暗号鍵「ｍ，ｍ＋１」を有しており、３種類の機能「Ａ，Ｂ，Ｃ」を有しているとする。
【００７７】
すなわち、各アプリケーションのバージョンは、異なっているが、同じ機能世代を有しているので、同じ暗号鍵および機能を有している。したがって、この場合、ＵＤ情報レジストリ１２は、２つのアプリケーションで共通とすることができる。なお、アプリケーションごとに、それぞれＵＤ情報レジストリを有するようにしてもよい。
【００７８】
図４を参照して上述したセットアップ処理において、ＰＣ１のＵＤ情報レジストリ１２の「アップデートチェック」には、次回のアップデートチェック日時情報が登録されている。したがって、ＣＰＵ２１は、図１０のステップＳ３１において、内蔵するクロックが示す時刻が、「アップデートチェック」の次回のアップデートチェック日時である（「アップデートチェック」の次回のアップデートチェック日時を示している）と判断するまで待機しており、クロックが示す時刻が、「アップデートチェック」の次回のアップデートチェック日時であると判断した場合、ステップＳ３２において、通信部２９を制御し、ＵＤ情報レジストリ１２の「アップデートサーバ」に基づいて、ネットワーク２を介して、サーバ４にアクセスさせ、サーバ４に登録されているＵＤ情報ファイル１６を取得させ、ステップＳ３３に進む。
【００７９】
ＣＰＵ２１は、ステップＳ３３において、所定の暗号鍵を用いて、サーバ４から取得されたＵＤ情報ファイル１６が改竄されているか否かを判断し、サーバ４から取得されたＵＤ情報ファイル１６が改竄されていると判断した場合、更新チェック処理を終了する。ステップＳ３３において、サーバ４から取得されたＵＤ情報ファイル１６が改竄されていないと判断した場合、ＣＰＵ２１は、ステップＳ３４に進み、サーバ４から取得されたＵＤ情報ファイル１６の機能世代のバージョンが、ＵＤ情報レジスタ１２にある機能世代のバージョンよりも新しいか否かを判断し、サーバ４の機能世代のバージョンがＵＤ情報レジスタ１２にある機能世代のバージョンより新しいと判断した場合、ステップＳ３５に進む。
【００８０】
ＣＰＵ２１は、ステップＳ３５において、ＵＤ情報ファイル１６に基づいて、ＵＤ情報レジストリ１２を更新（上書き）し、ステップＳ３６に進む。すなわち、ＵＤ情報ファイル１６の機能世代のバージョンを、ＵＤ情報レジストリ１２の「バージョン」に登録し、ＵＤ情報ファイル１６のアップデートチェック期間を、ＣＰＵ２１に内蔵されるクロックが示す時刻に足して、ＵＤ情報レジストリ１２の「アップデートチェック」に登録し、さらに、ＵＤ情報ファイル１６のアップデートサイトのＵＲＬを、ＵＤ情報レジストリ１２の「アップデートサイト」に登録して、ＵＤ情報レジストリ１２の情報を更新する。
【００８１】
ステップＳ３６において、ＣＰＵ２１は、ＵＤ情報レジストリ１２がＵＤ情報ファイル１６の機能世代に更新されたとき、アプリケーション１１および５１に、更新した機能世代で用いられる暗号鍵および機能があるか否かを判断する。
【００８２】
図１２は、機能世代の組み合わせの構成例を示す。図１１の例においては、機能世代のバージョンが「ｎ」のとき、暗号鍵「ｍ」および機能「Ａ、Ｂ」が使用される。機能世代のバージョンが「ｎ＋１」のとき、暗号鍵「ｍ＋１」および機能「Ａ、Ｂ、Ｃ」が使用される。
【００８３】
ここで、ステップＳ３５において、ＵＤ情報レジストリ１２の機能世代のバージョンが「ｎ」から「ｎ＋１」に更新されたとすると、ステップＳ３６において、アプリケーション１１および５１に、暗号鍵「ｍ＋１」と機能「Ｃ」があるか否かが判断される。図１１で上述したように、アプリケーション１１および５１に、すでに、暗号鍵「ｍ＋１」と機能「Ｃ」がある場合は、暗号鍵「ｍ＋１」と機能「Ｃ」を取得する必要がないので、ＣＰＵ１１は、更新チェック処理を終了する。
【００８４】
一方、アプリケーション１１および５１が、図１１と同じバージョン「Ｖｅｒ．α」および「Ｖｅｒ．β」であったとしても、アプリケーション１１または５１には、暗号鍵「ｍ」、機能「Ａ，Ｂ」しかなかった場合、ステップＳ３６において、アプリケーション１１または５１に、更新した機能世代で用いられる暗号鍵および機能がないと判断され、ＣＰＵ２１は、ステップＳ３７に進み、ＵＤ情報レジストリ１２の「アップデートダイアログ」をＯＮに設定し、更新チェック処理を終了する。これにより、アプリケーション１１または５１が起動されたときに、図１４を参照して後述する更新情報表示処理が実行される。
【００８５】
一方、ステップＳ３４において、サーバ４の機能世代のバージョンがＵＤ情報レジスタ１２にある機能世代のバージョンより新しくはないと判断された場合、ＣＰＵ２１は、ステップＳ３８に進み、ＵＤ情報ファイル１６のアップデートチェック期間を、ＣＰＵ２１に内蔵されるクロックが示す時刻に足して、ＵＤ情報レジストリ１２の「アップデートチェック」に更新（上書き）し、更新チェック処理を終了する。
【００８６】
以上のようにして、ＵＤ情報レジストリ１２に最も新しいＵＤ情報ファイル１６の情報が登録される。このＵＤ情報レジストリ１２の情報は、図１３を参照して後述するように、ユーザの操作に基づいて、アプリケーション１１または５１が起動されたときに使用される。
【００８７】
次に、図１３のフローチャートを参照して、アプリケーション１１の起動処理について説明する。なお、アプリケーション５１の起動処理の説明は繰り返しになるので省略するが、アプリケーション５１が起動されたときも同様の処理を実行する。
【００８８】
ユーザは、サーバ４からネットワーク２を介して、ＥＭＤのサービスの提供を受けるために、ＰＣ１の入力部２６を構成するマウスなどを操作して、アプリケーション１１を起動させる。
【００８９】
ＣＰＵ２１は、ステップＳ７１において、入力部２６からの入力信号に基づいて、アプリケーション１１が起動されるまで待機しており、アプリケーション１１が起動されたと判断した場合、ステップＳ７２に進み、図１４を参照して後述する更新情報表示処理を実行し、ステップＳ７３に進む。これにより、アプリケーションにおいて、ＵＤ情報レジストリ１２の機能世代に対応する機能が更新される。
【００９０】
ステップＳ７３において、ＣＰＵ２１は、ＵＤ情報レジストリ１２の機能世代を確認し、ステップＳ７４に進み、ＵＤ情報レジストリ１２の機能世代が、「ｎ」であるか否かを判断する。ステップＳ７４において、ＵＤ情報レジストリ１２の機能世代が、「ｎ」であると判断した場合、ＣＰＵ２１は、ステップＳ７５に進み、アプリケーション１１が用いる暗号鍵を「ｍ」に設定し、アプリケーション１１のＡ，Ｂの機能を動作可能にして、アプリケーション１１を起動させ、起動処理を終了する。
【００９１】
一方、ステップＳ７４において、ＵＤ情報レジストリ１２の機能世代が、「ｎ」ではないと判断した場合（いまの場合、ＵＤ情報レジストリ１２の機能世代が、「ｎ＋１」であると判断した場合）、ＣＰＵ２１は、ステップＳ７６に進み、アプリケーション１１が用いる暗号鍵を「ｍ＋１」に設定し、アプリケーション１１のＡ，Ｂ，Ｃの機能を動作可能にして、アプリケーション１１を起動させ、起動処理を終了する。
【００９２】
以上のようにして、アプリケーション１１は、ＵＤ情報レジストリ１２に基づいて、更新された機能世代に対応する暗号鍵、機能またはプロトコルなどの組み合わせを設定することができる。
【００９３】
次に、図１４を参照して、図１３のステップＳ７２における更新情報表示処理について説明する。
【００９４】
ＣＰＵ２１は、ステップＳ９１において、ＵＤ情報レジストリ１２の「アップデートサイト」に、アップデートサイトのＵＲＬが格納されているか否かを判断し、ＵＤ情報レジストリ１２の「アップデートサイト」に、アップデートサイトのＵＲＬが格納されていると判断した場合、ステップＳ９２に進む。ＣＰＵ２１は、ステップＳ９２において、ＵＤ情報レジストリ１２の「アップデートダイアログ」がＯＮであるか否かを判断し、ＵＤ情報レジストリ１２の「アップデートダイアログ」がＯＮであると判断した場合、すなわち、アプリケーション１１をＵＤ情報レジストリ１２の機能世代のバージョンにするために、必要なアップデート情報があるとし、ステップＳ９３に進み、出力部２７を構成するＬＣＤなどに、アップデート確認ダイアログを表示させる。
【００９５】
ユーザは、入力部２６を操作することによって、ＬＣＤのアップデート確認ダイアログに表示されるアプリケーション１１の更新ボタンまたはキャンセルボタンを選択する。ユーザの操作する入力部２６からの指示に基づいて、ＣＰＵ２１は、ステップＳ９４において、アプリケーション１１を更新するか否かを判断し、アプリケーション１１を更新すると判断した場合、ステップＳ９５に進む。
【００９６】
ＣＰＵ２１は、ステップＳ９５において、ＵＤ情報レジストリ１２の「アップデートダイアログ」をＯＦＦにし、ステップＳ９６に進む。ステップＳ９６において、ＣＰＵ２１は、記憶部２８などに記憶されているＷｅｂブラウザのプログラムを起動させ、ＵＤ情報レジストリ１２の「アップデートサイト」のＵＲＬ情報に基づいて、アップデートサイトのページを、出力部２７のＬＣＤに表示させる。アップデートサイトのページを確認したユーザは、入力部２６を構成するマウスなどを操作して、アプリケーション１１の更新を指示する。
【００９７】
これに対応して、ＣＰＵ２１は、ステップＳ９７において、サーバ４のセットアッププログラム１５を用いて、アプリケーション１１を更新し、セットアップ処理を終了する。具体的には、ＣＰＵ２１は、通信部２９を制御し、ネットワーク２を介して、サーバ４のセットアッププログラム１５のアップデートサイトから、セットアッププログラム１５をダウンロードさせ、ダウンロードしたセットアッププログラム１５を用いて、アプリケーション１１において、機能世代を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけを更新する。なお、このとき、アプリケーション５１の機能世代を構成する暗号鍵、機能またはプロトコルのうち、必要なものだけも更新される。
【００９８】
また、ＬＣＤのアップデート確認ダイアログには、次回、アップデートダイアログを表示させないようにするボタンが表示されている。ユーザは、次回、アップデートダイアログを表示させるか否かを、入力部２６を介して入力する。ＣＰＵ２１は、ステップＳ９４において、アプリケーション１１を更新しないと判断された場合、入力部２６からの入力信号に基づいて、ステップＳ９８において、アップデートダイアログを表示させないようにするボタンが選択されたか否かを判断し、アップデートダイアログを表示させないようにするボタンが選択されていると判断された場合、ステップＳ９９において、ＵＤ情報レジストリ１２の「アップデートダイアログ」をＯＦＦにし、更新情報表示処理を終了する。
【００９９】
ステップＳ９８において、アップデートダイアログを表示させないようにするボタンが選択されていないと判断された場合、ＣＰＵ２１は、ステップＳ９９の処理をスキップし、更新情報表示処理を終了する。
【０１００】
以上のように、アプリケーション１１の起動時に、アプリケーション１１をＵＤ情報レジストリ１２の機能世代のバージョンに対応するために、必要なアップデート情報がサーバ４にあることを、ユーザに通知することができる。これにより、ユーザは、常に、新しい機能世代に対応するように、アプリケーション１１の機能を新しい状態に保つことができる。
【０１０１】
以上のように、アプリケーションのバージョンとは別に、機能世代のバージョンを管理することにより、１つのアプリケーションに限らず、同じ暗号鍵、機能またはプロトコルなどの組み合わせの定義である機能世代を用いるアプリケーションであれば、１つのアプリケーションを更新するときに、同時に更新することができる。これにより、異なる機能世代が同じＰＣに存在することが抑制され、ユーザにとって、複数のアプリケーションの機能を更新する手間が省ける。
【０１０２】
また、アプリケーションのバージョンを更新しなくても、同じ暗号鍵、機能またはプロトコルなどの組み合わせ、または、音楽配信などのサービスの内容だけを更新することができる。さらに、アプリケーションに、複数の暗号鍵や複数の機能を予めセットアップしておき、例えば、機能世代ｎを有するユーザは、サービスＡを提供し、機能世代ｎ＋１を有するユーザには、サービスＡに付加価値をさらに付加したサービスＢを提供するなど、１つのアプリケーションにおいて、いろいろなサービスを提供することができる。
【０１０３】
なお、本実施の形態では、ＵＤ情報ファイルおよびセットアッププログラムが記録された光ディスク３を配布し、ＰＣ１においてＵＤ情報ファイルおよびセットアッププログラムを読み出すようにしたが、光ディスク３などのディスク状の記録媒体に限らず、磁気テープなどのテープ状の記録媒体や、半導体メモリなどを用いてＵＤ情報ファイルおよびセットアッププログラムを記録し、配布することも可能である。
【０１０４】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０１０５】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図２に示されるように、光ディスク３（ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）を含む）などよりなるパッケージメディア、または、プログラムが一時的もしくは永続的に格納されるＲＯＭ２２や、記憶部２８などにより構成される。
【０１０６】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１０７】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１０８】
【発明の効果】
以上の如く、本発明によれば、複数のアプリケーションにおいて、最新の機能を提供することができる。
【図面の簡単な説明】
【図１】本発明を適用した情報提供システムの構成例を示す図である。
【図２】図１のＰＣの構成例を示すブロック図である。
【図３】図１のＵＤ情報レジスタの構成例を示す図である。
【図４】図１のＰＣのセットアップ処理を説明するフローチャートである。
【図５】図１のＵＤ情報ファイルの構成例を示す図である。
【図６】図１の情報提供システムの他の構成例を示す図である。
【図７】図６の情報提供システムの他の構成例を示す図である。
【図８】図６の情報提供システムのさらに他の構成例を示す図である。
【図９】図６の情報提供システムの他の構成例を示す図である。
【図１０】図１のＰＣの更新チェック処理を説明するフローチャートである。
【図１１】図１のＰＣのアプリケーションの構成例を示す図である。
【図１２】図１のＰＣの機能世代の構成例を示す図である。
【図１３】図１のＰＣのアプリケーション起動処理を説明するフローチャートである。
【図１４】図１３のステップＳ７２の更新情報表示処理を説明するフローチャートである。
【符号の説明】
１−１，１−２  ＰＣ，２  ネットワーク，３−１，３−２  光ディスク，４  サーバ，１１−１，１１−２  アプリケーション，１２−１，１２−２  ＵＤ情報レジストリ，１３−１，１３−２  セットアッププログラム，１４−１，１４−２  ＵＤ情報ファイル，１５  セットアッププログラム，１６  ＵＤ情報ファイル，５１  アプケーション
【図１】
2004334465.tif 000003
【図２】
2004334465.tif 000004
【図３】
2004334465.tif 000005
【図４】
2004334465.tif 000006
【図５】
2004334465.tif 000007
【図６】
2004334465.tif 000008
【図７】
2004334465.tif 000009
【図８】
2004334465.tif 000010
【図９】
2004334465.tif 000011
【図１０】
2004334465.tif 000012
【図１１】
2004334465.tif 000013
【図１２】
2004334465.tif 000014
【図１３】
2004334465.tif 000015
【図１４】
2004334465.tif 000016