(57)【要約】      （修正有）【課題】短時間で複数のプログラムをインストールできるプログラムのインストール装置を提供する。【解決手段】複数のプログラム３１，３３，３４，３５をインストールするためのプログラムのインストール装置において、前記複数のプログラム３１，３３，３４，３５を時分割で並行してインストールするインストール手段と、前記インストール手段がインストール動作をしているときに、あるプログラムの初期値を設定する設定手段と、前記あるプログラムがインストールされたことを検出するインストール検出手段と、前記インストール検出手段の検出結果に基づいて、前記設定手段が設定した初期値を取得する初期値取得手段と、前記初期値取得手段が取得した初期値を他のプログラムの初期値に反映する初期値反映手段と、を設ける。【選択図】図２
2008152762.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラムをインストールするためのプログラムのインストール装置において、
前記複数のプログラムを時分割で並行してインストールするインストール手段と、
前記インストール手段がインストール動作をしているときに、あるプログラムの初期値を設定する設定手段と、
前記あるプログラムがインストールされたことを検出するインストール検出手段と、
前記インストール検出手段の検出結果に基づいて、前記設定手段が設定した初期値を取得する初期値取得手段と、
前記初期値取得手段が取得した初期値を他のプログラムの初期値に反映する初期値反映手段と、を有すること
を特徴とするプログラムのインストール装置。
【請求項２】
請求項１に記載するプログラムのインストール装置において、
前記あるプログラムは、デバイスドライバであり、
前記他のプログラムは、コンポーネントプログラムであること
を特徴とするプログラムのインストール装置。
【請求項３】
請求項１又は請求項２に記載するプログラムのインストール装置において、
前記あるプログラムの初期値は、他の装置にデータを出力する出力ポートであること
を特徴とするプログラムのインストール装置。
【請求項４】
インストール装置に複数のプログラムをインストールさせるためのインストールプログラムにおいて、
複数のプログラムを時分割で並行してインストールしているときに、あるプログラムの初期値を取得し、その取得した初期値を他のプログラムに反映すること
を特徴とするインストールプログラム。
【請求項５】
請求項４に記載するインストールプログラムを格納することを特徴とするプログラム記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のプログラムをインストールするためのプログラムのインストール装置に関する。
【背景技術】
【０００２】
従来より、複数のプログラムをインストールするためのプログラムのインストール装置としては、例えば、特許文献１に記載されるものがある。各プログラムは、複数のコンポーネントプログラムで構成されている。特許文献１に記載されるプログラムのインストール装置は、プリンタ用デバイスドライバを構成する複数のコンポーネントプログラム（ステータスモニタ、プリンタドライバ、ドキュメントファイル、ユーティリティ）をインストールするものである。そのインストール方法には、フルインストールと用途別インストールとカスタムインストールとがあり、選択されたインストール方法に基づいてインストーラがドライバからプログラムをインストールする。
【０００３】
すなわち、フルインストールが選択された場合には、用途にかかわらず、複数のコンポーネントプログラム及びパラメータを全部インストールする。この場合、パラメータの値には初期値が設定される。
用途別インストールが選択された場合には、用途別に必要なプログラム（例えば、プリンタドライバ）及びパラメータのみをインストールする。この場合、パラメータの値には初期値が設定される。
カスタムインストールが選択された場合には、オペレータが定義したパラメータ定義ファイルの値に従って、プログラム及びパラメータをインストールする。
【０００４】
従って、従来のプログラムのインストール装置によれば、使用目的に合ったパラメータをインストール時に設定することができ、使い勝手がよい。
【０００５】
【特許文献１】特開２００４−３８５３３号公報（段落００２５〜００２８及び図１２参照）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来のプログラムインストール装置は、フルインストール、用途別インストール、カスタムインストールの何れの場合においても、複数のコンポーネントのインストールをシリアルに行っており、各インストール動作の中で生じる空き時間を有効に活用できていなかった。また、各インストール動作毎に初期値を設定していたため、同じ設定値を繰り返し設定する必要が生じていた。よって、従来のプログラムインストール装置は、インストールに時間がかかっていた。
【０００７】
そこで、本発明は、上記問題点を解決するためになされたものであり、短時間で複数のプログラムをインストールできるプログラムのインストール装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係るプログラムのインストール装置は、次のような構成を有している。
（１）複数のプログラムをインストールするためのプログラムのインストール装置において、前記複数のプログラムを時分割で並行してインストールするインストール手段と、前記インストール手段がインストール動作をしているときに、あるプログラムの初期値を設定する設定手段と、前記あるプログラムがインストールされたことを検出するインストール検出手段と、前記インストール検出手段の検出結果に基づいて、前記設定手段が設定した初期値を取得する初期値取得手段と、前記初期値取得手段が取得した初期値を他のプログラムの初期値に反映する初期値反映手段と、を有する。
【０００９】
尚、複数のプログラムとは、あるプログラムを構成する複数のコンポーネントプログラムをいう。コンポーネントプログラムには、デバイスドライバやプログラム、ファイルなど、プログラムを構成するコンポーネントの全てを含む。例えば、ステータスモニタ、プリンタドライバ、ドキュメントファイル、ユーティリティは、プリンタ用デバイスドライバを構成するコンポーネントプログラムである。
【００１０】
（２）（１）に記載の発明において、前記あるプログラムは、デバイスドライバであり、前記他のプログラムは、コンポーネントプログラムである。
【００１１】
（３）（１）又は（２）に記載の発明において、前記あるプログラムの初期値は、他の装置にデータを出力する出力ポートである。
【００１２】
（４）インストール装置に複数のプログラムをインストールさせるためのインストールプログラムにおいて、複数のプログラムを時分割で並行してインストールしているときに、あるプログラムの初期値を取得し、その取得した初期値を他のプログラムに反映する。
【００１３】
（５）（４）に記載のインストールプログラムを格納するプログラム記憶媒体である。
【発明の効果】
【００１４】
上記構成を有する発明は、複数のプログラム（例えば、ステータスモニタ、プリンタドライバ、ドキュメントファイル、ユーティリティ）を時分割で並行してインストールするときに、あるプログラム（例えばプリンタドライバ）の初期値を設定手段に設定し、あるプログラム（例えばステータスモニタ）のインストールがされたときに、設定手段に設定した値（例えばプリンタドライバの初期値）を取得して他のプログラム（例えばステータスモニタ）の初期値に反映させる。そのため、複数のプログラム（例えば、ステータスモニタ、プリンタドライバ、ドキュメントファイル、ユーティリティ）をシリアルにインストールし、各プログラムをインストールする度に当該プログラムの初期値を設定させる場合と比べて、短時間で複数のプログラム（例えば、ステータスモニタ、プリンタドライバ、ドキュメントファイル、ユーティリティ）をインストールすることができる。
【００１５】
特に、あるプログラムがデバイスドライバであり、他のプログラムがコンポーネントプログラムである場合には、基本となるデバイスドライバの初期値をコンポーネントプログラムに自動的に反映させることができ、使い勝手がよい。
尚、デバイスドライバは、制御対象物（ハードウエア資源及びソフトウエアを含む。）を制御するためのプログラムであり、例えば、プリンタを制御するためのプリンタドライバを含む。また、コンポーネントプログラムは、デバイスドライバの制御対象物に関連するプログラムであり、例えば、プリンタに関連するステータスモニタを含む。
【００１６】
また、あるプログラムの初期値が、他の装置にデータを出力する出力ポートである場合には、他の装置との間でデータ送受信を行うために他のプログラムで同じ出力ポートを繰り返し設定する必要がなくなり、インストール時間を短縮できる上に、使い勝手が良い。
【発明を実施するための最良の形態】
【００１７】
次に、本発明に係るプログラムのインストール装置の一実施の形態について図面を参照して説明する。
【００１８】
＜ハードウエア構成＞
本実施形態のプログラムのインストール装置１は、例えば、周知のパーソナルコンピュータ（以下「パソコン」という。）によって構成される。プログラムのインストール装置１のハードウエア構成を簡単に説明すると、ＣＰＵ（Central Processing Unit）２に入
出力インターフェース（以下「入出力Ｉ／Ｆ」という。）３と、ＲＯＭ（Read Only Memory）４と、ＲＡＭ（Random Access Memory）５と、ＨＤＤ（Hard Disk Drive）６が接続している。また、ＣＰＵ２には、読取部７と、操作部８と、表示部９とが接続している。
【００１９】
ＣＰＵ２は、制御やデータの加工・演算を行うものである。
入出力Ｉ／Ｆ３は、出力ポート１０を介してＬＡＮ１１に接続され、ＬＡＮ１１を介してプリンタ１２やパソコン１３等との間でデータを入出力するものである。
ＲＯＭ４は、読み出し専用の不揮発性メモリであって、各種データやプログラムを記憶している。
ＲＡＭ５は、読み書き可能な揮発性メモリであって、プログラム実行時にデータやプログラムを記憶する。
ＨＤＤ６は、ハードディスクに読み書き可能な外部記憶装置であって、各種データやプログラムを記憶する。
【００２０】
読取部７は、「プログラム記憶媒体」としての、例えば、ＣＤ−ＲＯＭ１４からプログラムやデータ等を読み取るものである。プログラム記憶媒体は、プログラムやデータを記憶できる記憶媒体であれば、フロッピー（登録商標）ディスク等であってもよい。
操作部８は、各種データを入力するものである。本実施形態では、操作部８はキーボードとマウスにより構成される。
表示部９は、データを表示するものである。本実施形態では、表示部９は液晶ディスプレイにより構成される。
【００２１】
＜機能ブロック構成＞
次に、プログラムのインストール装置１の機能について図２を参照して説明する。図２は、プログラムのインストール装置１の機能ブロック図である。
プログラムのインストール装置１は、ＨＤＤ６に記憶するインストーラを実行して、コンポーネントプログラムをＨＤＤ６に順次取得する。
【００２２】
本実施形態のプログラムのインストール装置１は、インストーラとして、インストーラメインプログラム２１と、プリンタドライバインストール監視プログラム２２と、プリンタドライバインストーラプログラム２３とを、ＨＤＤ６に記憶している。
【００２３】
インストーラメインプログラム２１は、複数のプログラムを時分割で並行してインストールする動作を制御するものである。複数のプログラムは、あるプログラムを構成するコンポーネントプログラムである（以下同じ）。コンポーネントプログラムには、デバイスドライバやプログラム、ファイルなど、プログラムを構成するコンポーネントの全てを含む。
プリンタドライバインストール監視プログラム２２は、プリンタドライバ３３のインストール状況を監視し、プリンタドライバ３３のインストール結果に基づいて、プリンタドライバ３３のインストール動作時に設定した初期値を、他のコンポーネントプログラムに反映させるものである。
プリンタドライバインストーラプログラム２３は、プリンタドライバ３３のインストール動作を制御するものである。
【００２４】
また、本実施形態のプログラムのインストール装置１は、プリンタ用デバイスドライバを構成するステータスモニタ３１と、未解凍プリンタドライバ３２と、解凍済みプリンタドライバ３３と、ドキュメントファイル３４、ユーティリティ３５とをコンポーネントプログラムの」一例としてＨＤＤ６に記憶する。本実施形態では、解凍済みプリンタドライバ３３が「デバイスドライバ」の一例であり、ステータスモニタ３１が「コンポーネントプログラム」の一例である。
【００２５】
ステータスモニタ３１は、ＣＤ−ＲＯＭ１４からＨＤＤ６にコピーされる。ステータスモニタ３１は、プリンタ１２の機能をモニタするプログラムである。
未解凍プリンタドライバ３２は、ＣＤ−ＲＯＭ１４からＨＤＤ６にコピーされる。未解凍プリンタドライバ３２は、プリンタ１２を制御するためのプリンタドライバを圧縮したものである。
解凍済みプリンタドライバ３３は、圧縮状態を解除されたプリンタドライバであり、ＨＤＤ６に記憶される。
【００２６】
ドキュメントファイル３４は、ＣＤ−ＲＯＭ１４からＨＤＤ６にコピーされる。ドキュメントファイル３４は、プリンタ１２の製品取扱いを説明した電子ファイルである。
ユーティリティ３５は、ＣＤ−ＲＯＭ１４からＨＤＤ６にコピーされる。ユーティリティ３５は、例えばプリンタドライバの持つ機能を補い、機能や性能、操作性を向上させる
プログラムである。
【００２７】
この他、ＨＤＤ６には、ステータスモニタ設定記憶領域４１と、プリンタドライバ設定記憶領域４２と、プリンタドライバインストールエラーフラグ格納領域４３と、インストールファイル情報格納領域４４とが設けられている。
【００２８】
ステータスモニタ設定記憶領域４１は、ステータスモニタ３１のパラメータを記憶する。
プリンタドライバ設定記憶領域４２は、解凍済みプリンタドライバ３３のインストール動作時に設定されるパラメータの初期値を記憶する。
プリンタドライバインストールエラーフラグ格納領域４３は、解凍済みプリンタドライバ３３のインストール動作時に設定されるエラーフラグを格納する。
インストールファイル情報格納領域４４は、ＨＤＤ６にコピーされたドキュメントファイル３４やユーティリティ３５など、解凍済みプリンタドライバ３３（デバイスドライバ）に関連するファイル情報を格納する。
【００２９】
＜インストーラメインプログラムの動作＞
次に、インストーラメインプログラム２１の動作について説明する。図３は、インストーラメインプログラム２１のフロー図である。図４は、インストールするコンポーネントを選択する画面の一例を示す図である。
ＣＰＵ２１は、例えば、読取部７がＣＤ−ＲＯＭ１４を読み込んだときに、プリンタドライバのインストールを指示する画面を表示部９に表示する。ユーザが操作部８を操作してプリンタドライバのインストール実行指示をプログラムのインストール装置１に入力すると、その入力信号をトリガとして、ＣＰＵ２は、図３に示すインストーラメインプログラム２１をＨＤＤ６から読み出し、ＲＡＭ５にコピーして実行する。
【００３０】
図３に示すように、インストーラメインプログラム２１は、先ずステップ１（以下「Ｓ１」という。）において、プリンタドライバをＣＤ−ＲＯＭ１４からＨＤＤ６にコピーする。具体的には、ＣＤ−ＲＯＭ１４に記憶されている圧縮状態の未解凍プリンタドライバ３２を読取部７に読み取らせ、ＨＤＤ６にコピーする。
【００３１】
そして、Ｓ２において、インストールするコンポーネントを選択する。具体的には例えば、図４に示すように、一覧表５１と決定ボタン５２とキャンセルボタン５３とを表示部９に表示する。一覧表５１には、ＣＤ−ＲＯＭ１４からインストール可能なコンポーネントプログラム（例えばステータスモニタ、ドキュメントファイル、ユーティリティ）毎にチェック欄が設けられている。ユーザは、操作部８を操作して、インストールしたいコンポーネントプログラムのチェック欄にチェック（黒丸）を入れ、決定ボタン５２をクリックする。
【００３２】
ここで、プリンタドライバ３３をインストールする場合、ステータスモニタ設定記憶領域４１からポート情報を読み出すために、ステータスモニタ３１のインストールが必須条件である。そのため、ステータスモニタ３１のチェック欄は、チェックを外すことができないように表示される。一方、プリンタドライバ３３のインストールに必須でないコンポーネント（ドキュメントファイルやユーティリティなど）のチェック欄は、チェックが任意に入れたり外したり出来るように表示される。よって、不慣れなユーザであっても、プリンタドライバ３３のインストールに必須のコンポーネントプログラムを必ず選択し、プリンタドライバ３３のインストールに必須でないコンポーネントプログラムを適宜選択することが可能である。
【００３３】
ユーザが、チェック欄にチェックを入れて、決定ボタン５２をクリックすると、ＣＰＵ２はインストールするコンポーネントの選択が完了したことを認識し、次の処理へ進む。
【００３４】
図３に戻り、Ｓ３において、ステータスモニタインストーラの起動処理を行う。具体的には、ステータスモニタ３１は、プリンタドライバ３３のインストールに必須なコンポーネントプログラムであるため、コンポーネントプログラム選択画面（図４参照）上で必ず選択されている。よって、選択されたか否かの判断をするまでもなく、起動されたステータスモニタインストーラは、ＣＤ−ＲＯＭ１４に記憶されるステータスモニタ３１を読取部７に読み取らせ、ＨＤＤ６に記憶する。
【００３５】
そして、Ｓ４において、プリンタドライバインストール監視プログラム２２に起動信号を与え（ＲＡＭ５にコピーし）、プリンタドライバインストール監視プログラム２２を起動させる。すなわち、プリンタドライバインストール監視プログラム２２をインストーラメインプログラム２１と並行して実行する。プリンタドライバインストール監視プログラム２２の処理内容については後述する。
【００３６】
そして、Ｓ５において、プリンタドライバインストールプログラム２３に起動信号を与え（ＲＡＭ５にコピーし）、プリンタドライバインストールプログラム２３を起動させる。すなわち、プリンタドライバインストールプログラム２３を、インストーラメインプログラム２１及びプリンタドライバインストール監視プログラム２２と並行して実行する。プリンタドライバインストールプログラム２３の処理内容については後述する。
【００３７】
そして、Ｓ６において、ドキュメントファイル３４をインストールするか否かを判断する。具体的には、ユーザが、コンポーネントプログラム選択画面（図４参照）において、ドキュメントファイル３４に対応するチェック欄にチェック（黒丸）を入れたか否かに基づいて判断する。ユーザがドキュメントファイル３４に対応するチェック欄にチェック（黒丸）を入れなかった場合には、ドキュメントファイル３４をインストールしないと判断し（Ｓ６：ＮＯ）、そのままＳ８へ進む。
【００３８】
一方、ユーザがドキュメントファイル３４に対応するチェック欄にチェック（黒丸）を入れた場合には、ドキュメントファイル３４をインストールすると判断し（Ｓ６：ＹＥＳ）、Ｓ７において、ドキュメントファイルインストール処理を実行してから、Ｓ８へ進む。ドキュメントファイルインストール処理は、後述するコンポーネントインストール処理に従って行われる。
【００３９】
Ｓ８においては、ユーティリティ３５をインストールするか否かを判断する。ユーザが、コンポーネントプログラム選択画面（図４参照）において、ユーティリティ３５に対応するチェック欄にチェック（黒丸）を入れなかった場合には、ユーティリティ３５をインストールしないと判断し（Ｓ８：ＮＯ）、そのまま処理を終了する。
【００４０】
一方、ユーザが、コンポーネントプログラム選択画面（図４参照）において、ユーティリティ３５に対応するチェック欄にチェック（黒丸）を入れた場合には、ユーティリティ３５をインストールすると判断し（Ｓ８：ＹＥＳ）、Ｓ９において、ユーティリティインストール処理を実行する。ユーティリティインストール処理は、後述するコンポーネントインストール処理に従って行われる。
【００４１】
従って、インストーラメインプログラム２１を実行することにより、ステータスモニタ３１とドキュメントファイル３４とユーティリティ３５とをＨＤＤ６にインストールできる。
【００４２】
＜プリンタドライバインストール処理＞
次に、プリンタドライバインストール処理について説明する。図５は、図２に示すプリンタドライバインストーラプログラム２３のフロー図である。
プリンタドライバインストールプログラム２３は、インストーラメインプログラム２１から与えられた起動信号（図３のＳ５参照）をトリガとして、起動する。
【００４３】
図５に示すように、プリンタドライバインストールプログラム２３は、Ｓ１１において、プリンタドライバインストール処理を行う。具体的には、図３のＳ１にてＨＤＤ６にコピーした未解凍プリンタドライバ３２を解凍し、解凍済みプリンタドライバ３３をＨＤＤ６に記憶する。このとき、プリンタ１２に関するパラメータの初期値をＣＤ−ＲＯＭ１４から取得し、ＨＤＤ６のプリンタドライバ設定記憶領域４２に記憶する。この意味で、Ｓ１１の処理は、「設定手段」の一例になり得る。
【００４４】
そして、Ｓ１２において、プリンタドライバのインストールが成功したか否かを判断する。具体的には、解凍済みプリンタドライバを最後までＨＤＤ６にコピーできたか否か、
及び、プリンタドライバがシステムに登録されているか否かに基づいて、プリンタドライバのインストールが成功したか否かを判断する。
【００４５】
プリンタドライバのコピー中にエラーが生じ、解凍済みプリンタドライバを最後までＨＤＤ６にコピーできない場合には、プリンタドライバのインストールが成功しなかったと判断する（Ｓ１２：ＮＯ）。そして、Ｓ１３において、プリンタドライバインストールエラーフラグを「１」にセットする。すなわち、ＨＤＤ６のプリンタドライバインストールエラーフラグ格納領域４３に「１」を記憶する。そして、処理を終了する。
【００４６】
一方、解凍済みプリンタドライバを最後までＨＤＤ６にコピーできた場合には、プリンタドライバのインストールが成功したと判断する（Ｓ１２：ＹＥＳ）。そして、Ｓ１４において、プリンタドライバインストールエラーフラグを「０」にセットする。すなわち、ＨＤＤ６のプリンタドライバインストールエラーフラグ格納領域４３に「０」を記憶する。そして、処理を終了する。
【００４７】
従って、ドライバインストールプログラム２３を実行することにより、解凍済みプリンタドライバ３３をＨＤＤ６にインストールできる。また、プリンタドライバインストールエラーフラグ格納領域４３を参照すれば、解凍済みプリンタドライバ３３のインストール状況を確認できるようになる。
【００４８】
＜プリンタドライバインストール監視プログラムによる処理＞
次に、プリンタドライバインストール監視プログラム２２による処理について説明する。図６は、図２に示すプリンタドライバインストール監視プログラム２２のフロー図である。
プリンタドライバインストール監視プログラム２２は、インストーラメインプログラム２１から与えられた起動信号（図３のＳ４）をトリガとして、起動する。
【００４９】
図６に示すように、プリンタドライバインストールプログラム２２は、Ｓ２１において、プリンタドライバインストールエラーフラグ格納領域４３からプリンタドライバインストールエラーフラグを取得する。そして、Ｓ２２において、エラーフラグを取得できたか否かを判断する。
【００５０】
プリンタドライバのインストール動作が未完了である場合には、エラーフラグがプリンタドライバインストールエラーフラグ格納領域４３に記憶されていない。この場合には、プリンタドライバインストールエラーフラグ格納領域４３からエラーフラグを取得できないと判断する（Ｓ２２：ＮＯ）。そして、Ｓ２３において、プリンタドライバインストールエラーフラグ格納領域４３にエラーフラグが記憶されるまで、待機する。
【００５１】
よって、Ｓ２１〜Ｓ２３の処理は、プリンタドライバがインストールされたことを検出しており、この意味で、Ｓ２１〜Ｓ２３の処理は、「インストール検出手段」の一例に成り得る。
【００５２】
プリンタドライバインストールエラーフラグ格納領域４３からエラーフラグを取得できた場合には（Ｓ２２：ＹＥＳ）、Ｓ２４のおいて、取得したエラーフラグが「１」にセットされているか否かを判断する。取得したエラーフラグが「１」にセットされていると判断した場合には（Ｓ２４：ＹＥＳ）、解凍済みプリンタドライバ３３のインストールに失敗したことを意味する。この場合、プリンタドライバインストール処理（図５のＳ１１参照）で取得したプリンタドライバ３３の初期値を他のプログラムに反映させることは無駄である。そこで、処理を直ちに終了する。
【００５３】
これに対して、エラーフラグが１にセットされていないと判断した場合には（Ｓ２４：ＮＯ）、解凍済みプリンタドライバ３３のインストールに成功したことを意味する。そこで、Ｓ２５において、ポート情報を取得する。すなわち、プログラムのインストール装置１がプリンタ１２に対してデータを出力する出力ポート１０のポート情報を、プリンタドライバ設定記憶領域４２から読み出してＲＡＭ５にコピーする。このように、プリンタドライバのインストールが成功した検出結果に基づいて、解凍済みプリンタドライバ３３の初期値の一例である出力ポート１０のポート情報を取得するので、Ｓ２５の処理は、「初期値取得手段」の一例になり得る。
【００５４】
そして、Ｓ２６において、ＲＡＭ５にコピーしたポート情報をステータスモニタ設定記憶領域４１に保存する。換言すると、解凍済みプリンタドライバ３３のインストール動作をしているときに設定した出力ポート１０のポート情報を、ステータスモニタ３１の初期値に反映する。この意味で、Ｓ２６の処理は、「初期値反映手段」の一例になり得る。
【００５５】
＜コンポーネントインストール処理＞
次に、コンポーネントインストール処理について説明する。図７は、図３に示すインストーラメインプログラム２１のサブフロー図である。
コンポーネントインストール処理は、例えば、インストーラメインプログラム２１に含まれるドキュメントファイルインストール処理（図３のＳ７参照）、及び、ユーティリティインストール処理（図３のＳ９参照）において、実行される。
【００５６】
図７に示すように、コンポーネントインストール処理は、Ｓ３１において、ＨＤＤ６のプリンタドライバインストールエラーフラグ格納領域４３からプリンタドライバインストールエラーフラグを読み出し、ＲＡＭ５にコピーして取得する。
【００５７】
そして、Ｓ３２において、取得したエラーフラグが「１」にセットされているか否かを判断する。
【００５８】
取得したエラーフラグが「０」にセットされている場合には、「１」にセットされていないと判断する（Ｓ３２：ＮＯ）。そして、Ｓ３３において、ファイルコピー処理を行う。具体的には、ＣＤ−ＲＯＭ１４に記憶されているドキュメントファイル３４を読取部７に読み取らせ、ＨＤＤ６にコピーする。
【００５９】
そして、Ｓ３４において、ＨＤＤ６にコピーしたドキュメントファイル３４を、インストールファイル情報格納領域４４に保存する。これにより、ＣＤ−ＲＯＭ１４に記憶されているドキュメントファイル３４の一つが、プログラムのインストール装置１にインストールされる。
【００６０】
そして、Ｓ３５において、ファイルを全てコピーしたか否かを判断する。例えば、ドキュメントファイル３４がＣＤ−ＲＯＭ１４に複数記憶されている場合には、ドキュメントファイル３４をＣＤ−ＲＯＭ１４から全てコピーしていないので（Ｓ３５：ＮＯ）、Ｓ３１に戻って、次のドキュメントファイル３４をコピーする。
【００６１】
上記Ｓ３１〜Ｓ３５の処理を繰り返し、ＣＤ−ＲＯＭ１４に記憶されているドキュメントファイルを全てコピーし終わったら（Ｓ３５：ＹＥＳ）、処理を終了する。
【００６２】
これに対して、Ｓ３１で取得したエラーフラグが「１」にセットされていると判断した場合には（Ｓ３２：ＹＥＳ）、プリンタドライバのインストールに失敗したことを意味する。この場合、コピーしたファイル情報をプリンタドライバの実行に利用できない。そこで、Ｓ３６において、例えば、「プリンタドライバのインストールに失敗しました。プリ
ンタドライバのインストールを最初からやり直して下さい。」等のエラーメッセージを表示部９に表示し、ユーザに注意を喚起する。
【００６３】
そして、Ｓ３７において、ＨＤＤ６やインストールファイル情報格納領域４４にコピーしたファイルを削除する。これにより、解凍済みプリンタドライバ３３のインストール動作に伴ってインストールされたドキュメントファイル３４が全て自動削除される。よって、プリンタドライバを再インストールしたときに、同一ファイルが重複してＨＤＤ６に記憶され、メモリを浪費する不具合を回避できる。
【００６４】
尚、ドキュメントファイル３４のインストールを引用してコンポーネントインストール処理を説明したが、ユーティリティ３５も、ドキュメントファイル３４と同様にしてＣＤ−ＲＯＭ１４からプログラムのインストール装置１にインストールできる。
【００６５】
＜作用効果＞
以上説明したように、本実施形態のプログラムのインストール装置１は、インストーラメインプログラム２１とプリンタドライバインストール監視プログラム２２とプリンタドライバインストールプログラム２３とをパラレルに実行する（図３、図５、図６参照）。これにより、図８（ｂ）に示すように、ステータスモニタ３１と解凍済みプリンタドライバ３３とドキュメントファイル３４とユーティリティ３５は、時分割で並行してプログラムのインストール装置１にインストールされる。
【００６６】
そして、プリンタドライバインストールプログラム２３を実行して取得した出力ポート１０のポート情報をステータスモニタ設定記憶領域４１に記憶し、ステータスモニタの初期値に反映させる（図６のＳ２５，Ｓ２６参照）。
【００６７】
そのため、本実施形態のプログラムのインストール装置１によれば、図８（ａ）に示すようにシリアルにプリンタドライバ３３とステータスモニタ３１とドキュメントファイル３３とユーティリティ３４とをインストールする場合と比べ、インストール時間を短縮することができた。
【００６８】
具体的には、例えば、図８（ａ）に示すように、インストーラの起動処理をした後、プリンタドライバ３３、ステータスモニタ３１、ドキュメントファイル３４、ユーティリティ３５を順番にインストールする場合、プリンタドライバ３３のインストールに２５秒、ステータスモニタ３１のインストールに２０秒、ドキュメントファイル３４のインストールに１４秒、ユーティリティ３５のインストールに２２秒かかった。この場合、インストーラの起動処理終了後から全てのコンポーネントプログラムのインストールが完了するまでの時間は、８１秒である。
【００６９】
これに対して、図８（ｂ）（図中Ｘ１〜Ｘ７は処理順序を示す）に示す処理では、インストーラメインプログラム２１を実行して、複数のコンポーネントをパラレルにインストールする。この場合に、インストールするコンポーネントの順序は特に限定されない。ただ、ステータスモニタが動作するには、プリンタドライバ３３が使用するポート情報をステータスモニタ設定記憶領域４１から読み出す必要がある。このポート情報は、プリンタドライバ３３のインストール完了後に判明する。ポート情報は、ステータスモニタ設定記憶領域へ記憶されるが（図６参照）、このためには、プリンタドライバ３３のインストールを完了する前にステータスモニタ３１のインストールを完了している必要がある。
【００７０】
そこで、インストーラの起動処理が完了した後（Ｘ１）、先ずステータスモニタ３１のインストールを開始し（Ｘ２）、その後に、プリンタドライバインストール監視プログラム２２を実行してプリンタドライバインストール監視処理を開始し、プリンタドライバ３３のインストールが完了してポート情報を取得可能になる時点を監視し始める（Ｘ３）。それから、プリンタドライバインストールプログラム２３を実行し、プリンタドライバ３３のインストールを開始する（Ｘ４）。インストーラメインプログラム２１は、解凍済みプリンタドライバ３３をインストールする合間に生じる空き時間を利用して、ドキュメントファイル３４のインストール（Ｘ５）と、ユーティリティ３５のインストール（Ｘ６）を順番に行う。プリンタドライバ３３のインストールが完了すると、そのポート情報をステータスモニタ設定記憶領域４１へ記憶する。
【００７１】
図８（ｂ）に示す処理では、プリンタドライバ３３のインストールに３２秒、ステータスモニタ３１のインストールに２０秒、ドキュメントファイル３４のインストールに１８秒、ユーティリティ３５のインストールに２２秒かかる。よって、各コンポーネントのインストール時間を個別的に見ると、プリンタドライバ３３とドキュメントファイル３４のインストール時間が、（ａ）に示すようにシリアルにインストールする場合より長くなる。これは、ＣＰＵ２が各処理を一つずつ行うからである。
【００７２】
しかし、図８（ｂ）に示すパラレルなインストール方法は、プリンタドライバ３３をインストールする際の空き時間を利用してドキュメントファイル３４とユーティリティ３５をインストールするため、インストーラ起動処理終了後から全てのコンポーネントのインストールが完了するまでの時間が、ドキュメントファイルのインストール時間（１８秒）とユーティリティのインストール時間（２２秒）とを合算した４０秒だけで済む。尚、図８（ａ）、（ｂ）の処理時間の比較において、インストーラ起動処理時間を除いたのは、インストーラ起動処理にはコンポーネントプログラムを選択する処理が含まれ、インストール方法の特性に無関係な事象（例えば、ユーザがコンポーネントプログラムを選択する時間に差異があるため）によってインストーラ起動処理時間に差異が生じ、特定困難であるからである。
【００７３】
したがって、上記具体例によれば、図８（ｂ）に示すパラレルなインストール方法は、図８（ａ）に示すシリアルなインストール方法よりインストール時間を約４１秒も短くして、インストール時間を半分以上短縮することができた。
通常、インストールする場合には、ユーザがインストール装置１の前でインストールの完了を待つことが多い。そのため、インストール時間を半分以上短縮できたことは、ユーザにとって非常に便利である。
【００７４】
尚、本実施形態では、インストーラメインプログラム２１とプリンタドライバインストール監視プログラム２２とプリンタドライバインストールプログラム２３とにより、ステータスモニタ３１と解凍済みプリンタドライバ３３とドキュメントファイル３４とユーティリティ３５とを時分割で並行してインストールしているときに、解凍済みプリンタドライバ３３の初期値を取得し、その取得した初期値をステータスモニタ３１に反映させている。よって、インストーラメインプログラム２１とプリンタドライバインストール監視プログラム２２とプリンタドライバインストールプログラム２３とが「インストールプログラム」の一例となり得る。この「インストールプログラム」は、予め、インストール装置１のＲＯＭ４やＨＤＤ６に記憶しておいてもよいし、ＣＤ−ＲＯＭやフロッピー（登録商標）ディスクなどの「プログラム記憶媒体」からインストール装置１に組み込むようにしてもよい。
【００７５】
本実施形態に係るプログラムのインストール装置１は、プリンタ１２の制御の基本となるプリンタドライバ３３の初期値をステータスモニタ３１に自動的に反映させるので（図６のＳ２５，Ｓ２６参照）、使い勝手がよい上に効率がよい。
【００７６】
また、プリンタドライバ３３の初期値の一つが、プリンタ１２にデータを出力する出力ポート１０であるので、プリンタ１２との間でデータ送受信を行うためにステータスモニタ設定時に同じ出力ポート１０を繰り返し設定する必要がなくなり、インストール時間を短縮できる上に、使い勝手が良い。
【００７７】
尚、本発明の実施の形態について説明したが、本発明は、上記実施の形態に限定されることなく、色々な応用が可能である。
例えば、上記実施の形態では、プログラムのインストール装置の一例としてパソコン１を挙げたが、プログラムをインストール可能であれば、インストール装置をパソコン１に限定する必要はない。
また、インストールプログラムも、インストール装置１に接続される外部装置（プリンタ等）に関連するプログラムの他、ソフトウエア関連のプログラム（ＯＳのバージョンアップ用プログラム等）でもよく、種類を限定されない。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施形態に係るプログラムのインストール装置のハードウエア構成を示す図である。
【図２】図１に示すプログラムのインストール装置の機能ブロック図である。
【図３】図２に示すインストーラメインプログラムのフロー図である。
【図４】インストールするコンポーネントを選択する画面の一例を示す図である。
【図５】図２に示すプリンタドライバインストーラプログラムのフロー図である。
【図６】図２に示すプリンタドライバインストール監視プログラムのフロー図である。
【図７】図３に示すインストーラメインプログラムのサブフロー図であって、コンポーネントインストール処理を示す。
【図８】本実施形態に係るプログラムのインストール装置と従来のインストール装置とのインストール時間を対比する図であって、（ａ）は従来のもの示し、（ｂ）は本実施形態のものを示す。
【符号の説明】
【００７９】
１  プログラムのインストール装置
１０  出力ポート
２１  インストーラメインプログラム（インストール手段）
２２  プリンタドライバインストール監視プログラム（インストール検出手段、初期値取得手段、初期値反映手段）
２３  プリンタドライバインストールプログラム（設定手段）
３１  ステータスモニタ（他のプログラム、コンポーネントプログラム）
３３  未解凍プリンタドライバ（あるプログラム、デバイスドライバ）
【図１】
2008152762.tif 000003
【図２】
2008152762.tif 000004
【図３】
2008152762.tif 000005
【図４】
2008152762.tif 000006
【図５】
2008152762.tif 000007
【図６】
2008152762.tif 000008
【図７】
2008152762.tif 000009
【図８】
2008152762.tif 000010