(57)【要約】【課題】様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる情報処理装置、アプリケーションソフトウェアのインストール方法、インストール処理プログラム、及びプログラムを記録した記録媒体を提供する。【解決手段】情報処理装置１００は、アプリケーションソフトウェアをインストールするインストーラを有する装置であって、前記インストーラが有する機能を実現するための所定の情報が定義された定義データ３１を保持する保持手段４１と、保持手段４１により保持されている定義データ３１を解釈し、解釈して得た前記所定の情報を基に、前記インストーラが有する機能を実現するための所定の処理を実行する実行手段４２と、実行手段４２に対して実行開始を指示し、前記インストーラが有する機能を制御する制御手段４３とを有することを特徴とする。【選択図】図３
2009110089.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションソフトウェアをインストールするインストーラを有する情報処理装置であって、
前記インストーラが有する機能を実現するための所定の情報が定義された定義データを保持する保持手段と、
前記保持手段により保持されている前記定義データを解釈し、解釈して得た前記所定の情報を基に、前記インストーラが有する機能を実現するための所定の処理を実行する実行手段と、
前記実行手段に対して実行開始を指示し、前記インストーラが有する機能を制御する制御手段とを有することを特徴とする情報処理装置。
【請求項２】
前記実行手段は、
前記保持手段により前記定義データとして保持されている、インストールを行う対象ファイルに関する情報が定義されたファイル情報定義データを解釈して得たファイル情報を基に、前記対象ファイルを操作することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記実行手段は、
前記アプリケーションソフトウェアがインストールされたときに、当該情報処理装置に記録されるインストール情報を基に、前記インストーラにより前記アプリケーションソフトウェアが当該情報処理装置にインストール済みか否かを判定し、判定結果に応じて、前記保持手段により前記定義データとして保持されている、前記インストーラの実行開始条件に関する情報が定義されたインストーラ情報定義データを解釈して得たインストーラ情報を基に、インストールの実行を開始することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記実行手段は、
前記保持手段により前記定義データとして保持されている、インストールの実行を許可する当該情報処理装置の環境条件に関する情報が定義された環境条件情報定義データを解釈して得た環境条件情報と、当該情報処理装置が有する環境情報とが一致するか否かを判定し、判定結果を基に、インストールの実行を許可するか否かを決定することを特徴とする請求項１ないし３のいずれか一項に記載の情報処理装置。
【請求項５】
前記実行手段は、
前記保持手段により前記定義データとして保持されている、インストール画面に関する情報が定義された画面情報定義データを解釈して得た画面情報を基に、前記インストール画面を生成することを特徴とする請求項１ないし４のいずれか一項に記載の情報処理装置。
【請求項６】
前記実行手段は、
前記保持手段により前記定義データとして保持されている、前記アプリケーションソフトウェアの機能設定に関する情報が定義された機能設定情報定義データを解釈して得た機能設定情報を基に、前記アプリケーションソフトウェアの機能設定を行うことを特徴とする請求項１ないし５のいずれか一項に記載の情報処理装置。
【請求項７】
前記定義データは、
構造化言語で記述されたデータであることを特徴とする請求項１ないし６のいずれか一項に記載の情報処理装置。
【請求項８】
アプリケーションソフトウェアをインストールするインストーラと、前記インストーラが有する機能を実現するための所定の情報が定義された定義データを保持する保持手段とを有する情報処理装置におけるインストール方法であって、
前記保持手段により保持されている前記定義データを解釈し、解釈して得た情報を基に、前記インストーラが有する機能を実現するための所定の処理を実行する実行手順と、
前記実行手順に対して実行開始を指示し、前記インストーラが有する機能を制御する制御手順とを有することを特徴とするインストール方法。
【請求項９】
アプリケーションソフトウェアをインストールするインストーラと、前記インストーラが有する機能を実現するための所定の情報が定義された定義データを保持する保持手段とを有する情報処理装置におけるインストール処理プログラムであって、
コンピュータに、
前記保持手段により保持されている前記定義データを解釈し、解釈して得た情報を基に、前記インストーラが有する機能を実現するための所定の処理を実行する実行手段と、
前記実行手段に対して実行開始を指示し、前記インストーラが有する機能を制御する制御手段として機能させるインストール処理プログラム。
【請求項１０】
請求項９に記載のインストール処理プログラムを記録した、コンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションソフトウェアをインストールするインストーラを有する情報処理装置、アプリケーションソフトウェアのインストール方法、インストール処理プログラム、及びインストール処理プログラムを記録する記録媒体に関するものである。
【背景技術】
【０００２】
ＰＣ（Personal Computer）が有する文書作成機能や電子メール機能、また印刷機能などは、各機能のアプリケーションソフトウェアを実行することで実現される。
【０００３】
例えば、特許文献１には、「カスタマイズツールにより、プリンタドライバインストール時に適用されるデフォルトの印刷設定を編集する」ことによって、印刷設定のデフォルト値をドライバがインストールされる環境に応じて編集することができるプリンタドライバが開示されている。
【０００４】
上記プリンタドライバは、ＯＳ（Operating System）が提供するインストールプログラム（以下、「インストーラ」という。）を用いて、プリンタドライバをインストールするためのインストール定義ファイルと、プリンタドライバ情報ファイルと、プリンタドライバなどのプログラムファイルとから構成されるインストールセットが、ＰＣが備える記憶装置の所定の記憶領域に格納される（インストールされる）。これによってユーザは、インストールされたプリンタドライバを用いて、ＰＣで作成・編集した文書データを外部の印刷機器によって印刷することができる。
【０００５】
一般的にインストーラは、アプリケーションソフトウェアをＰＣへインストールするとき、次に説明するような所定の処理工程を経て、アプリケーションソフトウェアの機能を実現するために必要なプログラムやデータなどのファイル群をインストールする。
【０００６】
まず、インストーラは、インストール処理の前段階として、（１）既にＰＣにアプリケーションソフトウェアがインストールされているか否かを確認する。インストーラは、まだインストールされていないことが確認された場合、（２）インストール実行を指示するユーザやインストール環境を確認し、インストール可能か（インストール後にアプリケーションソフトウェアが正常に動作可能か）否かを判断する。
【０００７】
次に、インストーラは、インストール条件や環境条件などの確認後、（３）アプリケーションソフトウェア機能を実現するために所定の処理を行うプログラムやデータなどのファイル群を、ＰＣが備える記録装置の所定の記憶領域に転送し格納する。
【０００８】
その後、インストーラは、インストール処理の後処理として、（４）インストール履歴の記録や、アプリケーションソフトウェアの初期の機能設定などを行う。
【０００９】
このように、インストーラは、所定の処理工程を経てアプリケーションソフトウェアのインストール処理を行っている。
【特許文献１】特開２００６−３０９７２６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上記インストーラの処理工程からも分かるように、従来のインストーラは、インストール対象であるアプリケーションソフトウェアごとに、行うべきインストール処理が異なる。
【００１１】
例えば、従来のインストーラでは、インストール対象であるアプリケーションソフトウェアによって、新規インストールを行うのか、再インストールを行うのか、アンインストールを行うのかを切り替える必要がある。また、インストール対象であるアプリケーションソフトウェアは、動作環境であるＰＣの環境や他のインストール済みアプリケーションソフトウェアに影響されるため、インストールするアプリケーションソフトウェアごとに動作環境を判断する必要がある。
【００１２】
更に、アプリケーションソフトウェアごとに、ＰＣが備える記憶装置に格納するプログラムやデータなどのファイル構成や、インストールしたアプリケーションソフトウェアの初期の機能設定などが異なる。
【００１３】
このように、従来のインストーラでは、上記に挙げるようなアプリケーションソフトウェアに依存する処理を実行するために、インストール対象であるアプリケーションソフトウェアごとに設計・開発しなければならないと言う問題点がある。
【００１４】
現在では、多様化するユーザのニーズに応えるために、様々なアプリケーションソフトウェアが、開発メーカー（以下、「ベンダ」という。）から提供されている。そのため、ベンダ側の開発者は、市場に投入するアプリケーションごとにインストーラを設計・開発しなければならず、その作業は開発者にとって多大な負担をとなり、その結果、ベンダは必要以上の開発コストをかけてしまう結果となる。
【００１５】
本発明では、上記従来技術の問題点に鑑み、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる情報処理装置、アプリケーションソフトウェアのインストール方法、インストール処理プログラム、及びインストール処理プログラムを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するため、本発明の情報処理装置は、アプリケーションソフトウェアをインストールするインストーラを有する情報処理装置であって、前記インストーラが有する機能を実現するための所定の情報が定義された定義データを保持する保持手段と、前記保持手段により保持されている前記定義データを解釈し、解釈して得た前記所定の情報を基に、前記インストーラが有する機能を実現するための所定の処理を実行する実行手段と、前記実行手段に対して実行開始を指示し、前記インストーラが有する機能を制御する制御手段とを有することを特徴とする。
【００１７】
また、上記目的を達成するため、本発明の情報処理装置は、前記実行手段が、前記保持手段により前記定義データとして保持されている、インストールを行う対象ファイルに関する情報が定義されたファイル情報定義データを解釈して得たファイル情報を基に、前記対象ファイルを操作することを特徴とする。
【００１８】
また、上記目的を達成するため、本発明の情報処理装置は、前記実行手段が、前記アプリケーションソフトウェアがインストールされたときに、当該情報処理装置に記録されるインストール情報を基に、前記インストーラにより前記アプリケーションソフトウェアが当該情報処理装置にインストール済みか否かを判定し、判定結果に応じて、前記保持手段により前記定義データとして保持されている、前記インストーラの実行開始条件に関する情報が定義されたインストーラ情報定義データを解釈して得たインストーラ情報を基に、インストールの実行を開始することを特徴とする。
【００１９】
また、上記目的を達成するため、本発明の情報処理装置は、前記実行手段が、前記保持手段により前記定義データとして保持されている、インストールの実行を許可する当該情報処理装置の環境条件に関する情報が定義された環境条件情報定義データを解釈して得た環境条件情報と、当該情報処理装置が有する環境情報とが一致するか否かを判定し、判定結果を基に、インストールの実行を許可するか否かを決定することを特徴とする。
【００２０】
また、上記目的を達成するため、本発明の情報処理装置は、前記実行手段が、前記保持手段により前記定義データとして保持されている、インストール画面に関する情報が定義された画面情報定義データを解釈して得た画面情報を基に、前記インストール画面を生成することを特徴とする。
【００２１】
また、上記目的を達成するため、本発明の情報処理装置は、前記実行手段が、前記保持手段により前記定義データとして保持されている、前記アプリケーションソフトウェアの機能設定に関する情報が定義された機能設定情報定義データを解釈して得た機能設定情報を基に、前記アプリケーションソフトウェアの機能設定を行うことを特徴とする。
【００２２】
また、上記目的を達成するため、本発明の情報処理装置は、前記定義データが、構造化言語で記述されたデータであることを特徴とする。
【００２３】
これによって、本発明の情報処理装置は、インストーラで行われる各処理工程を実現する機能プラグインモジュールが、インストール処理を実現するために機能プラグインモジュールの実行を制御する制御モジュールからの実行指示に従って、各処理工程の中で用いられるアプリケーションソフトウェアに依存する情報（例えば動作環境やファイルに関する情報など）を所定の形式で定義した定義データを読み込み、インストール処理を実行する構成としたことにより、インストールするアプリケーションソフトウェアに応じて定義データの内容を変更するだけでインストーラを準備することが可能となり、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる。
【００２４】
上記目的を達成するため、本発明のアプリケーションソフトウェアのインストール方法は、アプリケーションソフトウェアをインストールするインストーラと、前記インストーラが有する機能を実現するための所定の情報が定義された定義データを保持する保持手段とを有する情報処理装置におけるインストール方法であって、前記保持手段により保持されている前記定義データを解釈し、解釈して得た情報を基に、前記インストーラが有する機能を実現するための所定の処理を実行する実行手順と、前記実行手順に対して実行開始を指示し、前記インストーラが有する機能を制御する制御手順とを有することを特徴とする。
【００２５】
これによって、本発明のインストール方法は、インストーラで行われる各処理工程を実現する機能プラグインモジュールが、インストール処理を実現するために機能プラグインモジュールの実行を制御する制御モジュールからの実行指示に従って、各処理工程の中で用いられるアプリケーションソフトウェアに依存する情報（例えば動作環境やファイルに関する情報など）を所定の形式で定義した定義データを読み込み、インストール処理を実行することで、インストールするアプリケーションソフトウェアに応じて定義データの内容を変更するだけでインストーラを準備することが可能となり、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる。
【００２６】
上記目的を達成するため、本発明のアプリケーションソフトウェアのインストール処理プログラムは、アプリケーションソフトウェアをインストールするインストーラと、前記インストーラが有する機能を実現するための所定の情報が定義された定義データを保持する保持手段とを有する情報処理装置におけるインストール処理プログラムであって、コンピュータに、前記保持手段により保持されている前記定義データを解釈し、解釈して得た情報を基に、前記インストーラが有する機能を実現するための所定の処理を実行する実行手段と、前記実行手段に対して実行開始を指示し、前記インストーラが有する機能を制御する制御手段として機能させる。
【００２７】
これによって、本発明のインストール処理プログラムは、コンピュータを、インストーラで行われる各処理工程を実現する機能プラグインモジュールが、インストール処理を実現するために機能プラグインモジュールの実行を制御する制御モジュールからの実行指示に従って、各処理工程の中で用いられるアプリケーションソフトウェアに依存する情報（例えば動作環境やファイルに関する情報など）を所定の形式で定義した定義データを読み込み、インストール処理を実行するように機能させることができる。
【００２８】
よって、本発明のインストール処理プログラムでは、インストールするアプリケーションソフトウェアに応じて定義データの内容を変更するだけでインストーラを準備することが可能となり、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる。
【発明の効果】
【００２９】
本発明によれば、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる情報処理装置、アプリケーションソフトウェアのインストール方法、インストール処理プログラム、及びインストール処理プログラムを記録した記録媒体を提供することができる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の好適な実施の形態（以下、「実施形態」という。）について、図面を用いて詳細に説明する。
【００３１】
［第１の実施形態］
＜ハードウェア構成＞
まず、本実施形態に係る情報処理装置１００のハードウェア構成について、図１を用いて説明する。
【００３２】
［情報処理装置（端末）］
図１は、本発明の第１の実施形態に係る情報処理装置１００のハードウェア構成の一例を示す図である。
【００３３】
本実施形態に係る情報処理装置１００は、入力装置１０１と、表示装置１０２と、ドライブ装置１０３と、記録媒体１０４と、ＲＯＭ（Read Only Memory）１０５と、ＲＡＭ（Random Access Memory）１０６と、ＣＰＵ（Central Processing Unit）１０７と、インタフェース装置１０８と、ＨＤＤ（Hard Disk Drive）１０９とから構成され、それぞれバスで相互に接続されている。
【００３４】
入力装置１０１は、キーボード及びマウスなどで構成され、情報処理装置１００に各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイなどで構成され、例えば本実施形態では、インストール時の各処理工程の実行状況などを示す表示画面を表示する。インタフェース装置１０８は、情報処理装置１００をネットワークなどのデータ伝送路９０に接続するインタフェースである。情報処理装置１００は、インタフェース装置１０８を介してネットワークなどに接続される外部機器（例えばプリンタなど）とのデータ通信を行う。ＨＤＤ１０９は、基本ソフトウェアであるＯＳや、本実施形態に係るインストール処理プログラムによりインストールされた各種アプリケーションソフトウェアなどのプログラムやデータを格納している。また、ＨＤＤ１０９は、格納しているプログラムやデータを、所定のファイルシステムやＤＢ（Data Base）により管理している。
【００３５】
本実施形態に係るインストール処理プログラムは、例えばアプリケーションソフトウェアなどと同じように、ＣＤ（Compact Disk）などの記録媒体１０４によって情報処理装置１００に提供されるか、データ伝送路９０であるネットワークなどを通じてダウンロードされる。記録媒体１０４は、ドライブ装置１０３にセットされプログラムが記録媒体１０４からドライブ装置１０３を介してＨＤＤ１０９にインストールされる。
【００３６】
ＲＯＭ１０５は、情報処理装置１００が起動されるときに実行されるＢＩＯＳ（Basic Input/Output System）のプログラムやデータを格納している。ＲＡＭ１０６は、ＲＯＭ１０５やＨＤＤ１０９から読み出されたプログラムやデータを一時保持する。ＣＰＵ１０７は、ＲＡＭ１０６が一時保持しているプログラムを実行する。
【００３７】
情報処理装置１００は、上記ハードウェア構成により、例えば、ユーザがアプリケーションソフトウェアをインストールするときに、ＨＤＤ１０９からＲＡＭ１０６上に読み出されたインストール処理プログラムをＣＰＵ１０７により実行し、必要なプログラムやデータなどのファイルをＨＤＤ１０９の所定の記憶領域に転送し格納することで、当該情報処理装置１００内部にアプリケーションソフトウェアが動作可能な環境を構築する。
【００３８】
＜ソフトウェア構成＞
次に、本実施形態に係る情報処理装置１００のソフトウェア構成について、図２を用いて説明する。図２は、本発明の第１の実施形態に係る情報処理装置１００のソフトウェア構成の一例を示す図である。特に図２は、本実施形態に係るインストーラ（インストール処理プログラム）に関するソフトウェア構成の一例を示している。
【００３９】
［情報処理装置１００が有するインストーラ］
本実施形態に係るインストーラは、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを実現するために、主に、インストール機能を実現するために所定の処理を行うソフトウェア部品群Ａと、所定の処理を行うときに用いる所定の情報が定義されたデータファイル群Ｂとから構成され、ＲＡＭ１０６上に読み出されたプラグインモジュールのプログラムがＣＰＵ１０７により実行されＯＳ上で動作している。ここで言う「所定の処理」とは、例えば、インストールの前処理で行うインストール条件や動作環境条件の確認や、アプリケーションソフトウェアのプログラムやデータの格納などを意味し、「所定の情報」とは、例えば、インストールするアプリケーションの動作環境の条件や、アプリケーションのプログラムやデータなどの格納先情報などを意味している。
【００４０】
上記ソフトウェア部品群Ａは、インストール制御プラグイン２１（以下、「制御プラグイン２１」という。）と、複数のインストール機能プラグイン２２（以下、「機能プラグイン２２」という。）とから構成され、また、上記データファイル群Ｂは、各機能プラグイン２２に一意に対応付けられた複数の定義データ３１から構成されている。
【００４１】
本実施形態に係る制御プラグイン２１は、後述する各機能プラグイン２２に対して実行開始を指示し、各機能プラグイン２２が実行する所定の処理を制御することにより、インストール処理全体の機能を実現する。
【００４２】
また、本実施形態に係る複数の機能プラグイン２２は、当該情報処理装置１００にインストールされているアプリケーションソフトウェアを確認し、インストーラの動作種別（新規インストール／再インストール）を決定後、インストールを開始するインストール条件判定プラグイン２２aと、アプリケーションソフトウェアの動作環境である当該情報処理装置１００の環境を確認する環境条件判定プラグイン２２bと、インストールの各処理工程に応じて処理状況などを示すインストール画面を生成する画面生成プラグイン２２cと、アプリケーションソフトウェアのプログラムやデータなどを当該情報処理装置１００が備える記憶装置に格納するなどのファイル操作を行うファイル操作プラグイン２２dと、インストールしたアプリケーションソフトウェアの初期の機能設定を行う機能設定プラグイン２２eとから構成され、インストールの各処理工程に応じて、制御プラグイン２１の実行開始の指示に従い所定の処理を実行する。
【００４３】
本実施形態に係る定義データ３１は、インストーラの実行開始条件に関する情報が定義されたインストーラ情報定義データ３１aと、インストールの実行を許可する当該情報処理装置の環境条件に関する情報が定義された環境条件情報定義データ３１bと、インストール画面に関する情報が定義された画面情報定義データ３１cと、インストールを行う対象ファイルに関する情報が定義されたファイル情報定義データ３１dと、アプリケーションソフトウェアの機能設定に関する情報が定義された機能設定情報定義データ３１eとから構成され、インストールの各処理工程の中で用いられるアプリケーションソフトウェアに依存する情報が所定の形式で定義されている。ここで言う「所定の形式」とは、例えば、ＸＭＬ（Extensible Markup Language）などの構造化言語によるデータ形式を意味する。
【００４４】
本実施形態に係る情報処理装置１００には、上記ソフトウェア部品群Ａやデータファイル群Ｂがパッケージ化されたソフトウェアを、当該情報処理装置１００へインストールすることで、アプリケーションソフトウェアのインストール環境が構築される。
【００４５】
このように、本実施形態に係る情報処理装置１００では、インストールするときの各処理工程において用いる、インストール対象のアプリケーションソフトウェアに依存する情報を定義した上記データファイル群Ｂと、インストール処理において各アプリケーションソフトウェアに共通する処理を実行するソフトウェア部品群Ａにより、インストーラを構成することによって、インストールする各アプリケーションソフトウェアに応じて定義データ３１の内容を変更するだけで、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応することができる。また、インストールの各処理工程、すなわちインストーラが有する各機能を実現する機能プラグイン２２と、機能を実現するために用いられる情報が定義された定義データ３１とが一意に対応する構成から、インストーラが有する機能の追加や削除など、インストーラのカスタマイズを容易に行うことができる。
【００４６】
［インストール機能の実現方法］
本実施形態に係るインストーラでは、上記のようなソフトウェア構成を有し、以降に説明する方法によって、インストール機能を実現している。
【００４７】
まず、インストーラは、ユーザから起動され、アプリケーションソフトウェアのインストール指示を受け付けると、制御プラグイン２１により、各機能プラグイン２２に実行開始を指示し、インストール処理を制御する。
【００４８】
インストーラは、インストール条件判定プラグイン２２aにより、当該情報処理装置１００が記録しているインストール履歴を示す情報（以下、「インストール情報」という。）を基に、インストール対象であるアプリケーションソフトウェアが既にインストールされているか否かを判定する。インストール条件判定プラグ印２２aは、判定結果を基に、対応付けられたインストーラ情報定義データ３１aを読み込み、その結果得たインストーラ情報を基にインストールの動作種別を決定する。
【００４９】
次に、インストーラは、環境条件判定プラグイン２２bにより、対応付けられた環境条件情報定義データ３１bを読み込み、その結果得た環境条件情報から、当該情報処理装置１００の環境が、アプリケーションソフトウェアの動作環境として適切な環境か否かを判定する。環境条件判定プラグイン２２bは、判定結果を基に、インストール処理の実行を許可する。
【００５０】
インストーラは、上記インストールの前処理を行った後に、ファイル操作プラグイン３１dにより、対応付けられたファイル情報定義データ３１dを読み込み、その結果得たファイル情報を基に、アプリケーションソフトウェアのプログラムやデータなどのファイルを当該情報処理装置１００が備えるＨＤＤ１０９の記憶領域へ転送する。
【００５１】
最後に、インストーラは、インストールの後処理として、対応付けられた機能設定情報定義データ３１eを読み込み、その結果得た機能設定情報を基に、インストールしたアプリケーションソフトウェアの初期の機能設定を行い、インストール処理を終了する。
【００５２】
インストーラは、上記各処理工程を行う間、画面生成プラグイン２２cにより、インストール処理の実行状況を示すインストール画面を生成し、表示装置１０２の画面に表示する。
【００５３】
このように、本実施形態に係る情報処理装置１００では、上記インストール方法により、インストーラを用いてアプリケーションソフトウェアをインストールすることができる。
【００５４】
＜インストーラの機能カスタマイズと機能実行＞
次に、本実施形態に係る情報処理装置１００が有するインストーラの「インストール機能」を実現する各手段について、図３を用いて説明する。図３は、本発明の第１の実施形態に係る情報処理装置１００が有する機能を実現するため手段構成の一例を示す図である。
【００５５】
＜＜手段構成の概要＞＞
本実施形態に係る情報処理装置１００は、主に、定義データ３１を保持する保持手段４１と、インストーラが有する機能を実現するために所定の処理を実行する実行手段４２と、インストーラが有する機能を制御する制御手段４３とを有している。
【００５６】
以下に、上記各手段について簡単に説明する。
【００５７】
保持手段４１は、インストーラが有する機能を実現するための所定の情報が定義された定義データ３１、すなわち、インストーラ情報定義データ３１a、環境条件情報定義データ３１b、画面情報定義データ３１c、ファイル情報定義データ３１d、及び機能設定情報定義データ３１eの各種情報が所定の形式に従って定義されたデータファイルを保持する手段である。よって保持手段４１は、当該情報処理装置１００が備えるＨＤＤ１０９などの不揮発性の記憶装置である。
【００５８】
次に、実行手段４２は、保持手段４１により保持されている定義データ３１を解釈し、解釈して得た所定の情報を基に、インストーラが有する機能を実現するための所定の処理を実行する手段である。
【００５９】
更に実行手段４２は、インストーラ情報定義データ３１a及び環境条件情報定義データ３１bを読み込み当該情報処理装置１００におけるインストール条件を判定する条件判定手段４２aと、画面情報定義データ３１cを読み込みインストール画面を生成する画面生成手段４２bと、ファイル情報定義データ３１dを読み込みアプリケーションソフトウェアのプログラムやデータなどのファイル操作を行うファイル操作手段４２cと、機能設定情報定義データ３１eを読み込みアプリケーションソフトウェアの機能設定を行う機能設定手段４２dとを有している。
【００６０】
よって実行手段４２は、図２を用いて説明を行った各機能プラグイン２２、すなわち、インストール条件判定プラグイン２２a、環境条件判定プラグイン２２b、画面生成プラグイン２２c、ファイル操作プラグイン２２d、及び機能設定プラグイン２２eそれぞれが有する手段である。
【００６１】
次に、制御手段４３は、実行手段４２に対して実行開始を指示し、インストーラが有する機能を制御する手段である。すなわち、制御手段４３は、条件判定手段４２a、画面清栄手段４２b、ファイル操作手段４２c、及び機能設定手段４２dそれぞれに対して実行開始を指示し、インストールの各処理工程で行う処理を制御する。よって制御手段４３は、図２を用いて説明した制御プラグイン２１が有する手段である。
【００６２】
このように上記に挙げた各手段は、情報処理装置１００が有するインストーラのプログラムをＣＰＵ１０７により実行することで実現される。
【００６３】
＜＜インストール機能を実現する動作の概要＞＞
ここからは、本実施形態に係る情報処理装置１００において、上記に説明を行った各手段をどのように動作させることによって「インストール機能」を実現しているかについて、図４〜８を用いて具体的に説明する。
【００６４】
（動作１）インストール履歴の確認
本実施形態に係るインストーラは、まず、インストール履歴の確認を行うため、制御手段４３により実行手段４２の１つである条件判定手段４２aに対して実行開始を指示する。
【００６５】
条件判定手段４２aは、実行開始の指示を受け付けると、当該情報処理装置１００が備えるＨＤＤ１０９の所定の記憶領域に格納されているインストール情報を基に、インストーラにより既にアプリケーションソフトウェアがインストール済みか否かを判定する。条件判定手段４２aは、判定結果に応じて、保持手段４１により保持されているインストーラ情報定義データ３１aを解釈して得たインストーラ情報を基に、インストーラの動作種別を決定し、インストールの実行を開始する。
【００６６】
図４は、本発明の第１の実施形態に係るインストーラ情報定義データ３１aのデータ構成の一例を示す図である。
【００６７】
条件判定手段４２aは、インストール済みか否かの判定結果に応じて、図４に示すようなインストーラ情報定義データ３１aを読み込み、読み込んだデータを解釈可能なプログラムによって解釈し、インストールの実行を開始するために用いる情報を取得する。
【００６８】
図４に示すように、インストーラ情報定義データ３１aには、主に、インストール済みか否かの判定結果に応じたインストーラの動作種別がインストーラ情報として定義されている。具体的には、過去にアプリケーションソフトウェアのインストールが行われていないと判定された場合の動作種別に関する情報Ｒ１と、既にインストール済みであった場合の動作種別に関する情報Ｒ２とから構成されている。図４では、これらの情報がＸＭＬ形式で定義されたデータ構成例が示されており、＜NoInstall＞タグにより、過去にアプリケーションソフトウェアのインストールが行われていないと判定された場合の動作種別を、また、＜Install＞タグにより、既にインストール済みであった場合の動作種別を定義している。また、＜Install＞タグにより定義された情報Ｒ２には、更に、＜New＞タグにより、現在実行中のインストーラと同じ又は最新のインストーラでアプリケーションソフトウェアがインストールされている場合の動作種別に関する情報と、＜Old＞タグにより、現在実行中のインストーラより古いインストーラでアプリケーションソフトウェアがインストールされている場合の動作種別に関する情報とが定義されている。
【００６９】
例えば、条件判定手段４２aは、インストール済みか否かの判定結果に応じて、図４に示すようなインストーラ情報定義データ３１aを読み込むと、過去にアプリケーションソフトウェアのインストールが行われていないと判定された場合、ＸＭＬパーサによって読み込んだデータを解釈し、図４の＜NoInstall＞タグにより定義された文字列"Install"を取得する。一方、現在実行中のインストーラより古いインストーラによって既にインストール済みと判定された場合、図４の＜Install＞タグかつ＜Old＞タグにより定義された文字列"ReInstall"を取得する。
【００７０】
その結果、条件判定手段４２aは、判定結果に応じて取得した動作種別に関する情報が文字列"Install"の場合に、新規インストールの実行を開始する。また、文字列"ReInstall"の場合には、再インストールの実行を開始する。
【００７１】
このように、本実施形態に係るインストーラは、条件判定手段４２aにより、インストール対象であるアプリケーションソフトウェアが当該情報処理装置１００にインストール済みか否かを確認し、その結果に応じて新規インストール／再インストールのうち、最適な動作種別を決定し実行を開始する。
【００７２】
（動作２）動作環境（インストール環境）の確認
次に、インストーラは、アプリケーションソフトウェアの動作環境である当該情報処理装置１００の環境を確認するため、制御手段４３により実行手段４２の１つである条件判定手段４２aに対して実行開始を指示する。
【００７３】
条件判定手段４２aは、保持手段４１により保持されている環境条件情報定義データ３１bを解釈して得た環境条件情報と、既にインストールされているＯＳや他のアプリケーションソフトウェアに関する情報、また、インストールを行おうとしているユーザ情報などの当該情報処理装置１００の環境情報とが一致するか否かを判定する。条件判定手段４２aは、判定結果を基に、インストールの実行を許可するか否かを決定する。
【００７４】
図５は、本発明の第１の実施形態に係る環境条件情報定義データ３１bのデータ構成の一例を示す図である。
【００７５】
条件判定手段４２aは、図５に示すような環境条件情報定義データ３１bを読み込み、読み込んだデータをＸＭＬパーサによって解釈し、インストールの実行を許可するか否かを決定するために用いる情報を取得する。
【００７６】
図５に示すように、環境条件情報定義データ３１bには、主に、インストールの動作種別に応じたＯＳ、言語、及び権限に関する情報が環境条件情報として定義されている。具体的には、動作種別が新規インストールの場合のＯＳ、言語、及び権限に関する情報Ｒ３と、再インストールの場合のＯＳ、言語、及び権限に関する情報Ｒ４と、アンインストールの場合のＯＳ、言語、及び権限に関する情報Ｒ５とから構成されている。
【００７７】
図５では、図４に示したインストーラ情報定義データ３１aと同様に、これらの情報がＸＭＬ形式で定義されたデータ構成例が示されており、＜Install＞タグにより、動作種別が新規インストールの場合の環境条件を、また、＜ReInstall＞タグにより、再インストールの場合の環境条件を、更に、＜UnInstall＞タグにより、アンインストールの場合の環境条件を定義している。また、＜Install＞タグ、＜ReInstall＞タグ、及び＜UnInstall＞タグにより定義された情報Ｒ３、情報Ｒ４、及び情報Ｒ５には、更に、＜OS＞タグにより、当該情報処理装置１００にインストールされているＯＳに関する情報（以下、「ＯＳ情報」という。）が定義され、＜Lang＞タグにより、当該情報処理装置１００にインストールされたＯＳがサポートする言語に関する情報（以下、「言語情報」という。）が定義され、＜Power＞タグにより、インストール可能なユーザ権限に関する情報（以下、「権限情報」という。）が定義されている。
【００７８】
例えば、条件判定手段４２aは、図５に示すような環境条件情報定義データ３１bを読み込む。条件判定手段４２aは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"Install"又は"ReInstall"の場合に、ＸＭＬパーサによって読み込んだデータを解釈し、図５の＜Install＞タグ又は＜ReInstall＞タグ内に定義された環境情報を取得する。具体的には、＜OS＞タグにより定義されたＯＳ情報の文字列"2000,2003,XP"、＜Lang＞タグにより定義された言語情報の文字列"Japanese,English"、及び＜Power＞タグにより定義された権限情報の文字列"Administrator"を取得する。
【００７９】
また、条件判定手段４２aは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"UnInstall"の場合に、ＸＭＬパーサによって読み込んだデータを解釈し、図５の＜UnInstall＞タグ内に定義された環境情報を取得する。具体的には、＜Power＞タグにより定義された権限情報の文字列"Administrator"を取得する。
【００８０】
その結果、条件判定手段４２aは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"Install"又は"ReInstall"の場合に、環境条件情報定義データ３１bから取得したＯＳ情報（"2000,2003,XP"）、言語情報（"Japanese,English"）、及び権限情報（"Administrator"）の環境条件情報と、既にインストールされているＯＳや他のアプリケーションソフトウェアに関する情報、また、インストールを行おうとしているユーザ情報などの当該情報処理装置１００の環境情報とが一致するか否かを判定する。その結果、条件判定手段４２aは、判定結果が一致した場合に、インストールの実行を許可する。また、判定結果が不一致の場合は、インストールの実行を許可しない。
【００８１】
また、条件判定手段４２aは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"UnInstall"の場合に、環境条件情報定義データ３１bから取得した権限情報（"Administrator"）の環境条件情報と、インストールを行おうとしているユーザ情報などの当該情報処理装置１００の環境情報とが一致するか否かを判定する。その結果、条件判定手段４２aは、判定結果が一致した場合に、アンインストールの実行を許可する。また、判定結果が不一致の場合は、アンインストールの実行を許可しない。
【００８２】
このように、本実施形態に係るインストーラは、条件判定手段４２aにより、当該情報処理装置１００の環境がインストール対象であるアプリケーションソフトウェアの動作環境として適切か否かを確認し、その結果に応じて新規インストール／再インストール／アンインストールのうち、最適な動作種別の実行を許可する。
【００８３】
（動作３）インストール処理の状態通知
また、インストーラは、インストール処理において各処理工程に対応し、処理状態を示す所定の画面（以下、「インストール画面」という。）を表示装置１０２に表示するため、制御手段４３により実行手段４２の１つである画面生成手段４２bに対して実行開始を指示する。
【００８４】
画面生成手段４２bは、保持手段４１により保持されている画面情報定義データ３１cを解釈して得た画面情報を基に、インストール画面を生成する。
【００８５】
図６は、本発明の第１の実施形態に係る画面情報定義データ３１cのデータ構成の一例を示す図である。
【００８６】
画面生成手段４２bは、図６に示すような画面情報定義データ３１cを読み込み、読み込んだデータをＸＭＬパーサによって解釈し、各処理工程に対応したインストール画面を表示するために用いる情報を取得する。
【００８７】
図６に示すように、画面情報定義データ３１cには、主に、インストール処理の中で処理状態を示す各処理工程に対応したインストール画面に関する情報が画面情報として定義されている。具体的には、動作種別が新規インストールの場合の各処理工程に対応したインストール画面に関する情報Ｒ６と、再インストールの場合の各処理工程に対応したインストール画面に関する情報Ｒ７と、アンインストールの場合の各処理工程に対応したインストール画面に関する情報Ｒ８とから構成されている。
【００８８】
図６では、図４に示したインストーラ情報定義データ３１aと同様に、これらの情報がＸＭＬ形式で定義されたデータ構成例が示されており、＜Install＞タグにより、動作種別が新規インストールの場合の画面情報を、また、＜ReInstall＞タグにより、再インストールの場合の画面情報を、更に、＜UnInstall＞タグにより、アンインストールの場合の画面情報を定義している。また、＜Install＞タグ、＜ReInstall＞タグ、及び＜UnInstall＞タグにより定義された情報Ｒ６、情報Ｒ７、及び情報Ｒ８には、更に、＜ScreenX＞タグにより、処理工程ごとのインストール画面に関する情報（例えば、画面識別情報など。）が定義されている。
【００８９】
例えば、画面生成手段４２bは、図６に示すような画面情報定義データ３１cを読み込む。画面生成手段４２bは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"Install"の場合に、ＸＭＬパーサによって読み込んだデータを解釈し、図６の＜Install＞タグ内に定義された画面情報を取得する。具体的には、＜Screen1＞タグにより定義された１番目の処理工程に対応する画面識別情報の文字列"Welcome Setup"、＜Screen2＞タグにより定義された２番目の処理工程に対応する画面識別情報の文字列"Select Function"、＜Screen3＞タグにより定義された３番目の処理工程に対応する画面識別情報の文字列"Install Path"、＜Screen4＞タグにより定義された４番目の処理工程に対応する画面識別情報の文字列"Data Path"、＜Screen5＞タグにより定義された５番目の処理工程に対応する画面識別情報の文字列"Finish Setup"を取得する。
【００９０】
また、画面生成手段４２bは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"ReInstall"の場合に、ＸＭＬパーサによって読み込んだデータを解釈し、図６の＜ReInstall＞タグ内に定義された画面情報を取得する。具体的には、＜Screen1＞タグにより定義された画面識別情報の文字列"Welcome Setup"、＜Screen2＞タグにより定義された画面識別情報の文字列"Finish Setup"を取得する。
【００９１】
また、画面生成手段４２bは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"UnInstall"の場合に、ＸＭＬパーサによって読み込んだデータを解釈し、図６の＜UnInstall＞タグ内に定義された画面情報を取得する。具体的には、＜Screen1＞タグにより定義された画面識別情報の文字列"Welcome UnInstall"、＜Screen2＞タグにより定義された画面識別情報の文字列"Finish UnInstall"を取得する。
【００９２】
画面生成手段４２bでは、動作種別の各処理工程に対応するインストール画面の識別情報を取得し、取得した識別情報を基に、予めＨＤＤ１０９の所定の記録領域に格納しておいた画面データから、該当する画面データを読み出し、表示装置１０２に表示する。例えば、画面識別情報の文字列"Welcome Setup"は「アプリケーションのセットアップ起動」の画面データ、画面識別情報の文字列"Select Function"は「インストールする機能選択」の画面データ、画面識別情報の文字列"Install Path"は「インストールするパス設定」の画面データ、画面識別情報の文字列"Data Pathは「インストールするデータパス（ユーザのデータを保存するパス）設定」の画面データ、画面識別情報の文字列"Finish Setup"は「アプリケーションのセットアップ終了」の画面データ、画面識別情報の文字列"Welcome UnInstall"は「アプリケーションのアンインストール起動」の画面データ、画面識別情報の文字列"Finish UnInstall"は「アプリケーションのアンインストール終了」の画面データが対応付けられてＨＤＤ１０９に格納されている。
【００９３】
その結果、画面生成手段４２bは、「（動作１）インストール履歴の確認」において取得した動作種別が文字列"Install"、"ReInstall"又は"UnInstall"の場合に、画面情報定義データ３１cから取得した画面識別情報（"Welcome Setup"などの文字列）を基に、予めＨＤＤ１０９の所定の記録領域に格納しておいた画面データから、該当する画面データを読み出し、表示装置１０２に表示する。
【００９４】
このように、本実施形態に係るインストーラは、画面生成手段４２bにより、インストールの動作種別ごとの各処理工程に対応するインストール画面を表示装置１０２に表示する。
【００９５】
（動作４）プログラムやデータなどのファイル操作
次に、インストーラは、アプリケーションソフトウェアのプログラムやデータなどのファイル操作を行うため、制御手段４３により実行手段４２の１つであるファイル操作手段４２cに対して実行開始を指示する。
【００９６】
ファイル操作手段４２cは、条件判定手段４２aにより確認判定され、アプリケーションソフトウェアのインストール／再インストール／アンインストールが許可された場合に、保持手段４１により保持されているファイル情報定義データ３１dを解釈して得たファイル情報を基に、インストール／再インストール／アンインストールの動作種別に応じた対象ファイルの操作（転送／上書き／削除）を行う。
【００９７】
図７は、本発明の第１の実施形態に係るファイル情報定義データ３１dのデータ構成の一例を示す図である。
【００９８】
ファイル操作手段４２cは、図７に示すようなファイル情報定義データ３１dを読み込み、読み込んだデータをＸＭＬパーサによって解釈し、プログラムやデータなどのファイルを操作するために用いる情報を取得する。
【００９９】
図７に示すように、ファイル情報定義データ３１dには、主に、インストール対象であるアプリケーションソフトウェアのプログラムやデータなどのファイルに関する情報がファイル情報として定義されている。具体的には、アプリケーションソフトウェアの各ファイルに関する情報Ｒ９及び情報Ｒ１０から構成されている。
【０１００】
図７では、図４に示したインストーラ情報定義データ３１aと同様に、これらの情報がＸＭＬ形式で定義されたデータ構成例が示されており、＜FileX＞タグにより、操作を行うファイル情報を、インストール対象であるアプリケーションソフトウェアのファイルの数分定義している。また、＜FileX＞タグにより定義された情報Ｒ９及び情報Ｒ１０には、更に、＜ID＞タグにより、ファイルを識別する（一意に特定する）情報（以下、「ファイル識別情報」という。）が定義され、＜Name＞タグにより、ファイルの名称に関する情報（以下、「ファイル名情報」という。）が定義され、＜Ver＞タグにより、ファイルのバージョンに関する情報（以下、「バージョン情報」という。）が定義され、＜Lang＞タグにより、当該情報処理装置１００にインストールされたＯＳがサポートする言語情報が定義され、＜Path＞タグにより、ファイルの格納先に関する情報（以下、「格納先情報」という。）が定義されている。
【０１０１】
例えば、ファイル操作手段４２cは、図７に示すようなファイル情報定義データ３１dを読み込む。ファイル操作手段４２cは、「（動作２）動作環境（インストール環境）の確認」において確認判定し、アプリケーションソフトウェアのインストール／再インストールが許可された場合に、ＸＭＬパーサによって読み込んだデータを解釈し、図７の＜File1＞タグ内に定義されたファイル情報を取得する。具体的には、＜ID＞タグにより定義されたファイル識別情報の文字列"6A382EFEXXXXXXXX000F171A"、＜Name＞タグにより定義されたファイル名情報の文字列"AAA.dll"、＜Ver＞タグにより定義されたバージョン情報の文字列"1.0"、＜Lang＞タグにより定義された言語情報の文字列"Japanese"、及び＜Path＞タグにより定義された格納先情報の文字列"Targer-Newer"を取得する。また、＜File2＞タグにより定義された情報も、インストール対象であるアプリケーションソフトウェアのファイルとして定義されているファイルの数分、順に取得する。
【０１０２】
その結果、ファイル操作手段４２cは、「（動作２）動作環境（インストール環境）の確認」において確認判定し、アプリケーションソフトウェアのインストールが許可された場合に、ファイル情報定義データ３１dから取得したファイル情報（"AAA.dll"などの文字列）を基に、格納先情報に従って、当該情報処理装置１００が備えるＨＤＤ１０９の所定の記憶領域へ対象ファイルを転送する。また、再インストールが許可された場合は、所定の記憶領域に保持されている既存のファイルを上書きする。更に、アンインストールが許可された場合は、所定の記憶領域に保持されている既存のファイルを削除する。
【０１０３】
このように、本実施形態に係るインストーラは、ファイル操作手段４２cにより、アプリケーションソフトウェアのインストール／再インストール／アンインストールが許可された場合に、インストールの動作種別に応じて対象ファイルの操作を行う。
【０１０４】
（動作５）初期の機能設定
次に、インストーラは、インストール後のアプリケーションソフトウェアの機能設定を行うため、制御手段４３により実行手段４２の１つである機能設定手段４２dに対して実行開始を指示する。
【０１０５】
機能設定手段４２dは、条件判定手段４２aにより確認判定され、アプリケーションソフトウェアのインストール／再インストールが許可された場合に、保持手段４１により保持されている機能設定情報定義データ３１eを解釈して得た機能設定情報を基に、アプリケーションソフトウェアの初期の機能設定を行う。
【０１０６】
図８は、本発明の第１の実施形態に係る機能設定情報定義データ３１eのデータ構成の一例を示す図である。
【０１０７】
機能設定手段４２dは、図８に示すような機能設定情報定義データ３１eを読み込み、読み込んだデータをＸＭＬパーサによって解釈し、アプリケーションソフトウェアの機能設定を行うために用いる情報を取得する。
【０１０８】
図８に示すように、機能設定情報定義データ３１eには、主に、インストール後のアプリケーションソフトウェアの機能設定に関する情報が機能設定情報として定義されている。具体的には、アプリケーションソフトウェアの機能設定に関する情報Ｒ１１から構成されている。
【０１０９】
図８では、図４に示したインストーラ情報定義データ３１aと同様に、これらの情報がＸＭＬ形式で定義されたデータ構成例が示されており、＜OperationX＞タグにより、アプリケーションソフトウェアの機能設定を行う機能設定情報を、インストールしたときに設定を行う機能の数分定義している。
【０１１０】
例えば、機能設定手段４２dは、図８に示すような機能設定情報定義データ３１eを読み込む。機能設定手段４２dは、「（動作２）動作環境（インストール環境）の確認」において確認判定し、アプリケーションソフトウェアのインストール／再インストールが許可された場合に、ＸＭＬパーサによって読み込んだデータを解釈し、図８の＜Operation1＞タグ内に定義された機能設定情報（その１）の文字列"Registry"を、また、＜Operation2＞タグにより定義された機能設定情報（その２）の文字列"AuthenticationSetup"を取得し、インストール後にアプリケーションソフトウェアの初期設定を行う機能の数分、順に取得する。
【０１１１】
その結果、機能設定手段４２dは、「（動作２）動作環境（インストール環境）の確認」において確認判定し、アプリケーションソフトウェアのインストール／再インストールが許可された場合に、機能設定情報定義データ３１eから取得した機能設定情報（"Registry"の文字列）を基に、アプリケーションソフトウェアのインストールを当該情報処理装置１００が管理するレジストリ情報へ記録する。また、機能設定情報定義データ３１eから取得した機能設定情報（"AuthenticationSetup"の文字列）を基に、アプリケーションソフトウェアの認証情報を設定する。
【０１１２】
このように、本実施形態に係るインストーラは、機能設定手段４２dにより、アプリケーションソフトウェアのインストール／再インストールが許可された場合に、インストール後のアプリケーションソフトウェアの初期の機能設定を行う。
【０１１３】
これまでに説明を行ってきたように、本実施形態に係る情報処理装置１００は、インストーラで行われる各処理工程を実現する実行手段４２（機能プラグイン２２）が、インストール処理を実現するために各実行手段４２の実行を制御する制御手段４３（制御モジュール２１）からの実行指示に従って、各処理工程の中で用いられるアプリケーションソフトウェアに依存する情報（例えば動作環境やファイルに関する情報など）をＸＭＬなどの構造化言語で定義した定義データ３１を読み込み、インストール処理を実行する。
【０１１４】
よって、本実施形態に係る情報処理装置１００では、上記構成としたことにより、インストールするアプリケーションソフトウェアに応じて定義データ３１の内容を変更するだけでインストーラを準備することが可能となり、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる。
【０１１５】
＜処理手順＞
ここからは、上記に説明を行った本実施形態に係るインストーラが有する「インストール機能」の具体的な処理手順について図９〜１４を用いて説明する。以下に説明する処理手順は、情報処理装置１００にインストールされたインストーラのインストール処理プログラムがＣＰＵ１０７で実行されることにより処理される手順である。
【０１１６】
＜＜インストールの基本処理手順＞＞
図９は、本発明の第１の実施形態に係るインストーラの基本処理手順の一例を示すフローチャートである。
【０１１７】
本実施形態に係る情報処理装置１００は、ユーザから動作指示を受け付けると、インストーラが有する制御プラグイン２１により、各機能プラグイン２２が起動される。
【０１１８】
まず、起動されたインストール条件判定プラグイン２２が、アプリケーションソフトウェアのインストール履歴を確認するインストール条件判定処理を行う（ステップＳ１０１）。
【０１１９】
次に、環境条件判定プラグイン２２bが、インストールを行う環境の確認を行い、その結果を基にインストール許可の可否を決定する環境条件判定処理を行う（ステップＳ１０２）。
【０１２０】
次に、画面生成プラグイン２２cが、表示装置１０２の画面にインストール処理の実行状態を示す画面を表示する画面生成処理を行う（ステップＳ１０３）。
【０１２１】
次に、ファイル操作プラグイン２２dが、ＨＤＤ１０９の所定の記録領域に対してアプリケーションソフトウェアのプログラムやデータなどのファイルを操作するファイル操作処理を行う（ステップＳ１０４）。
【０１２２】
最後、機能設定プラグイン２２eが、インストール後のアプリケーションソフトウェアの機能を初期設定する機能設定処理を行う（ステップＳ１０５）。
【０１２３】
このように、本実施形態に係る情報処理装置１００は、インストーラにより各機能プラグイン２２が実行され、インストール処理の各処理工程が行われることによって、インストール機能をユーザへ提供している。
【０１２４】
次に、図９に説明を行った各機能プラグイン２２で行う詳細な処理手順について以下に説明する。
【０１２５】
＜＜インストール条件判定処理＞＞
図１０は、本発明の第１の実施形態に係るインストール条件判定処理の処理手順の一例を示すフローチャートである。図１０に示す処理手順は、図９で説明を行ったインストール条件判定プラグイン２２a（ステップＳ１０１）の処理手順の一例が示されている。
【０１２６】
本実施形態に係るインストール条件判定プラグイン２２aは、ユーザから受け付けた動作指示がアンインストールであるか否かを判定する（ステップＳ２０１）。
【０１２７】
アンインストールであった場合（ステップＳ２０１がＹＥＳの場合）は、処理を終了し次工程へ移行する。
【０１２８】
また、アンインストールでなかった場合（ステップＳ２０１がＮＯの場合）は、ＨＤＤ１０９の所定の記憶領域からＲＡＭ１０６上へロードされたインストーラ情報定義データ３１aを取得する（読み込む）（ステップ２０２）。
【０１２９】
次に、インストール条件判定プラグイン２２aは、当該情報処理装置１００が有するレジストリ情報を参照する（ステップＳ２０３）。
【０１３０】
インストール条件判定プラグイン２２aは、参照したレジストリ情報のインストール履歴の記録から、インストール／再インストールしようとしているアプリケーションソフトウェアがインストール済みか否かを判定する（ステップＳ２０４）。
【０１３１】
インストール済みの場合（ステップＳ２０４がＹＥＳの場合）は、更に、アプリケーションソフトウェアのインストールが、現在動作中のインストーラより古いバージョンのインストーラによって行われたか否かを判定する（ステップＳ２０５）。
【０１３２】
古いインストールによってインストールされている場合（ステップＳ２０５がＹＥＳの場合）は、読み込んだインストーラ情報定義データ３１aを、ＸＭＬパーサにより解釈し、インストール済みの場合（再インストール時）の定義情報（図４のインストータ情報定義データ３１aの場合には＜Install＞タグで定義されたインストーラ情報）を取得する（ステップＳ２０６）。
【０１３３】
その結果、インストール条件判定プラグイン２２aは、取得した定義情報から決定した動作種別に従って、再インストールの実行を開始する（ステップＳ２０７）。
【０１３４】
また、現在動作中のインストールと同じバージョンのインストーラによってインストールされている場合（ステップＳ２０５がＮＯの場合）は、処理を終了し次工程へ移行する。
【０１３５】
また、インストール条件判定プラグイン２２aは、インストール済みでない場合（ステップＳ２０４がＮＯの場合）、読み込んだインストーラ情報定義データ３１aを、ＸＭＬパーサにより解釈し、未インストールの場合（新規インストール時）の定義情報（図４のインストータ情報定義データ３１aの場合には＜NoInstall＞タグで定義されたインストーラ情報）を取得する（ステップＳ２０８）。
【０１３６】
その結果、インストール条件判定プラグイン２２aは、取得した定義情報から決定した動作種別に従って、新規インストールの実行を開始する（ステップＳ２０９）。
【０１３７】
＜＜環境条件判定処理＞＞
図１１は、本発明の第１の実施形態に係る環境条件判定処理の処理手順の一例を示すフローチャートである。図１１に示す処理手順は、図９で説明を行った環境条件判定プラグイン２２b（ステップＳ１０２）の処理手順の一例が示されている。
【０１３８】
本実施形態に係る環境条件判定プラグイン２２bは、前工程で行ったインストール条件判定プラグイン２２aにより決定した動作種別がインストール／再インストール、またユーザから受け付けた動作指示がアンインストールであるか否かを判定する（ステップＳ３０１）。
【０１３９】
インストール／再インストール／アンインストールのいずれの動作種別でなかった場合（ステップＳ３０１がＮＯの場合）は、処理を終了し次工程へ移行する。
【０１４０】
また、インストール／再インストール／アンインストールのいずれかの動作種別であった場合（ステップＳ３０１がＹＥＳの場合）は、ＨＤＤ１０９の所定の記憶領域からＲＡＭ１０６上へロードされた環境条件情報定義データ３１bを取得する（読み込む）（ステップ３０２）。
【０１４１】
次に、環境条件判定プラグイン２２bは、当該情報処理装置１００にインストールされたＯＳやサポート言語などの装置に関する情報や、現在実行指示しているログインユーザのユーザ情報などを参照する（ステップＳ３０３）。
【０１４２】
更に、環境条件判定プラグイン２２bは、読み込んだ環境条件情報定義データ３１bを、ＸＭＬパーサにより解釈し、各動作種別に対応する定義情報（図５の環境条件情報定義データ３１bの場合には＜OS＞タグで定義されたＯＳ情報、＜Lang＞タグで定義された言語情報、及び＜Power＞タグで定義された権限情報）を取得する（ステップＳ３０４）。
【０１４３】
環境条件判定プラグイン２２bは、動作種別がアンインストールか否かを判定する（ステップＳ３０５）。
【０１４４】
動作種別がアンインストールの場合（ステップＳ３０４がＹＥＳの場合）は、更に、ステップＳ３０３で取得したユーザ情報と、ステップＳ３０４で取得した権限情報とを比較し、比較結果に基づいて実行指示したログインユーザが管理者、すなわち実行権限者であるか否かを判定する（ステップＳ３０６）。
【０１４５】
ユーザ情報と権限情報とが一致しログインユーザが実行権限者であった場合（ステップＳ３０６がＹＥＳの場合）は、動作種別により指定されたアンインストールの実行を許可する（ステップＳ３０７）。
【０１４６】
また、ユーザ情報と権限情報とが不一致でログインユーザが実行権限者でなかった場合（ステップＳ３０６がＮＯの場合）は、動作種別により指定されたアンインストールの実行を許可しない（ステップＳ３０９）。
【０１４７】
また、環境条件判定プラグイン２２bは、動作種別がアンインストールでなかった場合（ステップＳ３０５がＮＯの場合）、ステップＳ３０３で取得した装置に関する情報と、ステップＳ３０４で取得したＯＳ情報及び言語情報とを比較し、比較結果に基づいて当該情報処理装置１００がインストール対象のアプリケーションソフトウェアの動作環境として適切か否かを判定する（ステップＳ３０８）。
【０１４８】
装置に関する情報とＯＳ情報及び言語情報とが一致し当該情報処理装置１００が適切な動作環境であった場合（ステップＳ３０８がＹＥＳの場合）は、ステップ３０６へ移行し、ログインユーザの実行権限を判定し（ステップＳ３０６）、実行権限者であった場合は、動作種別により指定されたインストール／再インストールの実行を許可する（ステップＳ３０７）。また、実行権限者でなかった場合は、インストール／再インストールの実行を許可しない（ステップＳ３０９）。
【０１４９】
また、環境条件判定プラグイン２２bは、装置に関する情報とＯＳ情報及び言語情報とが不一致で当該情報処理装置１００が適切な動作環境でなかった場合（ステップＳ３０８がＮＯの場合）、動作種別により指定されたインストール／再インストールの実行を許可しない（ステップＳ３０９）。
【０１５０】
＜＜画面生成処理＞＞
図１２は、本発明の第１の実施形態に係る画面生成処理の処理手順の一例を示すフローチャートである。図１２に示す処理手順は、図９で説明を行った画面生成プラグイン２２c（ステップＳ１０３）の処理手順の一例が示されている。
【０１５１】
本実施形態に係る画面生成プラグイン２２cは、環境条件判定プラグイン２２bにより、指定された動作種別が実行許可されたか否かを判定する（ステップＳ４０１）。
【０１５２】
指定された動作種別が実行許可されていない場合（ステップＳ４０１がＮＯの場合）には、例えば、指定された動作種別の実行許可がない（処理を行うことができない）旨を通知するエラー画面などを、表示装置１０２の画面に表示し処理を終了する。
【０１５３】
また、指定された動作種別が実行許可されている場合（ステップＳ４０１がＹＥＳの場合）には、ＨＤＤ１０９の所定の記憶領域からＲＡＭ１０６上へロードされた画面情報定義データ３１cを取得する（読み込む）（ステップ４０２）。
【０１５４】
次に、画面生成プラグイン２２cは、読み込んだ画面情報定義データ３１cを、ＸＭＬパーサにより解釈し、各動作種別に対応する定義情報（図６の画面情報定義データ３１cの場合には＜ScreenX＞タグで定義された各画面識別情報）を取得する（ステップＳ４０３）。
【０１５５】
画面生成プラグイン２２cは、動作種別がインストールであるか否かを判定する（ステップＳ４０４）。
【０１５６】
動作種別がインストールの場合（ステップＳ４０４がＹＥＳの場合）には、ステップＳ４０３で取得したインストール時の各処理工程に対応する画面識別情報を基に、ＨＤＤ１０９の所定の記憶領域に保持しておいた画面データから、該当する画面データを取得し、表示装置１０２の画面に表示する（ステップＳ４０５）。
【０１５７】
また、動作種別がインストールでない場合（ステップＳ４０４がＮＯの場合）には、更に、動作種別が再インストールか否かを判定する（ステップＳ４０６）。
【０１５８】
画面生成プラグイン２２cは、動作種別が再インストールの場合（ステップＳ４０６がＹＥＳの場合）、ステップＳ４０３で取得した再インストール時の各処理工程に対応する画面識別情報を基に取得した画面データを、表示装置１０２の画面に表示する（ステップＳ４０７）。
【０１５９】
また、動作種別が再インストールでない場合（ステップＳ４０６がＮＯの場合）には、動作種別がアンインストールであると判断し、ステップＳ４０３で取得したアンインストール時の各処理工程に対応する画面識別情報を基に取得した画面データを、表示装置１０２の画面に表示する（ステップＳ４０８）。
【０１６０】
画面生成プラグイン２２cは、上記ステップＳ４０４からステップＳ４０８までの各処理手順を、指定された動作種別の処理が終了（完了）するまで繰り返し行う（ステップＳ４０９がＮＯの場合の間）。
【０１６１】
画面生成プラグイン２２cは、動作種別の処理が終了すると（ステップＳ４０９がＹＥＳの場合）、各処理工程が正常に終了した旨を通知する終了画面を、表示装置１０２の画面に表示する（Ｓ４１０）。
【０１６２】
＜＜ファイル操作処理＞＞
図１３は、本発明の第１の実施形態に係るファイル操作処理の処理手順の一例を示すフローチャートである。図１３に示す処理手順は、図９で説明を行ったファイル操作プラグイン２２d（ステップＳ１０４）の処理手順の一例が示されている。
【０１６３】
本実施形態に係るファイル操作プラグイン２２dは、環境条件判定プラグイン２２bにより、指定された動作種別が実行許可されたか否かを判定する（ステップＳ５０１）。
【０１６４】
実行許可されていない場合（ステップＳ５０１がＮＯの場合）には処理を終了する。
【０１６５】
また、実行許可されている場合（ステップＳ５０１がＹＥＳの場合）には、ＨＤＤ１０９の所定の記憶領域からＲＡＭ１０６上へロードされたファイル情報定義データ３１dを取得する（読み込む）（ステップ５０２）。
【０１６６】
次に、ファイル操作プラグイン２２dは、読み込んだファイル情報定義データ３１dを、ＸＭＬパーサにより解釈し、アプリケーションソフトウェアのプログラムやデータなどのファイル情報（図７のファイル情報定義データ３１dの場合には＜FileX＞タグで定義された各ファイル情報）を取得する（ステップＳ５０３）。
【０１６７】
ファイル操作プラグイン２２dは、動作種別がインストールであるか否かを判定する（ステップＳ５０４）。
【０１６８】
動作種別がインストールの場合（ステップＳ５０４がＹＥＳの場合）には、新規インストールの動作種別に対応して、ステップＳ５０３で取得した各ファイル情報を基に、指定された格納先情報（図７のファイル情報定義データ３１dの場合には＜Path＞タグで定義された格納先情報）に従って、ＨＤＤ１０９の所定の記憶領域にプログラムやデータを転送する（ステップＳ５０５）。
【０１６９】
また、動作種別がインストールでない場合（ステップＳ５０４がＮＯの場合）には、更に、動作種別が再インストールか否かを判定する（ステップＳ５０６）。
【０１７０】
ファイル操作プラグイン２２dは、動作種別が再インストールの場合（ステップＳ５０６がＹＥＳの場合）、再インストールの動作種別に対応して、ステップＳ５０３で取得した各ファイル情報を基に、指定された格納先情報に従って、既にＨＤＤ１０９の所定の記憶領域に格納されているプログラムやデータを上書きする（ステップＳ５０７）。
【０１７１】
また、動作種別が再インストールでない場合（ステップＳ５０６がＮＯの場合）には、動作種別がアンインストールであると判断し、アンインストールの動作種別に対応して、ステップＳ５０３で取得した各ファイル情報を基に、指定された格納先情報に従って、既にＨＤＤ１０９の所定の記憶領域に格納されているプログラムやデータを削除する（ステップＳ５０８）。
【０１７２】
＜＜機能設定処理＞＞
図１４は、本発明の第１の実施形態に係る機能設定処理の処理手順の一例を示すフローチャートである。図１４に示す処理手順は、図９で説明を行った機能設定プラグイン２２e（ステップＳ１０５）の処理手順の一例が示されている。
【０１７３】
本実施形態に係る機能設定プラグイン２２eは、動作種別がアンインストールか否かを判定する（ステップＳ６０１）。
【０１７４】
動作種別がアンインストールの場合（ステップＳ６０１がＹＥＳの場合）には処理を終了する。
【０１７５】
また、動作種別がアンインストールでない場合（ステップＳ６０１がＮＯの場合）には、環境条件判定プラグイン２２cにより、指定された動作種別が実行許可されたか否かを判定する（ステップＳ６０２）。
【０１７６】
機能設定プラグイン２２eは、指定された動作種別が実行許可されていない場合（ステップＳ６０２がＮＯの場合）、処理を終了する。
【０１７７】
また、指定された動作種別が実行許可されている場合（ステップＳ６０２がＹＥＳの場合）には、ＨＤＤ１０９の所定の記憶領域からＲＡＭ１０６上へロードされた機能設定情報定義データ３１eを取得する（読み込む）（ステップ６０３）。
【０１７８】
次に、機能設定プラグイン２２eは、読み込んだ機能設定情報定義データ３１eを、ＸＭＬパーサにより解釈し、アプリケーションソフトウェアの初期の機能設定情報（図８の機能設定情報定義データ３１eの場合には＜OperationX＞タグで定義された各機能設定情報）を取得する（ステップＳ６０４）。
【０１７９】
機能設定プラグイン２２eは、ステップＳ６０４で取得した機能設定情報を基に、インストール後のアプリケーションソフトウェアの機能設定を行う（ステップＳ６０５）。
【０１８０】
機能設定プラグイン２２eは、上記ステップＳ６０５の処理手順を、インストール時に行う全ての機能を設定し終えるまで繰り返し行う（ステップＳ６０６がＮＯの場合の間）。
【０１８１】
このように、本実施形態に係る情報処理装置１００は、上記処理手順により実行されるインストーラを用いてアプリケーションソフトウェアをインストールする「インストール機能」をユーザへ提供している。
【０１８２】
＜まとめ＞
以上のように、本発明の第１の実施形態によれば、本実施形態に係る情報処理装置１００は、インストーラで行われる各処理工程を実現する機能プラグイン２２（実行手段４２）が、インストール処理を実現するために機能プラグイン２２の実行を制御する制御モジュール２１（制御手段４３）からの実行指示に従って、各処理工程の中で用いられるアプリケーションソフトウェアに依存する情報（例えば動作環境やファイルに関する情報など）を所定の形式（例えば構造化言語であるＸＭＬなど）で定義した定義データ３１を読み込み、インストール処理を実行する。
【０１８３】
これによって、本実施形態に係る情報処理装置１００は、インストールするアプリケーションソフトウェアに応じて定義データ３１の内容を変更するだけでインストーラを準備することが可能となり、様々なアプリケーションソフトウェアのインストール処理に対して容易に対応可能なインストーラを用いてアプリケーションソフトウェアをインストールすることができる。
【０１８４】
第１の実施形態に基づき本発明の説明を行ってきたが、本発明の実施形態に係る情報処理装置１００が有する「インストール機能」は、図９〜１４に示した各処理手順を、それぞれの動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムとしてコンピュータで実行することで実現することができる。よって、本発明の実施形態に係る情報処理装置１００が有するインストール処理プログラムは、コンピュータが読み取り可能な記憶媒体１０４に格納することができる。
【０１８５】
すなわち、インストール処理プログラムは、フロッピー（登録商標）ディスク、ＣＤ、ＤＶＤ（Digital Versatile Disk）などの記録媒体１０４に記憶させることによって、これらの記憶媒体１０４を読み取り可能なドライブ装置１０３に接続された記録媒体１０４から、当該情報処理装置１００にインストールすることができる。また、当該情報処理装置１００は、インタフェース装置１０８を有していることから、インターネットを用いてインストール処理プログラムをダウンロードし、インストールすることもできる。
【０１８６】
また、第１の実施形態では、インストール／再インストール／アンインストールの動作種別に対応するインストーラの説明を行ったが、本発明がこの内容に限定されるものではない。動作種別ごとに別のプログラムで構成することもできる。例えば、インストール／再インストールの動作種別に対応するプログラムと、アンインストールの動作種別に対応するプログラムとを別のモジュールで構成しても良い。
【０１８７】
また、第１の実施形態では、機能プラグイン２２と一意に対応付けられた定義データ３１について説明を行ったが、例えば、各機能プラグイン２２は、共通する定義データ３１を読み込む構成であっても良い。このとき読み込まれる定義データ３１は、構造化言語のタグによって各処理工程で用いる情報の範囲が定義されたデータ構成とし、構造化言語を解釈可能なプログラムによって、情報の範囲を定義したタグを基に、各処理工程で用いる情報だけを抽出する。
【０１８８】
最後に、上記各実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【図面の簡単な説明】
【０１８９】
【図１】本発明の第１の実施形態に係る情報処理装置のハードウェア構成の一例を示す図である。
【図２】本発明の第１の実施形態に係る情報処理装置のソフトウェア構成の一例を示す図である。
【図３】本発明の第１の実施形態に係る情報処理装置が有する機能を実現するため手段構成の一例を示す図である。
【図４】本発明の第１の実施形態に係るインストーラ情報定義データのデータ構成の一例を示す図である。
【図５】本発明の第１の実施形態に係る環境条件情報定義データのデータ構成の一例を示す図である。
【図６】本発明の第１の実施形態に係る画面情報定義データのデータ構成の一例を示す図である。
【図７】本発明の第１の実施形態に係るファイル情報定義データのデータ構成の一例を示す図である。
【図８】本発明の第１の実施形態に係る機能設定情報定義データのデータ構成の一例を示す図である。
【図９】本発明の第１の実施形態に係るインストーラの基本処理手順の一例を示すフローチャートである。
【図１０】本発明の第１の実施形態に係るインストール条件判定処理の処理手順の一例を示すフローチャートである。
【図１１】本発明の第１の実施形態に係る環境条件判定処理の処理手順の一例を示すフローチャートである。
【図１２】本発明の第１の実施形態に係る画面生成処理の処理手順の一例を示すフローチャートである。
【図１３】本発明の第１の実施形態に係るファイル操作処理の処理手順の一例を示すフローチャートである。
【図１４】本発明の第１の実施形態に係る機能設定処理の処理手順の一例を示すフローチャートである。
【符号の説明】
【０１９０】
２１  インストール制御プラグイン（ソフトウェア部品）
２２  インストール機能プラグイン（ソフトウェア部品）
３１  定義データ
３１a  インストーラ情報定義データ
３１b  環境条件情報定義データ
３１c  画面情報定義データ
３１d  ファイル情報定義データ
３１e  機能設定情報定義データ
４１  保持手段
４２  実行手段
４２a  条件判定手段
４２b  画面生成手段
４２c  ファイル操作手段
４２d  機能設定手段
４３  制御手段
１００  情報処理装置
１０１  入力装置
１０２  表示装置
１０３  ドライブ装置
１０４  記録媒体
１０５  ＲＯＭ
１０６  ＲＡＭ
１０７  ＣＰＵ
１０８  インタフェース装置
１０９  ＨＤＤ
【図１】
2009110089.tif 000003
【図２】
2009110089.tif 000004
【図３】
2009110089.tif 000005
【図４】
2009110089.tif 000006
【図５】
2009110089.tif 000007
【図６】
2009110089.tif 000008
【図７】
2009110089.tif 000009
【図８】
2009110089.tif 000010
【図９】
2009110089.tif 000011
【図１０】
2009110089.tif 000012
【図１１】
2009110089.tif 000013
【図１２】
2009110089.tif 000014
【図１３】
2009110089.tif 000015
【図１４】
2009110089.tif 000016