(57)【特許請求の範囲】
【請求項１】
デバイスドライバのインストール情報を記述したテキストタイプの情報ファイルであってコンピュータの情報ファイル用のディレクトリに保存された情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して再構築された同コンピュータのドライバ情報データベースに、予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には、当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを同コンピュータにインストール可能であり、格納されていない場合には、外部のディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを同コンピュータにインストールするインストール装置であって、
上記ドライバ情報データベースに上記インストールしようとしているデバイスドライバのインストール情報が格納されている場合に、当該格納されているインストール情報のバージョンと上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報のバージョンとを対比してどちらが古いかを判断する判断手段と、
上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合に、上記情報ファイル用のディレクトリ内に保存されている情報ファイルの中から上記インストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを削除する削除手段と、
上記削除手段にて上記情報ファイルが削除された場合に、削除後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する再構築手段と、
上記判断手段の判断の後であって同判断手段にて上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合には上記再構築手段にて上記ドライバ情報データベースが再構築された後において、上記ドライバ情報データベースに上記予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを上記コンピュータにインストール可能であり、格納されていない場合には上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを上記コンピュータにインストールする手段とを具備することを特徴とするインストール装置。
【請求項２】
上記請求項１に記載のインストール装置において、
上記ディスクに記録されたインストールしようとしているデバイスドライバが上記コンピュータにインストールされた場合に、当該ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを上記情報ファイル用のディレクトリにコピーし、コピー後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する手段をさらに備えることを特徴とするインストール装置。
【請求項３】
デバイスドライバのインストール情報を記述したテキストタイプの情報ファイルであってコンピュータの情報ファイル用のディレクトリに保存された情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して再構築された同コンピュータのドライバ情報データベースに、予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には、当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを同コンピュータにインストール可能であり、格納されていない場合には、外部のディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを同コンピュータにインストールするインストール方法であって、
上記コンピュータにて、上記ドライバ情報データベースに上記インストールしようとしているデバイスドライバのインストール情報が格納されている場合に、当該格納されているインストール情報のバージョンと上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報のバージョンとを対比してどちらが古いかを判断する判断工程と、
上記コンピュータにて、上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合に、上記情報ファイル用のディレクトリ内に保存されている情報ファイルの中から上記インストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを削除する削除工程と、
上記コンピュータにて、上記削除工程にて上記情報ファイルが削除された場合に、削除後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する再構築工程と、
上記コンピュータにて、上記判断工程の判断の後であって同判断工程にて上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合には上記再構築工程にて上記ドライバ情報データベースが再構築された後において、上記ドライバ情報データベースに上記予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを上記コンピュータにインストール可能であり、格納されていない場合には上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを上記コンピュータにインストールする工程とを具備することを特徴とするインストール方法。
【請求項４】
デバイスドライバのインストール情報を記述したテキストタイプの情報ファイルであってコンピュータの情報ファイル用のディレクトリに保存された情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して再構築された同コンピュータのドライバ情報データベースに、予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には、当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを同コンピュータにインストールさせることが可能であり、格納されていない場合には、外部のディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを同コンピュータにインストールさせるためのインストールプログラムを記録した媒体であって、
上記コンピュータに、
上記ドライバ情報データベースに上記インストールしようとしているデバイスドライバのインストール情報が格納されている場合に、当該格納されているインストール情報のバージョンと上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報のバージョンとを対比してどちらが古いかを判断する判断ステップと、
上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合に、上記情報ファイル用のディレクトリ内に保存されている情報ファイルの中から上記インストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを削除する削除ステップと、
上記削除ステップにて上記情報ファイルが削除された場合に、削除後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する再構築ステップと、
上記判断ステップの判断の後であって同判断ステップにて上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合には上記再構築ステップにて上記ドライバ情報データベースが再構築された後において、上記ドライバ情報データベースに上記予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを上記コンピュータにインストール可能であり、格納されていない場合には上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを上記コンピュータにインストールするステップとを実行させるためのインストールプログラムを記録した媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、インストール装置、インストール方法およびインストールプログラムを記録した媒体に関する。
【０００２】
【従来の技術】
近年のコンピュータでは、各種のハードウェアを制御できるようにするため、デバイスドライバが利用されており、このデバイスドライバはコンピュータにインストールされて利用可能となる。このデバイスドライバをインストールするためには、デバイスドライバ情報データベースが利用される。
【０００３】
デバイスドライバ情報データベースは、コンピュータシステムに予め用意されているか、過去にインストールされたことのあるデバイスドライバの情報ファイルをもとに、システム固有の構造にコンパイル（形式化）し、結合されたものである。
【０００４】
デバイスドライバ情報データベースを利用する際には、予め組み込まれているデバイスドライバを対応するハードウェアの一覧として表示して選択できるようにしつつ、これに含まれていない場合にはハードウェアと一緒に供給されるフレキシブルディスクなどから情報ファイルを取り込めるようになっている。そして、指定された情報ファイルに記載されたインストール情報に基づいて必要なデバイスドライバファイルをコンピュータ内に取り込んでインストール作業を終了する。
【０００５】
【発明が解決しようとする課題】
デバイスドライバは適宜改良される性質を有しているが、上述した従来のコンピュータにおいては、インストールしようとしているデバイスドライバについての古いインストール情報がデータベースに組み込まれていると、古い情報に基づいてデバイスドライバをインストールしてしまったり、あるいは、インストールをうまく行えないという課題があった。
【０００６】
本発明は、上記課題にかんがみてなされたもので、古いインストール情報に基づいてデバイスドライバをインストールしてしまうことを未然に防ぐことが可能なインストール装置、インストール方法およびインストールプログラムを記録した媒体の提供を目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するため、請求項１にかかる発明は、デバイスドライバのインストール情報を記述したテキストタイプの情報ファイルであってコンピュータの情報ファイル用のディレクトリに保存された情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して再構築された同コンピュータのドライバ情報データベースに、予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には、当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを同コンピュータにインストール可能であり、格納されていない場合には、外部のディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを同コンピュータにインストールするインストール装置であって、上記ドライバ情報データベースに上記インストールしようとしているデバイスドライバのインストール情報が格納されている場合に、当該格納されているインストール情報のバージョンと上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報のバージョンとを対比してどちらが古いかを判断する判断手段と、上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合に、上記情報ファイル用のディレクトリ内に保存されている情報ファイルの中から上記インストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを削除する削除手段と、上記削除手段にて上記情報ファイルが削除された場合に、削除後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する再構築手段と、上記判断手段の判断の後であって同判断手段にて上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合には上記再構築手段にて上記ドライバ情報データベースが再構築された後において、上記ドライバ情報データベースに上記予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを上記コンピュータにインストール可能であり、格納されていない場合には上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを上記コンピュータにインストールする手段とを具備する構成としてある。
【０００８】
上記のように構成した請求項１にかかる発明においては、ドライバ情報データベースに上記インストールしようとしているデバイスドライバのインストール情報が格納されている場合に、当該ドライバ情報データベースに格納されているインストール情報のバージョンと外部のディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報のバージョンとでどちらが古いかを判断する。そして、ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合に、情報ファイル用のディレクトリ内に保存されている情報ファイルの中から上記インストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを削除して上記ドライバ情報データベースを構成し直す。
【０００９】
これによりインストールウィザードが起動される前、インストールしようとしているデバイスドライバについて古い情報ファイルがあった場合には、ドライバ情報データベースから削除されている。従って、このような場合には、インストールウィザードの表示欄にインストールしようとするデバイスドライバが表示されず、「ディスク使用」のコマンドボタンを実行させなければならない。そして、このことは誤って古い情報ファイルに基づいてデバイスドライバをインストールしてしまうことを防止することができることを意味する。
【００１０】
さらに、請求項２にかかる発明は、請求項１に記載のインストール装置において、上記ディスクに記録されたインストールしようとしているデバイスドライバが上記コンピュータにインストールされた場合に、当該ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを上記情報ファイル用のディレクトリにコピーし、コピー後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する手段をさらに備える構成としてある。
【００１１】
上記のように構成した請求項２にかかる発明において、外部のディスクに記録されたインストールしようとしているデバイスドライバが上記コンピュータにインストールされた場合に、当該ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを上記情報ファイル用のディレクトリにコピーし、コピー後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合してドライバ情報データベースを再構築する。
【００１２】
むろん、このようなインストール装置は単独で実施される場合もあるし、ある機器に組み込まれた状態で他の方法とともに実施されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものであって、適宜、変更可能である。
【００１３】
また、方法としても適用可能であることは容易に理解できる。このため、請求項３にかかる発明は、デバイスドライバのインストール情報を記述したテキストタイプの情報ファイルであってコンピュータの情報ファイル用のディレクトリに保存された情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して再構築された同コンピュータのドライバ情報データベースに、予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には、当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを同コンピュータにインストール可能であり、格納されていない場合には、外部のディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを同コンピュータにインストールするインストール方法であって、上記コンピュータにて、上記ドライバ情報データベースに上記インストールしようとしているデバイスドライバのインストール情報が格納されている場合に、当該格納されているインストール情報のバージョンと上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報のバージョンとを対比してどちらが古いかを判断する判断工程と、上記コンピュータにて、上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合に、上記情報ファイル用のディレクトリ内に保存されている情報ファイルの中から上記インストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを削除する削除工程と、上記コンピュータにて、上記削除工程にて上記情報ファイルが削除された場合に、削除後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する再構築工程と、上記コンピュータにて、上記判断工程の判断の後であって同判断工程にて上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合には上記再構築工程にて上記ドライバ情報データベースが再構築された後において、上記ドライバ情報データベースに上記予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを上記コンピュータにインストール可能であり、格納されていない場合には上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを上記コンピュータにインストールする工程とを具備する構成としてある。
【００１４】
すなわち、方法としても有効であることに相違はない。
【００１５】
さらに、請求項４にかかる発明は、デバイスドライバのインストール情報を記述したテキストタイプの情報ファイルであってコンピュータの情報ファイル用のディレクトリに保存された情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して再構築された同コンピュータのドライバ情報データベースに、予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には、当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを同コンピュータにインストールさせることが可能であり、格納されていない場合には、外部のディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを同コンピュータにインストールさせるためのインストールプログラムを記録した媒体であって、上記コンピュータに、上記ドライバ情報データベースに上記インストールしようとしているデバイスドライバのインストール情報が格納されている場合に、当該格納されているインストール情報のバージョンと上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報のバージョンとを対比してどちらが古いかを判断する判断ステップと、上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合に、上記情報ファイル用のディレクトリ内に保存されている情報ファイルの中から上記インストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルを削除する削除ステップと、上記削除ステップにて上記情報ファイルが削除された場合に、削除後に同情報ファイル用のディレクトリに保存されている情報ファイルを中間ファイルにコンパイルしつつ同中間ファイルを並び替えて結合して上記ドライバ情報データベースを再構築する再構築ステップと、上記判断ステップの判断の後であって同判断ステップにて上記ドライバ情報データベースに格納されているインストール情報のバージョンの方が古いと判断された場合には上記再構築ステップにて上記ドライバ情報データベースが再構築された後において、上記ドライバ情報データベースに上記予め決定されているインストールしようとしているデバイスドライバのインストール情報が格納されている場合には当該格納されているインストール情報を利用して当該インストールしようとしているデバイスドライバを上記コンピュータにインストール可能であり、格納されていない場合には上記ディスクに記録されたインストールしようとしているデバイスドライバのインストール情報を記述した情報ファイルに記述されたインストール情報を利用して当該ディスクに記録されたインストールしようとしているデバイスドライバを上記コンピュータにインストールするステップとを実行させるためのインストールプログラムを記録した媒体の構成としてある。
【００１６】
むろん、このような記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。
【００１７】
さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものではなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。
【００１８】
【発明の効果】
以上説明したように本発明は、古い情報に基づいてデバイスドライバをインストールしてしまうことを防止することが可能なインストール装置を提供することができる。
さらに、請求項２にかかる発明によれば、新たに外部のディスクから情報ファイル用のディレクトリにコピーした情報ファイルを含んだデータベースが再構築される。
さらに、請求項３にかかる発明によれば、同様の効果を奏するインストール方法を提供することができ、請求項４にかかる発明によれば、インストールプログラムを記録した媒体を提供することができる。
【００１９】
【発明の実施の形態】
以下、図面にもとづいて本発明の実施形態を説明する。
図１は、本発明の一実施形態にかかるインストールプログラム（インストーラ）の概略フローを示しており、図２は典型的なパソコン１０の概略構成を示している。ここで、まずハードウェアとしてのパソコン１０の構成について説明する。
【００２０】
パソコン１０は演算処理の中枢をなすＣＰＵ１１を備えており、このＣＰＵ１１にはＣＰＵバス１２を介して二次キャッシュ１３やデータバスユニット１４やシステムコントローラ１５が接続されている。近年のパソコンでは処理効率を向上させるためにＣＰＵバス１２のクロックスピードを上げており、遅いメモリ１６はデータバスユニット１４やシステムコントローラ１５を介してＣＰＵ１１によってアクセスされるようになっている。なお、このメモリ１６にはバイオスエリアなどのＲＯＭエリアとともにＲＡＭエリアも含まれている。
【００２１】
同様にインターフェイス類も速いＣＰＵバス１２と直に接続することはできず、データバスユニット１４やシステムコントローラ１５によって汎用高速バスであるＰＣＩバス１７が提供されている。このＰＣＩバス１７にはパソコン１０自体が直接持つＰＳ／２ポートやパラレルポートやシリアルポートなどの通信用インターフェイスとともにフロッピーディスクを接続するための共通インターフェイス１８が接続され、また、特に高速性を要求されるハードディスクやＣＤ−ＲＯＭを接続してＤＭＡ転送させるためのバスマスタ１９も接続されている。
【００２２】
ＰＣＩバスには直にＰＣＩデバイス２１を接続できるほか、ＩＳＡブリッジ２２を介してデータ幅の狭い旧式の汎用バスであるＩＳＡバス２３を提供しており、このＩＳＡバス２３を介してＩＳＡデバイス２４を接続できるようになっている。
【００２３】
図３はこのパソコン１０に対する周辺機器を示しており、キーボード２５とマウス２６はＰＳ／２ポートを介して、プリンタ２７はパラレルポートを介して、モデム２８はシリアルポートを介してそれぞれ共通インターフェイス１８に接続されている。スキャナ２９はＰＣＩデバイス２１としてのＳＣＳＩカード２１ａを介してＰＣＩバス１７に接続され、このＳＣＳＩカード２１ａに対しては各種の外部機器を接続可能であり、光磁気記憶装置３２などを接続したりすることができる。また、ディスプレイ３１は、ディスプレイコントローラカード２１ｂを介して接続され、ハードディスク１９ａとＣＤ−ＲＯＭドライブ１９ｂはバスマスタ１９を介してＰＣＩバス１７に接続されている。
【００２４】
ＩＳＡデバイス２４としてはさまざまな機器が提供されているが、ＰＣＭＣＩＡカード２４ａを利用すればＰＣＭＣＩＡカードソケットを３３を接続でき、画像データを記録したメモリカード３４を装着してデータの入出力が容易になる。このメモリカード３４はデジタルスチルカメラ３５であるとか、他のモバイルパソコンなどからのデータを入力することも容易である。
【００２５】
パソコン１０にはこれらの他にもビデオカードを介して外部ディスプレイを接続する他、ＬＡＮカードを接続してネットワークに接続することが可能であるし、赤外線通信装置を介して他の外部機器と接続したりすることも可能である。
【００２６】
以上がパソコンシステムのハードウェアの概略構成であり、かかるハードウェアを前提として、パソコン１０上では図４に示す態様でソフトウェアが実行されている。すなわち、上記ハードウェア４１を基礎としてバイオス４２が実行され、その上層にてオペレーティングシステム４３とアプリケーション４４が実行される。基本的にはオペレーティングシステム４３がバイオス４２を介するか直にハードウェア４１とアクセスし、アプリケーション４４はこのオペレーティングシステム４３を介してハードウェア４１とデータなどのやりとりを行う。例えば、ハードディスク１９ａからデータを読み込むには、オペレーティングシステム４３を介してハードウェア４１にアクセスする。この他、オペレーティングシステム４３にはハードウェア４１を制御するための各種のデバイスドライバを組み込むことが可能であり、組み込まれたデバイスドライバ類はオペレーティングシステム４３の一部となって各種の制御を実行する。
【００２７】
このようなデバイスドライバは予めシステムに組み込まれているものもあるし、新たにハードウェアを接続したときに組み込む必要が生じるものもある。前者の類として、ビデオカードを介して外部のディスプレイ３１への表示を制御するためのディスプレイドライバなどがあり、後者の類として、プリンタ２７への印字制御を実行するプリンタドライバなどがあるが、特にこれらを区別する必要もない。デバイスドライバを追加する際にはドライバ情報データベースを参照してインストール作業を実行する。
【００２８】
図５はこのドライバ情報データベースの構造を示している。プリンタ２７を制御するためのプリンタドライバを例にすると、当該プリンタ２７の製造メーカーなどは当該プリンタ２７を各種のオペレーティングシステム４３のもとで制御できるようにするためのデバイスドライバを記録したフレキシブルディスクなどを製品とともに出荷する。デバイスドライバは、通常、オペレーティングシステム４３ごとに相違するので、適当なデバイスドライバをインストールさせるためにインストール情報を記述した情報ファイル（ｉｎｆファイル）もフレキシブルディスクなどに記録されて提供される。
【００２９】
同図右欄にはテキストタイプで記述された情報ファイルの中身を示している。この情報ファイルに要求される形式は、
１．一つの情報ごとに改行されること
２．予め決められている分類項目は［］でくくること
３．［］でくくられた分類項目行に続いて、当該分類項目に関連する情報を記載すること
という決まりはあるものの、分類項目の記載の順序などは自由である。従って、常にこの情報ファイルを参照してインストール作業を実行することになると、処理が煩雑になりかねない。ただ、この時点で決まりを細かくしすぎると、単に記載順序を誤っただけでもインストールに利用できなくなるなどの弊害があり、自由度は敢えて高めにしてある。また、テキストタイプの記述としているのは、加筆・修正などが容易になるというメリットもあるからである。
【００３０】
このようなテキストタイプの情報ファイルにおける長所・短所に鑑み、この情報ファイルをもとにして同図中欄に示すようなバイナリタイプの中間ファイルにコンパイルするとともに、バイナリタイプの複数の中間ファイルを結合してバイナリタイプのドライブ情報データベースを構築して利用している。
【００３１】
図６は、複数の情報ファイルから中間ファイルを生成して一つのデータベースに結合する過程を簡略化して示しており、図７は処理の概略を示すフローチャートである。予め決められているｉｎｆファイル用のディレクトリ内で全ての情報ファイルを中間ファイルにコンパイルし（ステップＳ２１０）、中間ファイル同士を所定の順序に並び替え（ステップＳ２２０）、並び替えた順序に従って中間ファイル同士を結合させる（ステップＳ２３０）。この結合時には、ファイル内容を検索できるようにするためのアロケーション情報も併せて生成している。
【００３２】
ここで、新たにデバイスドライバをインストールする際の処理について説明する。図１に示すインストーラが起動されると、まず、ステップＳ１００ではドライバ情報データベースに該当するデバイスドライバ（以下、ドライバと呼ぶ）が組み込まれているか判断する。各インストーラはインストールすべきドライバが決定されているので、その情報を利用してドライバ情報データベースを検索する。むろん、インストールすべきドライバ自体を特定するためのデータファイルを用意しておき、このデータファイルを読み込んでインストールすべきドライバを特定する汎用型の構成とすることも可能である。
【００３３】
検索した結果、該当するドライバがなければ古い情報に基づいてインストールすることはない。このため、ステップＳ１１０の判断を経て後述するステップＳ１６０のインストールウィザードを起動する。一方、ステップＳ１１０の判断でドライバがあると判断されると、ステップＳ１２０ではバージョンを比較する。データベースには中間ファイルの形態でバイナリタイプにコンパイルされたインストール情報が格納されているが、当該インストール情報のバージョンと、フレキシブルディスクなどに記録された情報ファイルであってインストーラがインストールしようとしている情報ファイルにおけるインストール情報のバージョンとを対比してどちらが古いかを判断する。
【００３４】
ただし、バージョンのデータは必ず存在するわけではないし、その名称も自由である。図１に示す例では、”［ＬａｓｔＵｐｄａｔｅ］”という分類項目があり、そこで最終更新日の日付”１９９８／１１／３０”が記録されている。一方のデータベース内にはコンパイルされてはいるものの、”ＬａｓｔＵｐｄａｔｅ＝１９９８／０１／０１”という情報が組み込まれている。
【００３５】
従って、ステップＳ１３０では既存のバージョンの方が古いと判断して、ステップＳ１４０で該当する情報ファイルを削除する。上述したようにデータベースを構築する元となる情報ファイルはｉｎｆファイルとして所定のディレクトリ内に全て保存されている。従って、このディレクトリ内で該当する元の情報ファイルを削除する。
【００３６】
削除したら、ステップＳ１５０では上述したドライバ情報データベース構築モジュールを起動する。すると、上述したように全ての情報ファイルを中間ファイルにコンパイルしつつ、中間ファイルを並び替えて結合してデータベースを再構築する。むろん、このようにして再構築したデータベースには、該当するドライバの情報ファイルは含まれていない。この過程を図８に示している。該当する情報ファイル（ｉｎｆ３）を削除して再構築するので、データベースには他の情報ファイル（ｉｎｆ１，ｉｎｆ２）のインストール情報だけが組み込まれることになる。
【００３７】
以上の流れをまとめると、次のようになる。
１．該当するドライバがもともとデータベースにない場合は、インストールウィザードを実行する時点でデータベースには当該ドライバのインストール情報は組み込まれていない。また、このデータベースには変更は加えられていない。
【００３８】
２．該当するドライバがあるものの新しいインストール情報がデータベースにある場合には、データベースに変更は加えられず、かつ、インストールウィザードを実行する時点でデータベースには当該ドライバのインストール情報が組み込まれている。
【００３９】
３．該当するドライバがデータベースにあったものの古い情報ファイルであった場合は、インストールウィザードを実行する時点でデータベースには当該ドライバのインストール情報は組み込まれておらず、かつ、このデータベース自体は再構築したものとなっている。
【００４０】
この状態でステップＳ１６０にてインストールウィザードを実行する。図９はインストールウィザードの処理をフローチャートにより示しており、図１０は表示・選択画面の一例を示している。
【００４１】
インストールウィザードが起動されると、まず、ステップＳ３００にてドライバ情報データベースに組み込まれているドライバを表示し、キーボード２５とマウス２６による選択を待機する。図１０に示す画面は、プリンタのドライバを追加する際のウィザード画面を示しており、左の表示欄Ｗ１１に製造元を表示し、いずれかの製造元を選択すると、当該製造元に対応する個々のプリンタが右の表示欄Ｗ１２に表示されるので、インストールしようとするプリンタを選択して反転させる。表示画面の下部には「戻る」、「次へ」、「キャンセル」というコマンドボタンＷ２１，Ｗ２２，Ｗ２３が配置され、インストールしようとしているプリンタが表示されて選択できた場合には「次へ」のコマンドボタンＷ２２を実行させる。すると、ステップＳ３１０にて既存のドライバを選択したと判断され、ステップＳ３２０にてデータベースに組み込まれているインストール情報を抽出し、ステップＳ３５０にて該当するドライバファイルをシステムにインストールする。
【００４２】
一方、表示欄Ｗ１１，Ｗ１２でインストールしようとするプリンタが表示されない場合には、「ディスク使用」のコマンドボタンＷ３１を実行させると、フレキシブルディスクなどから情報ファイルを供給することができる。この場合、ステップＳ３１０では既存のドライバを選択しなかったと判断され、ステップＳ３３０にてフラグをセットしつつステップＳ３４０にてフレキシブルディスクの情報ファイルからインストール情報を読み込む。
【００４３】
このインストールウィザードが起動される前、インストールしようとしているドライバについて古い情報ファイルがあった場合には、データベースから削除されている。従って、このような場合には、表示欄Ｗ１１，Ｗ１２でインストールしようとするプリンタが表示されず、「ディスク使用」のコマンドボタンＷ３１を実行させなければならない。そして、このことは誤って古い情報ファイルに基づいてドライバをインストールしてしまうことを防止できることを意味する。
【００４４】
ステップＳ３５０にて順調に該当するドライバファイルをインストールできたら、ステップＳ３６０ではステップＳ３３０にてセットされるフラグの状況を判定する。ここでは、ディスク使用でインストール情報を読み込んだ場合にはデータベースにも反映させる処理を行う。まず、ステップＳ３７０にて情報ファイルを上記所定のディレクトリにコピーし、ステップＳ３８０にてドライバ情報データベース構築モジュールを起動させる。すると、図１１に示すように、新たにコピーした情報ファイル（ｉｎｆ３１）を含んだデータベースが再構築される。
【００４５】
この例では、予め該当するドライバの情報ファイルを削除してデータベースを再構築しておき、このデータベースにドライバがないときには改めて情報ファイルをコピーしてデータベースを再構築する。従って、再構築の作業を２回繰り返すことになる。これは通常の処理手順をできるだけ利用することでインストールプログラムの負担を軽減させるメリットがあるが、作業時間の面では効率的ではない。これに対し、ステップＳ１４０で該当する情報ファイルを削除した後、フレキシブルディスクの情報ファイルを読み込む（ステップＳ３４０と同様の処理）とともに、その情報ファイルを上記所定のディレクトリに書き込み（ステップＳ３７０と同様の処理）、ステップＳ１５０でデータベースを再構築することも可能である。
【００４６】
このようにすれば、ステップＳ１６０にてインストールウィザードを実行させたときに表示欄Ｗ１１，Ｗ１２にて上記情報ファイルに含まれていたインストール情報が表示されるので、インストールしようとするプリンタは必ず見つかることになる。従って、ステップＳ３３０にてフラグをセットする処理は実行されず、ステップＳ３８０にてデータベースを再構築することもなくなる。
【００４７】
また、上述した例では、データベースから古いインストール情報を削除するためには元の情報ファイルを削除してデータベースを再構築するという手法を実行している。しかしながら、データベースが中間ファイルの結合であることから、該当部分を削除して連結し直したり、あるいはデータベースで表示されるドライバの名前を書き換えて選択できなくすることによっても同様に古い情報を利用することを防止できるようになる。むろん、後者の場合は使わない情報が残ることになるので、ベストモードではないもののシステム次第では利用可能である。
【００４８】
このように、インストール情報によって構築されたデータベースに古いインストール情報が含まれているような場合には、予め元の情報ファイルを削除（ステップＳ１４０）してからデータベースを再構築する（ステップＳ１５０）ようにしたため、古い情報に基づいてデバイスドライバをインストールしてしまうことを防止することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態にかかるインストールプログラムのフローチャートである。
【図２】パソコンの概略ブロック図である。
【図３】パソコンへの周辺装置の接続状況を示す概略ブロック図である。
【図４】パソコンのソフトウェアの構成を示す図である。
【図５】ドライバ情報のデータベースの構成を示す図である。
【図６】情報ファイルからデータベースを構築する過程を示す図である。
【図７】ドライバ情報データベース構築モジュールのフローチャートである。
【図８】古い情報ファイルを削除してデータベースを再構築する過程を示す図である。
【図９】インストールウィザードのフローチャートである。
【図１０】インストールウィザードの表示画面を示す図である。
【図１１】情報ファイルに新しい情報ファイルを加えてデータベースを再構築する過程を示す図である。
【符号の説明】
１０…パソコン
１１…ＣＰＵ
１２…ＣＰＵバス
１３…二次キャッシュ
１４…データバスユニット
１５…システムコントローラ
１６…メモリ
１７…ＰＣＩバス
１８…共通インターフェイス
１９…バスマスタ
１９ａ…ハードディスク
１９ｂ…ＣＤ−ＲＯＭドライブ
２１…ＰＣＩデバイス
２１ａ…ＳＣＳＩカード
２２…ＩＳＡブリッジ
２３…ＩＳＡバス
２４…ＩＳＡデバイス
２４ａ…ＰＣＭＣＩＡカード
２５…キーボード
２６…マウス
２７…プリンタ
２８…モデム
２９…スキャナ
３１…デジタルビデオカメラ
３２…光磁気記憶装置
３３…ＰＣＭＣＩＡカードソケット
３４…メモリカード
３５…デジタルスチルカメラ
４１…ハードウェア
４２…バイオス
４３…オペレーティングシステム
４３ａ…プリンタドライバ
４４…アプリケーション
【図１】
0003546962.tif 000002
【図２】
0003546962.tif 000003
【図３】
0003546962.tif 000004
【図４】
0003546962.tif 000005
【図５】
0003546962.tif 000006
【図６】
0003546962.tif 000007
【図７】
0003546962.tif 000008
【図８】
0003546962.tif 000009
【図９】
0003546962.tif 000010
【図１０】
0003546962.tif 000011
【図１１】
0003546962.tif 000012