(57)【要約】【課題】  複数のインストーラを実行し、複数のソフトウェアをインストールする処理において、各々のインストール結果を取得、判定し一覧表示することでインストール結果をわかりやすく表示する。【解決手段】  回復可能なエラーが原因でインストールに失敗した場合回復処理を自動的に実行することでコンピュータに詳しくないユーザであってもインストール処理を行なうようにする。【選択図】  図１
2007004679.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラム又はデータをインストールするインストール手段と、
前記複数のプログラム又はデータのインストールが失敗した場合、当該複数のプログラム又はデータのインストール処理における複数の失敗の原因を表示する表示手段と、
を備える情報処理装置。
【請求項２】
前記複数のプログラム又はデータごとに、それぞれのプログラム又はデータのインストールが成功したか否かを判定する判定手段と、
前記表示手段は、前記判定手段の判定結果に基づいて、インストールが失敗したプログラム又はデータと当該失敗の原因を表示する請求項１に記載の情報処理装置。
【請求項３】
前記判定手段は、記憶領域の空き容量を示す情報、又は、オペレーティングシステムに関する情報、又は、プログラム又はデータが動作するために必要なモジュールを示す情報を用いて、前記判定手段は判定する請求項２に記載の情報処理装置。
【請求項４】
前記表示手段は、前記判定手段の判定結果を用いて、インストール失敗の原因として表示する請求項２又は３に記載の情報処理装置。
【請求項５】
前記判定手段の判定結果に応じて、前記インストールの失敗を回復するための回復インストール処理を行なう回復インストール手段を有する請求項２に記載の情報処理装置。
【請求項６】
前記判定手段が、記憶領域の空き容量が不足したためにインストールが失敗したと判定した場合に、回復インストール手段は、インストールための空き容量を確保して、インストール処理を行なう請求項５に記載の情報処理装置。
【請求項７】
前記判定手段が、プログラム又はデータが動作するために必要なモジュールがインストールされなかったためにインストールが失敗したと判定した場合に、前記回復インストール手段は、前記必要なモジュールをインストールする請求項５に記載の情報処理装置。
【請求項８】
前記表示手段は、インストールの失敗原因を示す表示と共に、前記インストールの失敗を回復する回復インストールを指示するための表示を表示する請求項５に記載の情報処理装置。
【請求項９】
前記インストール手段におけるインストール処理は、複数のアプリケーションにそれぞれ対応する複数のインストールプログラムによって実行される請求項１に記載の情報処理装置。
【請求項１０】
複数のプログラム又はデータをインストールするインストール工程と、
前記複数のプログラム又はデータのインストールが失敗した場合、当該複数のプログラム又はデータのインストール処理における複数の失敗の原因を表示する表示工程と、
を備える情報処理方法。
【請求項１１】
前記複数のプログラム又はデータごとに、それぞれのプログラム又はデータのインストールが成功したか否かを判定する判定工程と、
前記表示工程は、前記判定工程の判定結果に基づいて、インストールが失敗したプログラム又はデータと当該失敗の原因を表示する請求項１０に記載の情報処理方法。
【請求項１２】
前記判定工程は、記憶領域の空き容量を示す情報、又は、オペレーティングシステムに関する情報、又は、プログラム又はデータが動作するために必要なモジュールを示す情報を用いて、前記判定工程は判定する請求項１１に記載の情報処理方法。
【請求項１３】
前記表示工程は、前記判定工程の判定結果を用いて、インストール失敗の原因として表示する請求項１１又は１２に記載の情報処理方法。
【請求項１４】
前記判定工程の判定結果に応じて、前記インストールの失敗を回復するための回復インストール処理を行なう回復インストール工程を有する請求項１１に記載の情報処理方法。
【請求項１５】
前記判定工程が、記憶領域の空き容量が不足したためにインストールが失敗したと判定した場合に、回復インストール工程は、インストールための空き容量を確保して、インストール処理を行なう請求項１４に記載の情報処理方法。
【請求項１６】
前記判定工程が、プログラム又はデータが動作するために必要なモジュールがインストールされなかったためにインストールが失敗したと判定した場合に、前記回復インストール工程は、前記必要なモジュールをインストールする請求項１４に記載の情報処理方法。
【請求項１７】
前記表示工程は、インストールの失敗原因を示す表示と共に、前記インストールの失敗を回復する回復インストールを指示するための表示を表示する請求項１４に記載の情報処理方法。
【請求項１８】
前記インストール工程におけるインストール処理は、複数のアプリケーションにそれぞれ対応する複数のインストールプログラムによって実行される請求項１０に記載の情報処理方法。
【請求項１９】
複数のプログラム又はデータをインストールするインストール工程と、
前記複数のプログラム又はデータのインストールが失敗した場合、当該複数のプログラム又はデータのインストール処理における複数の失敗の原因を表示する表示工程と、
をコンピュータに実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各種プログラム及びデータを操作する処理に関する。
【背景技術】
【０００２】
ソフトウェアをコンピュータ上にインストールするにはある程度のスキル、ノウハウが必要である。そこでインストーラと呼ばれるソフトウェアインストールを支援するソフトウェアを用いてソフトウェアをインストールするのが一般的である。
【０００３】
このようなインストーラはインストール処理を行なう際、インストール条件を満たしているか確認を行い、インストール条件を満たしていなければエラー表示を行なうといった処理を行なう。このような処理を自動的に行なうことでコンピュータのスキルが低いユーザであっても安心してインストール処理を行なうことが可能となる。
【０００４】
一方近年ＣＤＲＯＭの普及に伴い１枚のＣＤＲＯＭに複数のソフトウェアを同梱することが多くなっている。このようなＣＤＲＯＭでは、ＣＤＲＯＭをコンピュータに挿入すると同梱された複数のソフトウェアを一括してインストールすることが一般的である。
【０００５】
アプリケーション・プログラムを走らせている間に、ユーザにヘルプを与える方法を提供する仕組みが考案されている。特別なオブジェクト（Ｒｅｓｕｌｔ）またはボタンをプログラムしておき、結果（または警告）がユーザに役立つ場合に、オンライン・ヘルプ・システムの主要トピック・ウィンドウ内に表示するものである。ユーザは、ポインティング・デバイスを用いて、前記オブジェクト上でポインティング・デバイスをクリックすると、二次的トピック・ウィンドウまたはポップ・アップのいずれかの中に、プログラムの実行の予測された結果（または警告）を表示することが知られている。インストール時の結果を詳細に説明する際の手法にも適用可能である。
【０００６】
特開２００５−０４４０００には、被装置から別の装置へインストール失敗とインストールに失敗したアプリケーション名を通知する技術が記載されている。
【特許文献１】特開２００５−０４４０００
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、複数のインストーラを実行すると、最初のインストール結果を忘れてしまう可能性がある。まして、その原因を覚えておかなければ対処することはなおさら難しい。インストール結果を表示する場合でもインストールが成功したか失敗したかの表示しかしない場合には、失敗原因を得ることができない場合が多い。
【０００８】
また、別の問題として、エラーが表示されたとしても、ユーザにはエラーが起きたことは分かるものの、エラーへの対処方法がわからず、途方にくれてしまう場合もある。
【課題を解決するための手段】
【０００９】
上述の問題点の少なくともひとつを解決するためになされたものである。複数のソフトウェアをインストールする場合に、インストール対象となるソフトウェアのインストールに失敗した原因を一目で分かるようにすることができるにする仕組みを提供することが本願発明のひとつの側面である。
【００１０】
複数のプログラムをインストールするインストール手段と、前記複数のプログラムのインストールが失敗した場合、当該複数のプログラムのインストール処理における複数の失敗の原因を表示する表示手段と、を備える情報処理装置、該装置に適用できる方法、外装置で実行可能な制御プログラムが開示される。
【発明の効果】
【００１１】
複数のソフトウェアをインストールする場合に、インストール対象となるソフトウェアのインストールに失敗した原因を一目で分かるように表示することができる。
【発明を実施するための最良の形態】
【００１２】
図１は本実施形態の前提となる典型的なインストール結果画面を示したものである。図を見ると複数のソフトウェアがインストールされ、インストールに成功したものもあれば失敗したものもあることがわかる。ただし、インストールに失敗した場合、失敗した原因が表示されないと対処できない。またインストール失敗の原因を確認できたとしても、コンピュータのスキルが低いユーザではインストール失敗の対策や回避策を実施することができず、結局インストールできない場合もある。プリンタインタフェースＨ１０７は、ネットワークに接続することもでき、ＵＲＬを用いてドライバ取得指示がメインインストーラに指示された場合は、ネットワーク及びＨ１０７を介して、ＵＲＬが指し示すサーバ装置（図示省略）からドライバ等のプログラムをメインインストーラが取得することができる。
【００１３】
次に以下に、本発明に好適な実施例を説明する。本実施例はインストーラの処理結果を取得し、この結果に応じたエラー情報を一括して表示するものとなる。
【００１４】
始めに本実施例を実現するためのハードウェア構成を説明する。図２は、プリンタ（図示省略）にプリンタインタフェースＨ１０７を介して接続可能なホストコンピュータ側のハードウェア構成図である。Ｈ１０１はホストコンピュータの制御を司る制御部（以後ＣＰＵと称する）である。Ｈ１０２はユーザからの操作を入力するキーボードである。Ｈ１０３は文字や画像を表示する表示機である。Ｈ１０４は装置全体を制御する制御手順およびその他の必要な情報をあらかじめ記憶するリードオンリーメモリ（ＲＯＭ）である。Ｈ１０５はワークエリアとして利用されるランダムアクセスメモリ（ＲＡＭ）である。Ｈ１０６はＯＳや前述のプリンタを駆動制御するためのプリンタドライバや図６のテーブル、本実施形態におけるメインインストーラやアプリケーションインストーラ、レジストリ情報、電子マニュアルやイージー画像プリントなどのアプリケーション類などを格納するハードディスクである。Ｈ１０７は前述のプリンタと通信を行うためのプリンタインタフェースである。ＵＳＢなどを含むローカルインタフェースであってもよいし、ネットワークインタフェースであってもよい。Ｈ１０８はデータバスであり、各種データを転送するために用いられる。Ｈ１０９は配布ソフトウェアが格納されたＣＤＲＯＭを読取るためのＣＤＲＯＭドライブである。Ｈ１１０は画面上の位置を指示するマウスである。本実施形態のインストールを制御するプログラムであるメインストーラは、ＲＯＭやＲＡＭに展開されて、ＣＰＵによって実行され、図３、図５、図８の各種処理を実行する。メインインストーラは、アプリケーションをインストールするアプリケーションインストーラをさらに実行する。
【００１５】
次に本実施例を実現するためのフローチャートを説明する。図３は実施例のフローチャートである。以下に各ステップの処理を説明する。処理は大きく分けてインストーラの実行と、インストール結果表示に分けられる。
【００１６】
Ｓ１０１は、メインインストーラがインストール結果格納テーブルの初期化する処理である。インストール結果格納テーブルにはアプリケーションソフトウェア名称、インストーラファイル名とインストール結果格納領域がありこれらの領域を初期化する。次のＳ１０２では、インストーラから、さらにサブプロセスの形態で起動されるアプリケーションインストーラの実行を、メインインストーラが指示する。当該指示に応じて、アプリケーションインストーラは、インストール結果格納テーブルに従い、アプリケーションインストーラファイルの本体（ｓｅｔｕｐ．ｅｘｅ）を起動してインストール処理を実行する。アプリケーションが複数であれば、それぞれに対応する複数個のサブプロセスとしてアプリケーションインストーラが起動される。続いて、Ｓ１０３ではメインインストーラは、アプリケーションインストーラの処理が完了するまで待つ。アプリケーションインストーラにおけるインストールの処理が完了したらＳ１０４へ進む。Ｓ１０４はメインインストーラがインストール結果を取得する処理である。本実施例ではレジストリからアプリケーションインストーラの本体であるｓｅｔｕｐ．ｅｘｅが書き込んだインストール結果コードをメインインストーラが取得する。例えばインストーラ本体ｓｅｔｕｐ．ｅｘｅのプログラムが、インストール実行後のＡＰＩを呼び出すのに応じて返却されるインストール成功可否を示す戻り値をメインインストーラが用いてもよいし、プロセス間通信でアプリケーションインストーラにおけるインストール結果をメインインストーラが受信してもよい。Ｓ１０５はアプリケーションインストーラｓｅｔｕｐ．ｅｘｅからメインインストーラが取得したインストール結果情報をインストール結果格納テーブルに保存する処理である。この処理ではインストール結果格納テーブルにインストール結果情報をメインインストーラが保存する。Ｓ１０６は全てのアプリケーションインストーラを実行したかをメインインストーラが判定する処理である。全てのアプリケーションインストーラを実行し終えたとメインインストーラが判断したらＳ１０７へ進む。また実行していないアプリケーションインストーラがあるとメインインストーラが判断したらＳ１０２へ戻る。以上でインストーラの実行処理は終了である。
【００１７】
Ｓ１０７からはインストール結果表示の処理である。Ｓ１０７はアプリケーションソフトウェア名称とＳ１０５で保存したインストール結果情報をメインインストーラが取得する処理である。Ｓ１０８はＳ１０７で取得したインストール結果情報からインストール処理が成功したかどうかメインインストーラが判定する処理である。本実施例ではインストール結果コードとして０をアプリケーションインストーラが書き込んでいたなら成功、それ以外なら失敗とメインインストーラが判定する。Ｓ１０９はＳ１０８の判定結果を元に処理を分岐する。インストール成功とメインインストーラが判定した場合はＳ１１０へ進む。インストール失敗と判定した場合はメインインストーラの処理はＳ１１１へ進む。Ｓ１１０はメインインストーラがインストール成功を表示する処理である。Ｓ１１１はメインインストーラがエラーフラグを初期化する処理である。以後の処理でどのエラーが発生したか判定しエラーフラグに結果を格納する。Ｓ１１２からメインインストーラがＳ１１９はインストール結果コードからインストール失敗原因を判定する処理である。本実施例ではインストール結果コードの１０，１１，１２，１３がそれぞれモジュール不足エラー、ＨＤＤ空き容量不足エラー、新バージョンインストール済みエラー、対応ＯＳエラーと定義されている。Ｓ１１２はインストール結果コードが１０かどうかメインインストーラが判定する処理である。インストール結果コードが１０と書き込まれていたとメインインストーラが判断したならＳ１１３へ分岐する。そうでなければＳ１１４へ進む。Ｓ１１３はインストール失敗原因がモジュール不足であったことをエラーフラグに記憶する処理である。Ｓ１１４はインストール結果コードが１１がどうかをメインインストーラが判定する処理である。インストール結果コードが１１ならＳ１１５へメインインストーラの処理は分岐する。そうでなければメインインストーラの処理はＳ１１６へ進む。Ｓ１１５はインストール失敗原因が空き容量不足であったことをエラーフラグに記憶する処理である。Ｓ１１６はインストール結果コードが１２かどうか判定する処理である。インストール結果コードが１２ならＳ１１７へメインインストーラの処理は分岐する。そうでなければメインインストーラの処理はＳ１１８へ進む。Ｓ１１７はインストール失敗原因が、新しいバージョンがインストール済みであることをエラーフラグにメインインストーラが記憶する処理である。Ｓ１１８はインストール結果コードが１３かどうかメインインストーラが判定する処理である。インストール結果コードが１３ならメインインストーラの処理はＳ１１９へ分岐する。そうでなければＳ１２０へ進む。Ｓ１１９では、インストール失敗原因が対応ＯＳ以外のＯＳにインストールしたことを意味する。Ｓ１２０は未定義のエラーが発生したことをエラーフラグに記憶する処理である。Ｓ１２１ではＳ１１２からＳ１２０の判定結果をメインインストーラが表示する処理である。Ｓ１２２は全てのアプリケーションソフトのインストール結果をメインインストーラが判定するステップである。全てのアプリケーションソフトのインストール結果として上記で記憶したエラーフラグを元に表示したら終了する。そうでなければＳ１０７へ戻る。
【００１８】
エラーフラグが読み出され、それぞれの原因を表す人に可読のメッセージがダイアログに表示される。
【００１９】
図４は本実施例を実行したときのインストール結果画面を示したものである。この例ではプリンタドライバはインストールが成功したこと、電子マニュアルはＨＤＤの空き容量が不足したこと、イージー画像プリントというアプリケーションソフトは新しいバージョンがインストール済みであることを示している。本実施例ではインストール結果とその原因を同一画面上に表示しているが、別画面、例えばＴＯＯＬＴＩＰを用いて原因を表示しても構わない。
【００２０】
さらに別の実施例を説明する。本実施例はインストーラの処理結果を使わず、呼び出し側が保持するインストール情報に基づいてエラー情報を一括して表示するものである。ハードウェア構成は前述の実施例と同じである。
【００２１】
次に本実施例を実現するためのフローチャートを説明する。図５はフローチャートである。以下に各ステップの処理を説明する。処理は大きく分けてインストーラの実行と、インストール結果表示に分けられる。
【００２２】
Ｓ２０１はアプリケーションインストール情報テーブルを読み込む処理である。本実施例のアプリケーションインストール情報テーブルにはアプリケーションソフト名称、アプリケーションソフトファイル名、アプリケーションソフトバージョン情報、アプリケーションソフトインストーラファイル名、必要ＨＤＤ空き容量情報、対応ＯＳ情報、必要モジュールファイル名、必要モジュールバージョン情報、必要モジュールＵＲＬ情報をメインインストーラが保持する。前半４つの情報はアプリケーションソフト情報であり、残りはインストール成否判断情報である。図６に３つのソフトウェアをインストールする場合のアプリケーション情報テーブルの例を示す。第一のソフトウェアの名称は「プリンタドライバ」である。ファイル名はｐｒｎｄｒｖ．ｄｌｌである。複数のファイルで構成される場合は複数のファイル名を記述してよい。バージョン番号は８．０．０である。インストーラファイル名はＣＤのルートディレクトリからの相対パス表現となる。プリンタドライバの場合は．￥ｄｒｖ￥ｓｅｔｕｐ．ｅｘｅである。必要ＨＤＤ空き容量は１０ＭＢである。対応ＯＳはＯＳ９８とＯＳ２０００とＯＳ３０００である。必要モジュールはない。第二のソフトウェアの名称は「電子マニュアル」である。ファイル名はｐｒｎｄｒｖ．ｈｌｐである。バージョン番号は８．０．０である。インストーラファイル名は．￥ｅｍａｎｕａｌ￥ｓｅｔｕｐ．ｅｘｅである。必要ＨＤＤ空き容量は５０ＭＢである。対応ＯＳはＯＳ９８とＯＳ２０００とＯＳ３０００である。必要モジュールはＬＩＢＤＥＦ．ＤＬＬである。必要モジュールのバージョンは２．０．０である。必要モジュールのインターネット上の存在場所はｈｔｔｐ：／／ｗｗｗ．ｄｅｆ．ｏｒｇ／ｌｉｂｄｅｆ．ｄｌｌである。第三のソフトウェアの名称は「イージー画像プリント」である。ファイル名はｅｇｐ．ｅｘｅである。バージョン番号は３．１．０である。インストーラファイル名は．￥ｅｇｐ￥ｓｅｔｕｐ．ｅｘｅである。必要ＨＤＤ空き容量は２０ＭＢである。対応ＯＳはＯＳ２０００とＯＳ３０００である。必要モジュールはＬＩＢＡＢＣ．ＤＬＬとＬＩＢＸＹＺ．ＤＬＬであり、それぞれバージョン１．０．０とバージョン２．０．０を必要とする。必要モジュールのインターネット上の存在場所はｈｔｔｐ：／／ｗｗｗ．ａｂｃ．ｏｒｇ／ｌｉｂａｂｃ．ｄｌｌとｈｔｔｐ：／／ｗｗｗ．ｘｙｚ．ｃｏ．ｊｐ／ｌｉｂｘｙｚ．ｄｌｌである。
【００２３】
Ｓ２０２は、メインインストーラが、アプリケーションインストーラを実行指示する処理である。アプリケーションインストール情報テーブルのアプリケーションソフトインストールファイル名に従いインストーラファイルを起動することでアプリケーションインストーラは起動する。Ｓ２０３では、メインインストーラは、アプリケーションインストーラの処理が完了するまで待つ処理を行なう。アプリケーションインストーラのインストールの処理が完了したらＳ２０４へ進む。Ｓ２０４は全てのアプリケーションインストーラを実行したかメインインストーラが判定する処理である。全てのアプリケーションインストーラを実行し終えたらＳ２０５へ進む。また実行していないアプリケーションインストーラがあればメインインストーラの処理はＳ２０２へ戻る。以上でインストーラの実行処理は終了である。
【００２４】
Ｓ２０５はアプリケーションインストール情報テーブルからインストール成否判断情報をメインインストーラが取得する処理である。Ｓ２０６はＳ２０５で取得したインストール成否判断情報を元にインストールの成否を判定する。本実施例ではアプリケーションソフトファイル名とアプリケーションソフトバージョン情報を元に、このファイルがＨＤＤにコピー済みかどうかをメインインストーラが判定する。ＨＤＤに予めメインインストーラに知らされているインストールされているべきファイルがきちんと存在し、バージョン番号も同じならインストール成功とメインインストーラは判断する。一方、ファイルが存在しない、またはファイルが存在してもバージョンが異なるならインストール失敗とメインインストーラは判断する。例えば図５のプリンタドライバであれば、ｐｒｎｄｒｖ．ｄｌｌがＨＤＤ上に存在し、バージョンが８．０．０ならインストールに成功したと判定する。Ｓ２０７はＳ２０６の判定結果に従い処理を分岐する処理である。インストール成功と判定した場合はメインインストーラの処理はＳ２０８へ進む。インストール失敗とメインインストーラが判定した場合はメインインストーラの処理がＳ２０９へ進む。Ｓ２０８はインストール成功をメインインストーラがＯＳを介してビデオドライバを用いて表示制御する処理である。
【００２５】
Ｓ２０９からＳ２１９はエラー判定処理である。複数のエラーが発生している可能性があるため以下に説明するエラーフラグは個別に用意する。Ｓ２０９はエラーフラグとエラー詳細情報フラグメインインストーラが初期化する処理である。エラーフラグはどのようなエラーが発生したかを、エラー詳細情報フラグはエラーの回避条件などの詳細情報を保存するフラグである。Ｓ２１０はアプリケーションインストール情報テーブルのＨＤＤ空き容量情報をメインインストーラが取得する処理である。Ｓ２１１はＨＤＤの空き容量がＳ２１０で取得した数値以上空いているか調べ、空き容量が少なければＳ２１２へメインインストーラの処理が分岐する。空き容量が十分あればメインインストーラの処理がＳ２１３へ進む。Ｓ２１２へＨＤＤ空き容量不足エラーをエラーフラグにメインインストーラが保存し、エラー回避条件としてＳ２１０でメインインストーラが取得した数値をエラー詳細情報フラグにメインインストーラが保存する。Ｓ２１３はアプリケーションインストール情報テーブルの対応ＯＳ情報をメインインストーラが取得する。Ｓ２１４では実行中のＯＳが対応ＯＳに含まれているかメインインストーラが調べる。対応ＯＳに含まれていなければメインインストーラの処理がＳ２１５へ分岐する。対応ＯＳに含まれていればメインインストーラの処理がＳ２１６へ進む。Ｓ２１５は対応ＯＳエラーをエラーフラグに保存し、エラー回避条件としてＳ２１３でメインインストーラが取得したＯＳ情報をエラー詳細情報フラグにメインインストーラが保存する処理である。Ｓ２１６はアプリケーションインストール情報テーブルから必要モジュールファイル名と必要モジュールバージョン情報をメインインストーラが取得する処理である。Ｓ２１７は必要モジュールファイル名で示されたファイルがインストール済みか、またそのファイルのバージョンは必要モジュールバージョン情報と一致するか、より新しいバージョンであるかをメインインストーラが調べ、必要モジュールが存在しない、またはバージョンが古い場合はＳ２１８へメインインストーラの処理が分岐する。バージョンが一致するかまたは新しいバージョンならＳ２１９へメインインストーラの処理が進む。Ｓ２１８はモジュール不足エラーをエラーフラグにメインインストーラが保存する処理し、Ｓ２１６で取得したモジュールファイルとバージョン情報をエラー詳細情報フラグにメインインストーラが保存する処理である。Ｓ２１９はアプリケーションインストール情報テーブルからアプリケーションソフトファイル名とファイルバージョンをメインインストーラが取得する処理である。Ｓ２２０はインストール済みのアプリケーションソフトを調べ、新しいバージョンがインストールされている場合Ｓ２２１へメインインストーラの処理が分岐する。ファイルが存在しない、または古いバージョンが存在する場合はメインインストーラの処理がＳ２２２へ進む。Ｓ２２１は新バージョンインストール済みエラーをエラーフラグにメインインストーラが保存する処理である。Ｓ２２２はエラーフラグにエラー情報が保存されているかメインインストーラが判定する処理である。エラー情報が保存されていなければメインインストーラの処理がＳ２２３へ分岐する。エラー情報が保存されていればメインインストーラの処理がＳ２２４へ進む。Ｓ２２３は未定義エラーをエラーフラグにメインインストーラが保存する処理である。これはアプリケーションインストール情報テーブルを元にした原因判定処理で特定できないインストール失敗が発生したことを意味する。Ｓ２２４はエラーフラグの結果に従いエラー表示を行ない、エラー詳細情報フラグに情報があればこの情報も表示する。
【００２６】
Ｓ２２５は全てのアプリケーションソフトのインストール結果をメインインストーラが判定するステップである。全てのアプリケーションソフトのインストール結果をメインインストーラが表示したら終了する。そうでなければＳ２０５へ戻る。
【００２７】
本実施例を実行したときのインストール結果画面を図７に示す。この例では「電子マニュアル」のエラー原因としてＨＤＤ空き容量不足とモジュール不足エラーが示されており、さらに詳細情報として必要な空き容量が５０ＭＢであり、必要なモジュールがＬＩＢＤＥＦ．ＤＬＬのバージョン２．０．０であることがわかる。
【００２８】
もう一つ別の実施例を説明する。本実施例はインストーラの処理結果を元に対処方法を実行するものである。ハードウェア構成は前述の実施例と同じである（図２参照）。
【００２９】
次に本実施例を実現するためのフローチャートを説明する。図８はメインインストーラの処理を示すフローチャートである。処理の前半は直前の実施例と同じなので省略する。直前の実施例のＳ２２５の次がＳ３０１となる。
【００３０】
Ｓ３０１は対策可能なインストール失敗が存在するか判定する処理である。対策可能なインストール失敗とは、本実施例の場合ＨＤＤ空き容量不足エラー、モジュール不足エラーである。この場合Ｓ３０２へ進む。対応できないインストール失敗とは、対応ＯＳエラー、新バージョンインストール済みエラー、未定義エラーである。この場合処理を終了する。Ｓ３０２はインストール失敗対策を実行してよいかユーザに確認する処理である。Ｓ３０３はインストール失敗対策を実行することが選ばれたか判定する処理である。インストール失敗対策を実行することが選ばれた場合はＳ３０４へ進む。図７は本実施例におけるＳ３０２で表示される確認画面である。図７は電子マニュアルとイージー画像プリントというソフトウェアのインストールに失敗したこと、それぞれＨＤＤ空き容量不足エラーと必要モジュール不足エラーが発生していることを示している。図７の画面で［次へ］をクリックすると図９へ進み（Ｓ３０３）、図９でさらに次へボタンを押すと、Ｓ３０３でメインインストーラが再インストール（回復インストール）を続行する指示が入力されたと判断してＳ３０４へ進む。Ｓ３０３で図１０の終了ボタンがおされたとメインインストーラが認識すると、再インストールをユーザが中止する指示を入力したとメインインストーラがＳ３０３で判断して処理を終了する。
【００３１】
Ｓ３０４はＨＤＤ空き容量不足エラーが発生しているか判定する処理である。空き容量不足が発生しているならＳ３０５へ進み、発生していなければＳ３１１へ進む。Ｓ３０５は不要なファイルを削除し空き容量を確保する処理である。本実施例ではＯＳの「ごみ箱」内のファイルとテンポラリディレクト内のファイルと、ブラウザのキャッシュファイルの削除を行なう。Ｓ３０６はＳ３０５のファイル削除によって空き容量不足が解消したか判断する処理である。空き容量が確保できればＳ３１３へ進む。空き容量が確保できなければＳ３０７へ進む。Ｓ３０７はＨＤＤを圧縮するか確認する処理である。Ｓ３０８はユーザは圧縮することを選んだかどうか判定する処理である。圧縮するが選ばれるとＳ３０９へ分岐し、圧縮しないが選ばれるとＳ３１０へ進む。Ｓ３０９はＨＤＤを圧縮する処理である。圧縮については、インストーラがＯＳ又は圧縮ソフトウェアを呼び出して処理させてもよい。Ｓ３１０は空き容量不足が解消したか判断する処理である。空き容量が確保できればＳ３１３へ進む。空き容量がまだ確保できなければＳ３１１へ進む。Ｓ３１１は削除ファイルを選択する処理である。Ｓ３１２はＳ３１１で選択されたファイルを削除する処理である。削除後Ｓ３１０へ戻る。
【００３２】
Ｓ３１３はモジュール不足エラーが発生しているかどうか判定する処理である。モジュール不足エラーが発生しているならＳ３１４へ進む。発生していなければＳ３１７へ進む。Ｓ３１４はモジュールがＣＤＲＯＭ内に存在するか判定する処理である。ＣＤＲＯＭ内に存在しないならＳ３１５へ進み、存在するならＳ３１６へ進む。Ｓ３１５はアプリケーションインストール情報テーブルからモジュールの存在するＵＲＬを取得し、インターネット経由でダウンロードする処理である。必要なモジュールは可能であればＣＤＲＯＭに格納しておくので、ＣＤＲＯＭにファイルが存在するならこちらを使う。ＣＤＲＯＭ容量の関係や、配布条件などが合わなければＣＤＲＯＭに格納できないため、インターネット経由でダウンロードする。Ｓ３１６はモジュールのインストール処理である。
【００３３】
Ｓ３１７は再度インストールするかユーザに確認する処理である。Ｓ３１８は再インストールすることが選ばれたかどうか判定する処理である。再インストールすることが選ばれたらＳ２０１へ戻る。再インストールしないことが選ばれたら終了する。図８はＳ３１７で表示される本実施例における再インストール確認画面である。［次へ］をクリックするとＳ２０１へ戻る。
【００３４】
インストール失敗の回避策を自動的に実行し再度インストール処理を行うことができるため、コンピュータに詳しくないユーザであってもインストール処理を実行することが可能となる。
【００３５】
以上説明したように、複数のプログラムの一例である図６のテーブルで管理されるアプリケーションやプリンタドライバをインストールするインストールプログラムを実施形態において開示した。また、インストーラは、ＯＳを介してビデオドライバを制御して、これらの複数のプログラムのインストールが失敗した場合、当該複数のプログラムのインストール処理における複数の失敗の原因を図４や図７、図９、図１０の形態で、図２の表示機Ｈ１０３に表示させることができる。
【００３６】
また、インストーラは、複数のプログラムごとに、それぞれのプログラムのインストールが成功したか否かを判定し、判定結果に基づいて、インストールが失敗したプログラムと当該失敗の原因を表示することもできる。本実施形態でインストールされるのは、プリンタドライバ及び電子マニュアル、イージー画像プリントなどの画像処理ソフトウェアやデータなどであるが、インストールされるものであれば、プログラムや他のデータ等にも適用できることは言うまでもない。
【００３７】
また、インストーラは、記憶領域の空き容量を示す情報、又は、オペレーティングシステムに関する情報、又は、プログラムが動作するために必要なモジュールを示す情報を用いて、エラーが生じたかどうかを判定する。
【００３８】
また、インストーラは、判定結果を用いて、インストール失敗の原因として図２の表示機Ｈ１０３に表示することができる。
【００３９】
また、インストーラはインストール結果の判定結果に応じて、前記インストールの失敗を回復するための回復インストール処理を行なう。
【００４０】
また、インストーラは、記憶領域の空き容量が不足したためにインストールが失敗したと判定した場合に、回復インストール手段は、インストールための空き容量を確保して、再度インストール処理を行なう。
【００４１】
また、プログラムが動作するために必要なモジュールがインストールされなかったためにインストールが失敗したとインストーラが判定した場合に、インストーラは、必要なモジュールをインストールすることもできる。
【００４２】
また、インストーラは、インストールの失敗原因を示すメッセージと共に、前記インストールの失敗を回復する回復インストールを指示するための表示ボタン（例えば図９の「次へ」ボタンがこれに相当する。）を表示することもできる。
【００４３】
（他の実施形態）
本実施形態における各図に示す処理が、外部からインストールされるプログラムによって、それぞれの装置より遂行される。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群をホストコンピュータに供給される場合でも本発明は適用されるものである。
【００４４】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、又は、外部サーバ（図示省略）からダウンロードすることで、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【００４５】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、たとえば、フロッピィーディスク、ハードディスク、光ディスク、光磁気ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ等を用いることができる。
【００４６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００４７】
【図１】インストール結果画面である。
【図２】ハードウェアブロック図である。
【図３】実施例におけるフローチャートである。
【図４】実施例におけるインストール結果画面である。
【図５】実施例におけるフローチャートである。
【図６】アプリケーションインストール情報テーブルの一例を示す図である。
【図７】実施例におけるインストール結果画面の一例を示す図である。
【図８】実施例におけるフローチャートを示す図である。
【図９】実施例におけるインストール失敗対策画面の一例を示す図である。
【図１０】実施例における再インストール画面の一例を示す図である。
【図１】
2007004679.tif 000003
【図２】
2007004679.tif 000004
【図３】
2007004679.tif 000005
【図４】
2007004679.tif 000006
【図５】
2007004679.tif 000007
【図６】
2007004679.tif 000008
【図７】
2007004679.tif 000009
【図８】
2007004679.tif 000010
【図９】
2007004679.tif 000011
【図１０】
2007004679.tif 000012