(57)【要約】【課題】共通のモジュールを使用するドライバのインストールによるシステムの再起動を低減し、適切なドライバを選択的にバージョンアップさせる仕組みを提供することである。【解決手段】共通モジュールを含む、周辺装置に対応する制御プログラムを搭載可能な情報処理装置において、インストールを実行するのに応答して、該インストール時に一意な識別情報として生成される唯一性のある識別情報を生成する生成手段と、前記制御プログラムの一部として動作する共通モジュールの識別情報と、前記生成手段において生成した唯一性のある識別情報に基づいて変更する変更手段とを備えたことを特徴とする情報処理装置（ホストコンピュータ３０００）。【選択図】　　　図４
2004062398.tif 000002
【特許請求の範囲】
【請求項１】
共通モジュールを含む、周辺装置に対応する制御プログラムを搭載可能な情報処理装置において、
インストールを実行するのに応答して、該インストール時に一意な識別情報として生成される唯一性のある識別情報を生成する生成手段と、
前記制御プログラムの一部として動作する共通モジュールの識別情報を、前記生成手段において生成した唯一性のある識別情報に基づいて変更する変更手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記唯一性のある識別情報とは、ＭＡＣアドレスに基づいて生成されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記唯一性のある識別情報とは、インストールが行われる時刻情報に基づき生成されることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記情報処理装置は、第１の周辺装置を制御する際に使用する第１の制御プログラムと、第２の周辺装置を制御する第２の制御プログラムとを搭載可能であって、
前記第１の制御プログラムと、第２の制御プログラムに共通する共通モジュールを、前記第１の制御プログラムと、前記第２の制御プログラムとに、それぞれ対応させるべく別のモジュールとして導入する導入手段をさらに備えたことを特徴とする請求項１乃至３のいずれかに記載の情報処理装置。
【請求項５】
前記変更手段は、前記唯一性のある識別情報と、前記第１の周辺装置の組、又は、前記唯一性のある識別情報と、第２の周辺装置を示す識別情報との組に基づいて、前記共通モジュールの識別情報を変更することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
共通モジュールを含む、周辺装置に対応する制御プログラムを搭載可能な情報処理装置を制御する制御方法において、
インストールを実行するのに応答して、該インストール時に一意な識別情報として生成される唯一性のある識別情報を生成する生成工程と、
前記制御プログラムの一部として動作する共通モジュールの識別情報を、前記生成工程において生成した唯一性のある識別情報に基づいて変更する変更工程と、
を備えたことを特徴とする制御方法。
【請求項７】
前記唯一性のある識別情報とは、ＭＡＣアドレスに基づいて生成されることを特徴とする請求項６に記載の制御方法。
【請求項８】
前記唯一性のある識別情報とは、インストールが行われる時刻情報に基づき生成されることを特徴とする請求項６又は７に記載の制御方法。
【請求項９】
前記情報処理装置は、第１の周辺装置を制御する際に使用する第１の制御プログラムと、第２の周辺装置を制御する第２の制御プログラムとを搭載可能であって、
前記第１の制御プログラムと、第２の制御プログラムに共通する共通モジュールを、前記第１の制御プログラムと、前記第２の制御プログラムとに、それぞれ対応させるべく別のモジュールとして導入する導入工程とをさらに備えたことを特徴とする請求項６乃至８のいずれかに記載の制御方法。
【請求項１０】
前記変更工程において、前記唯一性のある識別情報と、前記第１の周辺装置の組、又は、前記唯一性のある識別情報と、第２の周辺装置を示す識別情報との組に基づいて、前記共通モジュールの識別情報が変更されることを特徴とする請求項９に記載の制御方法。
【請求項１１】
共通モジュールを含む、周辺装置に対応する制御プログラムを搭載可能な情報処理装置を制御する制御プログラムにおいて、
インストールを実行するのに応答して、該インストール時に一意な識別情報として生成される唯一性のある識別情報を生成する生成工程と、
前記制御プログラムの一部として動作する共通モジュールの識別情報と、前記生成工程において生成した唯一性のある識別情報に基づいて変更する変更工程と、
を情報処理装置において実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、周辺装置、該周辺装置を制御するための制御プログラムが搭載された情報処理装置、並びに、これらの装置を制御するための方法、制御プログラムに関するものである。
【０００２】
【従来の技術】
周辺装置を制御するための制御プログラムであるデバイスドライバ（以下、ドライバ）をインストールするためにはインストールセットと呼ばれるプログラム群が必要となる。インストールセットには、インストール対象であるドライバ、ドライバをインストールする制御プログラムであるインストーラなどが含まれる。ドライバは、通常機種毎や、バージョンごとに異なる。インストールセットとして、複数の対応機種を１つのインストールセットに組み込んだ形式と、対応機種毎にインストールセットを作成する２つの形式がある。具体的には、前者の形式の場合、インストーラと呼ばれるインストールプログラムにインストール開始を指示すると、複数の機種がインストール対象として列挙され、これを選択可能であるのに対して、後者の形式の場合、インストール時には、１機種だけがインストール対象として選択され、ユーザの指示に応答してインストールを行うことができる。
【０００３】
【発明が解決しようとする課題】
しかしながら、前者の、複数の対応機種のドライバを１つのインストールセットに組み込むと、次のような不具合が生ずる。例えばＡＡＡという名前のドライバであって、バージョン１．００のドライバがインストールされているパーソナルコンピュータに、ＢＢＢという名前のドライバであって、バージョン２．００に対応するドライバをインストールすると、ＡＡＡに対応するドライバまで自動的にｖ２．００にバージョンアップされるという問題が発生した。特に、ＡＡＡとＢＢＢが、同じドライバモジュール群を含む場合には上述のような問題が生ずる。
【０００４】
この方式は、常にコンピュータにインストールされているプリンタドライバのバージョンを最新の状態にしたいというユーザには非常に大きなメリットになるが、ユーザの知らないところで、知らないうちに、プリンタドライバのバージョンを勝手に上げてしまうという事になる。
【０００５】
しかし前述の方式では、システム導入時に、プリンタドライバの動作確認のテストを長い時間をかけて行ない、動作確認がとれたものだけを、ユーザ環境で使用させるといった昨今のユーザにとっては、デメリットになる。例えば、プリンタドライバに大きく依存する印刷アプリケーション等をプリンタドライバと組合わせて使用する大規模なオフィスでは、ドライバのバージョン管理は非常に厳しいものが要求されており、ユーザの指定したドライバのみをバージョンアップさせたいという要求が強い。バージョンアップ対象のドライバを、選択的に、適切にバージョンアップしたいという要望が強い。これは、他のプリンタ以外の周辺装置のデバイスドライバの管理においても同様である。
【０００６】
また、例えば、上述の場合においてプリンタドライバを構成しているモジュールセットに同じものである場合、新規であるＢＢＢというプリンタドライバを新規インストールしているにも関わらず、ＡＡＡのモジュールが上書きされる場合がある。この上書き処理に起因して、インストール後にシステムの再起動が余儀なくされるというデメリットもある。
【０００７】
システムの再起動は、大規模オフィスにおけるサーバ系コンピュータにおいては、可能な限り避けるべきであるとの要求が大きい。このような再起動を避けたいユーザにとっては、上述のようなあるモジュールの新規インストールに起因する、必須ではないモジュールの更新に伴う再起動は避けたいという要求がある。
【０００８】
また、対応機種毎にインストールセットを作成すると、プリンタドライバを構成しているモジュールセットが機種毎に異なることから、上記のような新規プリンタドライバのインストール後のシステム再起動や、ユーザーの意図しないバージョンアップは防ぐことが可能になるが、プリンタドライバを機種毎に作成する必要があるため、開発工数が非常に大きくなるというデメリットがある。特に新規ＯＳ（オペレーティングシステム）対応時などは、全機種分のプリンタドライバの作成が必要になったり、ある機種で修正した障害内容を、他の機種でも反映させようとした場合には、その機種のプリンタドライバを、別途作成する必要が生じる。また、バージョンアップしたい機種が多い場合には、必要な機種のインストールセットを用意し、それぞれを別々に実行させる必要があり、インストール操作が煩雑になる。
【０００９】
さらに、同じ種類、例えば、同じ機種のドライバを複数インストールしたい場合には、インストールする度ごとにドライバを異なるものとして管理する仕組みが求められている。
【００１０】
本発明は、このような状況を打破するもので、デバイスドライバをインストールする際に、インストールするモジュールセットの名称を、ある一定のルールに従って変更することで、適切なインストールを行う仕組みを提供することを一つの目的とする。
【００１１】
さらに、インストールする際に生成される、唯一性のある識別情報を用いてドライバモジュールセットの識別情報を変更し、ドライバの予期しない上書き更新処理を防ぐことをさらに別の目的とする。
【００１２】
さらに、バージョンアップ対象となるドライバを適切に選択でき、選択したドライバを適切にバージョンアップすることができる仕組みを提供することをさらに別の目的とする。
【００１３】
さらに、あるドライバの新規インストールを行う場合であっても、該インストールに起因して別のドライバが上書きされることがない仕組みを設けることにより、再起動をする回数を低減することをさらに別の目的とする。
【００１４】
【課題を解決するための手段】
本発明の第１の側面は、共通モジュールを含む、周辺装置に対応する制御プログラムを搭載可能な情報処理装置において、インストールを実行するのに応答して、該インストール時に一意な識別情報として生成される唯一性のある識別情報を生成する生成手段と、前記制御プログラムの一部として動作する共通モジュールの識別情報を、前記生成手段において生成した唯一性のある識別情報に基づいて変更する変更手段とを備えたことを特徴とする。
【００１５】
本発明の第２の側面は、前記唯一性のある識別情報とは、ＭＡＣアドレスに基づいて生成されることを特徴とする。
【００１６】
本発明の第３の側面は、前記唯一性のある識別情報とは、インストールが行われる時刻に基づき生成されることを特徴とする。
【００１７】
本発明の第４の側面は、前記情報処理装置は、第１の周辺装置を制御する際に使用する第１の制御プログラムと、第２の周辺装置を制御する第２の制御プログラムとを搭載可能であって、前記第１の制御プログラムと、第２の制御プログラムに共通する共通モジュールを、前記第１の制御プログラムと、前記第２の制御プログラムとに、それぞれ対応させるべく別のモジュールとして導入する導入手段をさらに備えたことを特徴とする。
【００１８】
本発明の第５の側面は、前記変更手段は、前記唯一性のある識別情報と、前記第１の周辺装置の組、又は、前記唯一性のある識別情報と、第２の周辺装置を示す識別情報との組に基づいて、前記共通モジュールの識別情報を変更することを特徴とする。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。なお、下記の各実施形態は、本発明の様々な側面を説明するための例であり、本発明の主旨を逸脱しない範囲においては、下記の各実施形態に限定されるものではないことは言うまでもない。
【００２０】
（第一実施形態）
図１は本発明の実施形態の一例を示すプリンタ制御システムの構成を示す図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ，ＷＡＮ等のネットワークを介して接続が為され処理が行われるシステムであっても本発明を適用できることは言うまでも無い。同図において、ホストコンピュータ３０００は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備え、システムバス４に接続される各デバイスをＣＰＵ１が総括的に制御する。また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリア等として機能する。ＨＤＤ１１には、プリンタドライバをインストールするための制御プログラムであるインストーラも記憶されており、ＲＡＭ２にロードされ、ＨＤＤ１１からドライバを読み出して取得し、或いは、ネットワーク（図示省略）を介してドライバを取得し、インストーラが取得したドライバを、ＯＳのＡＰＩを介して、プリンタドライバを所定の格納領域に格納するようＯＳを制御する。さらに、インストーラは、ＯＳのＡＰＩを介して、ＯＳが新たにインストールしたドライバを認識可能なように、レジストリと呼ばれる領域に登録する。
【００２１】
キーボードコントローラ（ＫＢＣ）５は、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フロッピー（Ｒ）ディスク（ＦＤ）等の外部メモリ１１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）８は、双方向性インターフェース（インターフェース）２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。なお、本実施形態においては、周辺装置を制御する制御プログラムとしてプリンタドライバを挙げているが、デジタルカメラ、複写機、ファクシミリ、インクジェットプリンタ、レーザビームプリンタ、若しくはこれらの複合機を制御する制御プログラムであってもよい。
【００２２】
なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。プリンタ１５００は、ＣＰＵ１２により制御される。プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラム等を記憶する。ＲＯＭ１３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ１３のデータ用ＲＯＭには、ハードディスク等の外部メモリ１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
ＣＰＵ１２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知できる。ＲＡＭ１９は、ＣＰＵ１２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶したり、展開した印刷データのスプール用として使われる。また、１８は前述した操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。また、上述のＨＤには、後述する図１９に記載の各モジュールが記憶されている。
【００２３】
また、前述した外部メモリ１４は１個に限らず、複数個備えられ、内蔵フォントを加えたオプションカード、展開した印刷データのスプール用メモリ、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００２４】
図２は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理の構成図である。アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、外部メモリ１１に保存されたファイルとして存在し、実行される場合にＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされ実行されるプログラムモジュールである。また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ１１のＦＤや不図示のＣＤ−ＲＯＭ、あるいは不図示のネットワークを経由して外部ディスク１１のＨＤに追加することが可能となっている。外部メモリ１１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。
【００２５】
グラフィックエンジン２０２は、印刷装置ごとに用意されたプリンタドライバ２０３を同様に外部メモリ１１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３に設定する。そして、アプリケーション２０１から受け取るＧＤＩ（Ｇｒａｐｈｉｃ　Ｄｅｖｉｃｅ　Ｉｎｔｅｒｆａｃｅ）関数からＤＤＩ（Ｄｅｖｉｃｅ　Ｄｒｉｖｅｒ　Ｉｎｔｅｒｆａｃｅ）関数に変換して、プリンタドライバ２０３へＤＤＩ関数を出力する。プリンタドライバ２０３は、グラフィックエンジン２０２から受け取ったＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Ｐａｇｅ　Ｄｅｓｃｒｉｐｔｉｏｎ　Ｌａｎｇｕａｇｅ）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインタフェース２１経由でプリンタ１５００へ印刷データとして出力される仕組みとなっている。
【００２６】
本実施形態の印刷システムは、図２で示すプリンタとホストコンピュータからなる印刷システムに加えて、更に図３に示すように、アプリケーションからの印刷データを一旦中間コードデータでスプールする構成を有する。
【００２７】
図３は、図２のシステムを拡張したもので、グラフィックエンジン２０２からプリンタドライバ２０３へ印刷命令を送る際に、一旦中間コードからなるスプールファイル３０３を生成する構成をとる。図２のシステムでは、アプリケーション２０１が印刷処理から開放されるのはプリンタドライバ２０３がグラフィックエンジン２０２からのすべての印刷命令をプリンタの制御コマンドへ変換し終った時点である。これに対して、図３のシステムでは、スプーラ３０２がすべての印刷命令を中間コードデータに変換し、スプールファイル３０３に出力した時点である。通常、後者の方が短時間で済む。また、図３で示すシステムにおいては、スプールファイル３０３の内容に対して加工することができる。これによりアプリケーションからの印刷データに対して、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーションの持たない機能を実現する事ができる。
【００２８】
これらの目的のために、図２のシステムに対し、図３の様に中間コードデータでスプールする様、システムの拡張がなされてきている。なお、印刷データの加工を行うためには、通常プリンタドライバ２０３が提供するウインドウから設定を行い、プリンタドライバ２０３がその設定内容をＲＡＭ２上あるいは外部メモリ１１上に保管する。
【００２９】
以下、図３の詳細を説明する。図に示す通り、この拡張された処理方式では、グラフィックエンジン２０２からの印刷命令をディスパッチャ３０１が受け取る。ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令が、アプリケーション２０１からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１は外部メモリ１１に格納されているスプーラ３０２をＲＡＭ２にロードし、プリンタドライバ２０３ではなくスプーラ３０２へ印刷命令を送付する。
【００３０】
スプーラ３０２は受け取った印刷命令を中間コードに変換してスプールファイル３０３に出力する。また、スプーラ３０２は、プリンタドライバ２０３に対して設定されている印刷データに関する加工設定をプリンタドライバ２０３から取得してスプールファイル３０３に保存する。なお、スプールファイル３０３は外部メモリ１１上にファイルとして生成するが、ＲＡＭ２上に生成されても構わない。更にスプーラ３０２は、外部メモリ１１に格納されているスプールファイルマネージャ３０４をＲＡＭ２にロードし、スプールファイルマネージャ３０４に対してスプールファイル３０３の生成状況を通知する。その後、スプールファイルマネージャ３０４は、スプールファイル３０３に保存された印刷データに関する加工設定の内容に従って印刷を行えるか判断する。
【００３１】
スプールファイルマネージャ３０４がグラフィックエンジン２０２を利用して印刷を行えると判断した際には、外部メモリ１１に格納されているデスプーラ３０５をＲＡＭ２にロードし、デスプーラ３０５に対して、スプールファイル３０３に記述された中間コードの印刷処理を行うように指示する。
【００３２】
デスプーラ３０５はスプールファイル３０３に含まれる中間コードをスプールファイル３０３に含まれる加工設定の内容に従って加工し、もう一度グラフィックエンジン２０２経由で出力する。
【００３３】
ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令がデスプーラ３０５からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１はスプーラ３０２ではなく、プリンタドライバ２０３に印刷命令を送る。
プリンタドライバ２０３はプリンタ制御コマンドを生成し、システムスプーラ２０４経由でプリンタ１５００に出力する。
【００３４】
図５は、プリンタドライバのフレンドリ名と、ＣＲＣ．ｅｘｅで作成される１６進数の相関図を示したものである。図６は、本実施例で使用するＷｉｎｄｏｗｓ（Ｒ）２０００におけるＩＮＦファイルの例を示したものである。図７は、本実施例で使用するＷｉｎｄｏｗｓ（Ｒ）ＮＴ４０（登録商標）におけるＩＮＦファイルの例を示したものである。図８は、インストール後のシステム再起動の必要性を示したものである。以下、図４、図５、図６、図７、図８を用いて、本実施例に好適なＯＳのプリンタフォルダから、プリンタドライバをインストールする方法を詳細に説明する。
【００３５】
図４は、本実施例の全体像を説明するプリンタドライバインストール方法の概略図を示したものである。ここでは、図４に従い、本実施例の全体像である、インストールするプリンタドライバのモジュールセットを、ある一定のルールに従ってインストール時に名称を変更する方法を説明する。ここで、ドライバモジュールセットとは、インストールセットに含まれるものであり、一定の関係に従って組をなすドライバモジュールの組をいう。
【００３６】
以下、本実施形態において様々なところで出てくる要素技術であるドライバのリネーム処理について先に説明しておく。本実施形態においては、インストール時には、一定の法則にしたがって、ドライバモジュールの名前を変更する。以後、「名前を変更」することを、「リネームする」ということがある。このリネーム処理は、図１のホストコンピュータ３０００にドライバをインストールする際に、ホストコンピュータ３０００内のＨＤ１１に記憶されているインストーラが、ＲＡＭ２にロードされ、同じくＲＡＭ２にロードされるＯＳのＡＰＩ（図示省略）を制御することにより、ドライバモジュール名をリネームするように制御することにより実現する。もちろん、アプリケーションであるインストーラが直接リネームを許すシステムである場合には、直接リネームをしてもよい。
【００３７】
次に、リネーム処理の一例を示す。例えば、ドライバのモジュールセットであるＡＡＡ．ｄｌｌ、ＢＢＢ．ｄｌｌ、ＣＣＣ．ｄｌｌは機種毎インストール時のリネーム対象とすると、例えば１１１という機種のプリンタドライバをインストールするときには、Ｗｉｎｄｏｗｓ（Ｒ）のシステムディレクトリにＡＡＡ＿１１１．ｄｌｌ、ＢＢＢ＿１１１．ｄｌｌ、ＣＣＣ＿１１１．ｄｌｌといった名称でコピーされる。また、２２２という機種のプリンタドライバをインストールする時には、ＡＡＡ＿２２２．ｄｌｌ、ＢＢＢ＿２２２．ｄｌｌ、ＣＣＣ＿２２２．ｄｌｌといった名称で、３３３という機種のプリンタドライバをインストールする時には、ＡＡＡ＿３３３．ｄｌｌ、ＢＢＢ＿３３３．ｄｌｌ、ＣＣＣ＿３３３．ｄｌｌといった名称で、ＯＳのシステムディレクトリにコピーされる。
【００３８】
この時、ＤＤＤ．ｄｌｌとＥＥＥ．ｄｌｌが機種毎インストール時のリネーム非対象のモジュールとすると、１１１という機種のプリンタドライバをインストールする時でも、２２２という機種のプリンタドライバをインストールする時でも、ＯＳのシステムディレクトリには、ＤＤＤ．ｄｌｌとＥＥＥ．ｄｌｌとしてコピーされる。
【００３９】
ここで、リネーム対象のプリンタドライバモジュールと、リネーム非対象のプリンタドライバモジュールの定義を説明する。リネーム対象のプリンタドライバモジュールとは、ドライバの基本機能を提供するモジュールで、印刷が一旦実行されると、ＯＳのシステムにロードされ続けるモジュールのことである。例えば、グラフィックスドライバ（本実施例では、ＣＮＰ５ＥＥ．ＤＬＬ）ユーザーインターフェイスドライバ（本実施例では、ＣＮＰ５ＥＥＵＩ．ＤＬＬが、これに該当）、リソースファイル（本実施例では、ＣＮＰ５Ｅ８０９．ＤＬＬが、これに該当）といったモジュールがこれに該当する。一方、リネーム非対象のプリンタドライバモジュールとは、カラープロファイル、ヘルプファイルといった機種共通ファイルのことで、印刷が終了した後には、ＯＳのシステムからアンロードされるモジュールのことである。
【００４０】
図５は、リネーム対象プリンタドライバモジュールを、どのような名称でＯＳのシステムディレクトリにコピーするかを示した表である。具体的には、ここに書かれている４桁の１６進数が、ドライバセットに組み込まれているモジュール名の後に付加される。
ここでは、ドライバ名「ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２０００ＰＣＬ５ｅ」のモジュールには、Ｆ０Ｅ５が、「ＰｒｉｎｔｅｒＭａｋｅｒＡｉＲ２２００−３３００　ＰＣＬ５ｅ」には、「６１７Ｅ」が、「ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ４００　ＰＣＬ５ｅ」には、「ＣＡ５Ｃ」が、「ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００　ＰＣＬ５ｅ」には、「９９２６」が、「ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ」には、「１５７９」が、「ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００ＰＣＬ５ｅ」には、「ＦＡＥＡ」が、「ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００−Ｍ１　ＰＣＬ５ｅ」には、「Ｄ６Ｆ１」がそれぞれ各モジュールに付加されることになる。ここで、ＰｒｉｎｔｅｒＭａｋｅｒＡはプリンタメーカ名であり、ｉＲ１６００−２０００というのは、プリンタの機種名であり、ＰＣＬとはプリンタ言語である。ドライバ名はこの順で並んでいるものとする。
【００４１】
例えば、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅドライバの場合には、　グラフィックスドライバは、ＣＮＰ５ＥＥ＿Ｆ０Ｅ５．ＤＬＬ、ユーザーインターフェイスドライバは、ＣＮＰ５ＥＥＵＩ＿Ｆ０Ｅ５．ＤＬＬ、リソースファイルは、ＣＮＰ５Ｅ８０９＿Ｆ０Ｅ５．ＤＬＬとなる。ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、ＣＮＰ５ＥＥ＿ＦＡＥＡ．ＤＬＬ、ユーザーインターフェイスドライバは、ＣＮＰ５ＥＥＵＩ＿ＦＡＥＡ．ＤＬＬ、については、リソースファイルは、ＣＮＰ５Ｅ８０９＿ＦＡＥＡ．ＤＬＬとなる。
【００４２】
ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、ＣＮＰ５ＥＥ＿１５７９．ＤＬＬ、ユーザーインターフェイスドライバは、ＣＮＰ５ＥＥＵＩ＿１５７９．ＤＬＬ、リソースファイルは、ＣＮＰ５Ｅ８０９＿１５７９．ＤＬＬと決定される。
【００４３】
この下４桁（２進数では４ビットで表現できる）の数字であるが、ＣＲＣ．ｅｘｅと呼ばれるプログラムツールで作成されたものである。このツールを用いると、プリンタドライバのフレンドリ名から、任意の４桁の１６進数を作成することが可能となる。ここで、例えば、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２０００　ＰＣＬ５ｅの末尾を「１１１」、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅの末尾を「２２２」と最初から決めうちにしないのは、もし、決めうちにしてしまうと、プログラム内に機種名とモジュール変更名のテーブルを持つリネームルーチン等のハードコーディングが必要となり、機種を追加するたびに、プログラム修正（追加）を行わなくてはいけなくなるためである。これに比べ、ツールを用いてプリンタドライバのフレンドリ名からドライバモジュール名を生成すると、後述する外部ファイルであるＩＮＦファイルの修正だけで、機種追加が可能となる効果があるからである。
【００４４】
図１９は、図１のホストコンピュータ３０００のＨＤ１に記憶され、ＲＡＭに読み出されて実行されるドライバインストーラ及びＯＳのモジュールの一例を示す図である。１９０１は、ドライバモジュールセットであり、複数の機種や名前のドライバが格納されている。ドライバインストーラは、ドライバをインストールするための制御プログラムであり、ドライバインストーラを制御するための設定ファイルであるＩＮＦファイル１９０７を読み出し、これに従ってシステムインストーラ１９０５及びＯＳのリネーム部１９０６を制御する。リネーム部と書いたが、ここでは、ＯＳの一般的なファイルのハンドリング機能、例えば、ＯＳのファイルシステムにおける、ファイル生成、ファイル名変更、ファイル移動などの機能をリネーム部１９０６と名づけている。ドライバインストーラ１９０２は、システムインストーラ１９０５のＡＰＩを呼び出すことにより、システムインストーラ１９０５を制御し、ドライバモジュールセットをＯＳが管理するシステムディレクトリ１９０４にコピーし、併せてレジストリ１９０３インストールされるモジュールの情報を登録する。レジストリは、ＯＳが管理するデータ構造である。ＯＳは、この領域を読み出すことにより、どのようなドライバがインストールされ、どのように設定されているかを認識することができる。
【００４５】
次に、プリンタドライバのモジュールセットを、インストール時に名称変更するＩＮＦファイルの記述方法を説明する。ここでは、ＣＲＣ．ｅｘｅという、所定の文字列を入力すると所定の文字列に一対一に対応する１６進数を生成するツールを用いて機種名に対応する１６進数を作成する。フレンドリ名は、ここでは、プリンタメーカ名、機種名、プリンタ言語（プリンタ言語バージョン名）で表されるものとする。図６と図７のＩＮＦファイルは特定のＯＳ向けに記述されたものである。ＩＮＦファイルは、図１のＨＤ１に記憶されており、図１９の１９０７に該当する。ドライバインストーラ１９０２の実行に応答して、ドライバインストーラに読み出される。ＩＮＦ　Ｆｉｌｅのサンプルは、図６と図７になるが、必要な箇所を抜粋すると下記の通りとなる。
；　Ｉｄｅｎｔｆｉｃａｔｉｏｎ　＃　　ＰＣＬ５ｅ　ＵＫ
；　ＩＲ８５００　　　：　Ｅ２８７
；　ＬＢＰ−２０００　：　４４１Ｂ
［ＩＲ８５００］
ＣＮＰ５ＥＥ＿Ｅ２８７．ＤＬＬ　ＣＮＰ５ＥＥ．ＤＬＬ
ＣＮＰ５ＥＥＵＩ＿Ｅ２８７．ＤＬＬ　ＣＮＰ５ＥＥＵＩ．ＤＬＬ
ＣＮＰ５Ｅ４０９＿Ｅ２８７．ＤＬＬ　ＣＮＰ５Ｅ４０９．ＤＬＬ
［ＩＲ８５００＿ＤＡＴＡ］
ＤｒｉｖｅｒＦｉｌｅ＝ＣＮＰ５ＥＥ＿Ｅ２８７．ＤＬＬ
ＣｏｎｆｉｇＦｉｌｅ＝ＣＮＰ５ＥＥＵＩ＿Ｅ２８７．ＤＬＬ
［ＬＢ２０００］
ＣＮＰ５ＥＥ＿４４１Ｂ．ＤＬＬ　ＣＮＰ５ＥＥ．ＤＬＬ
ＣＮＰ５ＥＥＵＩ＿４４１Ｂ．ＤＬＬ　ＣＮＰ５ＥＥＵＩ．ＤＬＬ
ＣＮＰ５Ｅ４０９＿４４１Ｂ．ＤＬＬ　ＣＮＰ５Ｅ４０９．ＤＬＬ
［ＬＢ２０００＿ＤＡＴＡ］
ＤｒｉｖｅｒＦｉｌｅ＝ＣＮＰ５ＥＥ＿４４１Ｂ．ＤＬＬ
ＣｏｎｆｉｇＦｉｌｅ＝ＣＮＰ５ＥＥＵＩ＿４４１Ｂ．ＤＬＬ
上述のＩＮＦファイルについて説明を加える。ＩＲ８５００（ｉＲ８５００）、ＬＢ２０００は、あるプリンタの機種名である。ここでは、ＩＲ８５００には、番号Ｅ２８７が、ＬＢＰ−２０００には、番号４４１Ｂが対応つけられる様子が示されている。これらの番号は、ＣＲＣ．ＥＸＥを用いて生成される。
【００４６】
次の大括弧［］で括られている文字列をラベルという。機種ＩＲ８５００について説明するため、ラベル［ＩＲ８５００］の内容をみていく。［ＩＲ８５００］の設定内容の一行目を見ると、右側に書かれているモジュールつまり、ＣＮＰ５ＥＥ．ＤＬＬが、ドライバセットに組み込まれているオリジナルなドライバモジュール名称であり、左側に書かれている名称、つまり、ＣＮＰ５ＥＥＵＩ＿Ｅ２８７．ＤＬＬが、ＯＳのシステムディレクトリにコピーされるリネーム後の名称である。つまり、現在インストールセットに格納されているモジュールＣＮＰ５ＥＥ．ＤＬＬを、インストールするディレクトリにＣＮＰ５ＥＥＵＩ＿Ｅ２８７．ＤＬＬという名前でコピーしてインストールせよという意味である。［ＩＲ８５００］の設定内容の、２行目、３行目に記載されているモジュール（ＣＮＰ５ＥＥＵＩ．ＤＬＬ、ＣＮＰ５Ｅ４０９．ＤＬＬ）ついても同様である。
【００４７】
次に、機種ＬＢ２０００について考えるため、ラベル［ＬＢ２０００］の設定内容についてみていく。ＣＮＰ５ＥＥ．ＤＬＬは、ＣＮＰ５ＥＥ＿４４１Ｂ．ＤＬＬとしてコピーされるよう記載されている。［ＬＢ２０００］の設定内容の２行目、３行目に記載されているモジュール（ＣＮＰ５ＥＥＵＩ．ＤＬＬ、ＣＮＰ５Ｅ４０９．ＤＬＬ）ついても同様である。
【００４８】
このように、対応している機種分だけ上記の記述を行えば、ドライバモジュールセットに入っているモジュールセット一つのモジュールについて、共通モジュールであっても、ＯＳのシステムディレクトリにコピーされるモジュールは、リネームされ、機種分だけコピーされることになる（ＣＮＰ５ＥＥ＿４４１Ｂ．ＤＬＬ）。つまり、ＣＮＰ５ＥＥ．ＤＬＬについて説明すれば、ＩＲ８５００では、ＣＮＰ５ＥＥＵＩ＿Ｅ２８７．ＤＬＬというモジュール名に、ＬＢ２０００ではＣＮＰ５ＥＥ＿４４１Ｂ．ＤＬＬというモジュール名にリネームされてから、ＯＳのシステムディレクトリにコピーされる。従来複数機種で共通モジュールとして管理されていたモジュールであっても、機種ごとに異なるモジュール名にリネームされてインストールされるため、特定機種のドライバをバージョンアップしたとしても、バージョンアップに関係しない別の機種のドライバは、上書きされたりするなど、ユーザの意図しない影響を受けなくなる。
【００４９】
図８は、インストール時にリネーム対象モジュールの名称を変更した結果、プリンタドライバを構成しているモジュールセットが機種毎にインストールされ、お互いが干渉しなくなるので、インストール後のシステム再起動の必要性が少なくなることを示した図である。これは、本実施形態の目的の一つであり、複数の対応機種を１つのインストールセットに組み込んだ形式のデメリットの１つを解消することになる。複数の対応機種を１つのインストールセットに組み込むと、新規のプリンタドライバをインストールしているにも関わらず、ＰＣにインストール済みの既存のモジュールまで上書きされるため、インストール後にはシステムの再起動が必要である。しかし、本願実施形態の発明を提供することにより、以下のようになる。
【００５０】
図８の表に書かれている通り、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ　ｖ５．３０ドライバがインストールしてあるパーソナルコンピュータに、同バージョンであるＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．３０ドライバをインストールした場合、本実施形態の適用により、ドライバの基本機能であり、印刷が一旦実行されると、ＯＳのシステムにロードされ続けるモジュールは、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ　ｖ５．３０ドライバとＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．３０ドライバでは異なるようになったため、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．３０ドライバインストール後の再起動は必要なくなる。
【００５１】
また、本発明の実施形態の適用によって、上記と同じ環境に、異なるバージョンであるＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．４０ドライバをインストールしても、ドライバの基本機能であり、印刷が一旦実行されると、ＯＳのシステムにロードされ続けるモジュールは、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ　ｖ５．３０ドライバとＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．４０ドライバでは異なるようになったため、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．４０ドライバインストール後の再起動も必要ない。
【００５２】
以上のように、インストールするプリンタドライバのモジュールセットを、ある一定のルールに従ってインストール時に名称を変更することによって、開発効率の高い機種別ドライバを作成出来るようになるだけでなく、望まれていないシステムの再起動を、最小限にとどめることが可能となる。
【００５３】
以下、第一実施形態の変形例について述べる。以下の各実施形態においては、インストールの前提は、特に図１乃至図４、図１９については、第一実施形態で述べたとおりである。第一実施形態と異なる部分を中心に説明する。
【００５４】
（第二実施形態）
以下、インストールシステムの前提は、図１乃至図４、図１９の第一実施形態で述べた通りであり、記載を省略する。以下の実施形態では、別のリネームの一例を記載する。図９は、リネーム対象プリンタドライバモジュールを、どのような名称でＯＳのシステムディレクトリにコピーするかを示した表である。なお、表中において、ドライバ対象ファイルはグラフィックスドライバのみ載せている。図９において、リネーム形式は、「リネーム後名称＝リネーム前名称＋”＿”＋モデル名」となっている。
例えば、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅドライバの場合には、次のようになる。まず、グラフィックスドライバは「ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅ．ＤＬＬ」であり、
ユーザーインターフェイスドライバは、「ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅ．ＤＬＬ」であり、リソースファイルは、「ＣＮＰ５Ｅ８０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅ．ＤＬＬ」となる。
【００５５】
また、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅドライバの場合には、次のようになる。まず、グラフィックスドドライバは、「ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ．ＤＬＬ」、　ユーザーインターフェイスドライバは、「ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ．ＤＬＬ」、　リソースファイルは、「ＣＮＰ５Ｅ８０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ．ＤＬＬ」となる。
【００５６】
ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバ　　　　は、「ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ．ＤＬＬ」　ユーザーインターフェイスドライバは、「ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ．ＤＬＬ」、　リソースファイルは、「ＣＮＰ５Ｅ８０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ．ＤＬＬ」となる。
【００５７】
なお、モデル名を加える位置やリネーム前名称とモデル名をつなぐ文字列などは重要ではなく、モデル名を加えることこそが重要である。例えば、「リネーム後名称＝リネーム前名称＋”＠”＋モデル名」という方法や「リネーム後名称＝モデル名＋”＿”＋リネーム前名称」といった方法であってもかまわない。
【００５８】
ここで、リネーム後の名称を、最初から決めうちで決定しないのは、もし、決めうちにしてしまうと、プログラム内にハードコーディングが必要となり、機種を追加するたびに、プログラム修正（追加）を行わなくてはならなくなるためである。これに比べ、プリンタドライバのモデル名からドライバモジュール名を生成すると、外部ファイルであるＩＮＦファイルの修正だけで、機種追加が可能となる。プログラムの修正は必要ない。
【００５９】
次に、プリンタドライバのモジュールセットを、インストール時に名称変更するＩＮＦ　Ｆｉｌｅの記述方法を説明する。ＩＮＦ　Ｆｉｌｅのサンプルは、図１０と図１１になるが、必要な箇所を抜粋すると下記の通りとなる。
【００６０】
［ＰｒｉｎｔｅｒＭａｋｅｒＡ］
”ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ”＝ＩＲ８５００，ＰＲＩＮＴＥＲＭＡＫＥＲＡＩＲ８５０００５９Ｄ
［ＩＲ８５００］
ＣｏｐｙＦｉｌｅｓ＝ＩＲ８５００＿ＦＩＬＥＳ　ＰＣＬ５Ｅ＿ＦＩＬＥＳ
ＤａｔａＦｉｌｅ＝ＩＲ８５００ＰＵ．ＸＰＤ
ＤａｔａＳｅｃｔｉｏｎ＝ＩＲ８５００＿ＤＡＴＡ
［ＩＲ８５００＿ＤＡＴＡ］
ＤｒｉｖｅｒＦｉｌｅ＝”ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ．ＤＬＬ”
ＣｏｎｆｉｇＦｉｌｅ＝”ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ．ＤＬＬ”
ＨｅｌｐＦｉｌｅ＝ＣＮＬ４Ｊ．ＨＬＰ
［ＩＲ８５００＿ＦＩＬＥＳ］
”ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ．ＤＬＬ”　ＣＮＰ５ＥＥ．ＤＬＬ
”ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ．ＤＬＬ”　ＣＮＰ５ＥＥＵＩ．ＤＬＬ
”ＣＮＰ５Ｅ４０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ．ＤＬＬ”　ＣＮＰ５Ｅ４０９．ＤＬＬ
上記［ＩＲ８５００＿ＦＩＬＥＳ］において、右側に書かれているものが、ドライバセットに組み込まれているオリジナルなドライバモジュール名称であり、左側に書かれている名称が、Ｗｉｎｄｏｗｓ（Ｒ）のシステムディレクトリにコピーされるリネーム後の名称である。このように、対応している機種分だけ上記の記述を行えば、ドライバセットに入っているモジュールセットは一種類でも、ＯＳのシステムディレクトリにコピーされるモジュールは、機種分だけ存在することになる。
【００６１】
（第三実施形態）
図１２は、リネーム対象プリンタドライバモジュールを、どのような名称でＷｉｎｄｏｗｓ（Ｒ）のシステムディレクトリにコピーするかを示した表である。リネーム対象モジュールは、ＧＵＩＤ　（Ｇｌｏｂａｌ　Ｕｎｉｑｕｅ　ＩＤ）が付加されて、名称変更を行う。ＧＵＩＤはインストール毎に生成されるので、インストール毎に一意になる。よって、毎回、図１２で示されたリネーム後のファイル名通りにリネームされるわけではない。リネーム形式の一例を示したものである。図１２において、リネーム形式は、「リネーム後名称＝リネーム前名称＋”＿”＋ＧＵＩＤ」
となっている。例えば、唯一性のある情報の好適な一例であるＧＵＩＤは、ホストコンピュータのネットワークカードのＭＡＣアドレスをエンコーディングしたものと、インストールの実行開始時刻などを組合わせて作ることができる。
【００６２】
例えば、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２０００　ＰＣＬ５ｅドライバの場合には、
グラフィックスドライバは、「ＣＮＰ５ＥＥ＿１Ｂ３ＡＤＢ３６−３Ｃ６５−４ｆ８ｄ−ＡＦＣ９−ＡＦＢ０２０４６３Ｄ５Ｄ．ＤＬＬ」、ユーザーインターフェイスドライバは、「ＣＮＰ５ＥＥＵＩ＿１Ｂ３ＡＤＢ３６−３Ｃ６５−４ｆ８ｄ−ＡＦＣ９−ＡＦＢ０２０４６３Ｄ５Ｄ．ＤＬＬ」リソースファイルは、「ＣＮＰ５Ｅ８０９＿１Ｂ３ＡＤＢ３６−３Ｃ６５−４ｆ８ｄ−ＡＦＣ９−ＡＦＢ０２０４６３Ｄ５Ｄ．ＤＬＬ」となる。
【００６３】
ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、「ＣＮＰ５ＥＥ＿Ｄ０６Ａ９９ＡＣ−４ＢＢ７−４４ｅｄ−ＡＥＣ３−ＢＥＦ２ＤＢＣＢ５ＢＢＣ．ＤＬＬ」、ユーザーインターフェイスドライバは、「ＣＮＰ５ＥＥＵＩ＿Ｄ０６Ａ９９ＡＣ−４ＢＢ７−４４ｅｄ−ＡＥＣ３−ＢＥＦ２ＤＢＣＢ５ＢＢＣ．ＤＬＬ」リソースファイルは、「ＣＮＰ５Ｅ８０９＿Ｄ０６Ａ９９ＡＣ−４ＢＢ７−４４ｅｄ−ＡＥＣ３−ＢＥＦ２ＤＢＣＢ５ＢＢＣ．ＤＬＬ」となる。
【００６４】
ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、
「ＣＮＰ５ＥＥ＿５９０Ｃ７１ＦＤ−Ｄ８８Ａ−４ｅ９０−Ｂ７２Ａ−Ｃ４０ＣＢＢ７３Ｄ２８Ｄ．ＤＬＬ」ユーザーインターフェイスドライバは、「ＣＮＰ５ＥＥＵＩ＿５９０Ｃ７１ＦＤ−Ｄ８８Ａ−４ｅ９０−Ｂ７２Ａ−Ｃ４０ＣＢＢ７３Ｄ２８Ｄ．ＤＬＬ」、リソースファイルは、「ＣＮＰ５Ｅ８０９＿５９０Ｃ７１ＦＤ−Ｄ８８Ａ−４ｅ９０−Ｂ７２Ａ−Ｃ４０ＣＢＢ７３Ｄ２８Ｄ．ＤＬＬ」となる。
【００６５】
なお、リネーム前名称とＧＵＩＤをつなぐ文字列などより、モデル名とバージョン数を加えることが重要なポイントの一つとなる。例えば、「リネーム後名称＝リネーム前名称＋”＠”＋ＧＵＩＤ」という方法や「リネーム後名称＝ＧＵＩＤ＋”＿”＋リネーム前名称」といった方法であってもかまわない。
【００６６】
ＧＵＩＤは、インストール毎に生成されるので、リネーム後の名称は、一意であることが保証される。インストーラはＧＵＩＤを生成し、上記法則によって各モジュールをリネームインストールする際、リネームに使用したＧＵＩＤをレジストリに書き込んでおく。また、プリンタドライバは、リネーム後の名称が動的に一意に決定されるため、最初から決めうちで決定できない。そこでインストールの際にインストーラによってレジストリに書き込まれたＧＵＩＤを参照することによって、リネームされた各モジュールの名称を得ることが可能となる。よって、機種追加のためのプログラムの修正は必要なくなる。
【００６７】
（第四実施形態）
図１３は、リネーム対象プリンタドライバモジュールを、どのような名称でＯＳのシステムディレクトリにコピーするかを示した表である。なお、表中において、ドライバ対象ファイルはバージョン５．３０のグラフィックスドライバのみ載せている。
【００６８】
図１３において、リネーム形式は、「リネーム後名称＝リネーム前名称＋”＿”＋モデル名＋“＿”＋バージョン数」となっている。
【００６９】
例えば、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバ（バージョン５．３０）は、「ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅ＿５３０．ＤＬＬ」ユーザーインターフェイスドライバ（バージョン５．３０）は、「ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅ＿５３０．ＤＬＬ」、リソースファイル（バージョン５．３０）は、ＣＮＰ５Ｅ８０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２００　ＰＣＬ５ｅ＿５３０．ＤＬＬ、とリネームされる。
【００７０】
ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、「ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ＿５３０．ＤＬＬ」、ユーザーインターフェイスドライバは、「ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ＿５３０．ＤＬＬ」、リソースファイルは、ＣＮＰ５Ｅ８０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ＿５３０．ＤＬＬとリネームされる。
【００７１】
「ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ」ドライバの場合には、グラフィックスドライバ（バージョン５．４０）は、ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ＿５４０．ＤＬＬ、ユーザーインターフェイスドライ（バージョン５．４０）は、ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ＿５４０．ＤＬＬ、リソースファイル（バージョン５．４０）は、ＣＮＰ５Ｅ８０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅ＿５４０．ＤＬＬとリネームされる。
【００７２】
なお、モデル名を加える位置やバージョン数を加える位置やリネーム前名称とモデル名をつなぐ文字列などは重要ではなく、モデル名とバージョン数を加えることがポイントの一つである。例えば、「リネーム後名称＝リネーム前名称＋”＠”＋モデル名＋”＠”＋バージョン数」という方法や「リネーム後名称＝モデル名＋”＿”＋バージョン数＋”＿”＋リネーム前名称」といった方法であってもかまわない。
【００７３】
ここで、リネーム後の名称をモデル名とバージョン数を使用せずに最初から決めうちで決定しないのは、もし、決めうちにしてしまうと、プログラム内にハードコーディングが必要となり、機種を追加するたびに、プログラム修正（追加）を行わなくてはならなくなるためである。これに比べ、プリンタドライバのモデル名とバージョン数からドライバモジュール名を生成すると、外部ファイルであるＩＮＦファイルの修正だけで、機種追加が可能となる。プログラムの修正は必要ない。
【００７４】
次に、プリンタドライバのモジュールセットを、インストール時に名称変更するＩＮＦ　Ｆｉｌｅの記述方法を説明する。ＩＮＦ　ファイルのサンプルは、図１４と図１５になるが、必要な箇所を抜粋すると下記の通りとなる。
【００７５】
［ＰｒｉｎｔｅｒＭａｋｅｒＡ］
”ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ”＝ＩＲ８５００，ＰｒｉｎｔｅｒＭａｋｅｒＡＩＲ８５０００５９Ｄ
［ＩＲ８５００］
ＣｏｐｙＦｉｌｅｓ＝ＩＲ８５００＿ＦＩＬＥＳ　ＰＣＬ５Ｅ＿ＦＩＬＥＳ
ＤａｔａＦｉｌｅ＝ＩＲ８５００ＰＵ．ＸＰＤ
ＤａｔａＳｅｃｔｉｏｎ＝ＩＲ８５００＿ＤＡＴＡ
［ＩＲ８５００＿ＤＡＴＡ］
ＤｒｉｖｅｒＦｉｌｅ＝”ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ＿５３０．ＤＬＬ”
ＣｏｎｆｉｇＦｉｌｅ＝”ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ＿５３０．ＤＬＬ”
ＨｅｌｐＦｉｌｅ＝ＣＮＬ４Ｊ．ＨＬＰ
［ＩＲ８５００＿ＦＩＬＥＳ］
”ＣＮＰ５ＥＥ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ＿５３０．ＤＬＬ”　ＣＮＰ５ＥＥ．ＤＬＬ
”ＣＮＰ５ＥＥＵＩ＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ＿５３０．ＤＬＬ”　ＣＮＰ５ＥＥＵＩ．ＤＬＬ
”ＣＮＰ５Ｅ４０９＿ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ＿５３０．ＤＬＬ”　ＣＮＰ５Ｅ４０９．ＤＬＬ
上記［ＩＲ８５００＿ＦＩＬＥＳ］において、右側に書かれているものが、ドライバセットに組み込まれているオリジナルなドライバモジュール名称であり、左側に書かれている名称が、ＯＳのシステムディレクトリにコピーされるリネーム後の名称である。このように、対応している機種分だけ上記の記述を行えば、ドライバセットに入っているモジュールセットは一種類でも、ＯＳのシステムディレクトリにコピーされるモジュールは、機種分だけ存在することになる。
【００７６】
図８は、インストール時にリネーム対象モジュールの名称を変更した結果、プリンタドライバを構成しているモジュールセットが機種毎にインストールされ、お互いが干渉しなくなるので、インストール後のシステム再起動の必要性が少なくなることを示した図である。これは、複数の対応機種を１つのインストールセットに組み込んだ形式のデメリットの１つを解消できることを示す。複数の対応機種を１つのインストールセットに組み込むと、新規のプリンタドライバをインストールしているにも関わらず、ＰＣにインストール済みの既存のモジュールまで上書きされるため、インストール後にはシステムの再起動が必要となるがこれを解消したのである。
【００７７】
図８の表に書かれている通り、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ　ｖ５．３０ドライバがインストールしてあるパーソナルコンピュータに、同バージョンであるＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．３０ドライバをインストールしても、ドライバの基本機能であり、印刷が一旦実行されると、Ｗｉｎｄｏｗｓ（Ｒ）システムにロードされ続けるモジュールは、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ　ｖ５．３０ドライバとＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．３０ドライバでは異なるため、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．３０ドライバインストール後の再起動は必要ない。また、上記と同じ環境に、異なるバージョンであるＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．４０ドライバをインストールしても、ドライバの基本機能であり、印刷が一旦実行されると、Ｗｉｎｄｏｗｓ（Ｒ）システムにロードされ続けるモジュールは、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ８５００　ＰＣＬ５ｅ　ｖ５．３０ドライバとＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．４０ドライバでは異なるため、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅ　ｖ５．４０ドライバインストール後の再起動も必要ない。
【００７８】
以上のように、インストールするプリンタドライバのモジュールセットを、プリンタドライバのモデル名及びドライババージョン数に従ってインストール時に名称を変更することによって、開発効率の高い機種別ドライバを作成出来るようになるだけでなく、望まれていないシステムの再起動を、最小限にとどめることが可能となる。
【００７９】
以上説明したように、第四実施形態のプリンタドライバのインストール装置によれば、プリンタドライバをパーソナルコンピュータ等の情報処理装置にインストールする際に、インストールするモジュールセットの名称を、ドライバのモデル名及びバージョン数に従ってインストール時に変更することによって、対応する全機種共通のドライバモジュールセットを、機種別かつバージョン別にの名称でインストールすることが可能になるので、極めて開発効率の高い機種別でかつバージョン別なドライバを作成出来るようになるだけでなく、望まれていないシステムの再起動を、ほぼ完全にとどめることが可能となる。
【００８０】
（第五実施形態）
図１６は、リネーム対象プリンタドライバモジュールを、どのような名称でＷｉｎｄｏｗｓ（Ｒ）のシステムディレクトリにコピーするかを示した表である。図１６において、リネーム形式は、「リネーム後名称＝リネーム前名称＋”＿”＋プリンタドライバデータファイルに記述された数値」となっている。プリンタドライバデータファイルには、プリンタドライバを設定するための情報が入っているファイルであるが、ここでは、上述のリネーム用の各ドライバモジュール名に対応するテーブルが格納されている。
【００８１】
例えば、ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ１６００−２０００　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、ＣＮＰ５ＥＥ＿０．ＤＬＬ、ユーザーインターフェイスドライバは、ＣＮＰ５ＥＥＵＩ＿０．ＤＬＬ、リソースファイルは、ＮＰ５Ｅ８０９＿０．ＤＬＬとなる。
【００８２】
ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ７２００　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、ＣＮＰ５ＥＥ＿５．ＤＬＬ、ユーザーインターフェイスドライバは、ＣＮＰ５ＥＥＵＩ＿５．ＤＬＬ、リソースファイルは、ＣＮＰ５Ｅ８０９＿５．ＤＬＬとリネームされる。
【００８３】
ＰｒｉｎｔｅｒＭａｋｅｒＡ　ｉＲ５０００−６０００−Ｌ１　ＰＣＬ５ｅドライバの場合には、グラフィックスドライバは、ＣＮＰ５ＥＥ＿４．ＤＬＬ、ユーザーインターフェイスドライバは、ＣＮＰ５ＥＥＵＩ＿４．ＤＬＬ、リソースファイルは、ＣＮＰ５Ｅ８０９＿４．ＤＬＬとなる。
【００８４】
これら名称変更後の名称はドライバデータファイルにも記述される。プリンタドライバデータファイルに記述される名称変更後の名称と、ＩＮＦファイル記述される名称変更後の名称は、必ず一致させなければならない。これより、プリンタドライバは、ドライバデータファイルから名称変更後の名称を読み取ることが可能となるので、プログラム内に名称変更後の名称をハードコーディングする必要が無くなる。即ち、機種を追加するたびに、プログラム修正（追加）を行う必要がない。外部ファイルであるＩＮＦファイルとドライバデータファイルの修正だけで、機種追加が可能となる。
【００８５】
次に、プリンタドライバのモジュールセットを、インストール時に名称変更するＩＮＦ　Ｆｉｌｅの記述方法を説明する。ＩＮＦ　Ｆｉｌｅのサンプルは、図１７と図１８になるが、必要な箇所を抜粋すると下記の通りとなる。
【００８６】
［ＩＲ８５００］
ＩＲ８５００ＰＫ．ＸＰＤ
ＣＮＰ５ＥＥ＿８．ＤＬＬ，ＣＮＰ５ＥＥ．ＤＬＬ
ＣＮＰ５ＥＥＵＩ＿８．ＤＬＬ，ＣＮＰ５ＥＥＵＩ．ＤＬＬ
ＣＮＰ５Ｅ８０９＿８，　ＣＮＰ５Ｅ８０９．ＤＬＬ
［ＬＢ２０００］
ＬＢ２０００ＰＫ．ＸＰＤ
ＣＮＰ５ＥＥ＿１５．ＤＬＬ，ＣＮＰ５ＥＥ．ＤＬＬ
ＣＮＰ５ＥＥＵＩ＿１５．ＤＬＬ，ＣＮＰ５ＥＥＵＩ．ＤＬＬ
ＣＮＰ５Ｅ８０９＿１５．ＤＬＬ，ＣＮＰ５Ｅ８０９．ＤＬＬ
右側に書かれているものが、ドライバセットに組み込まれているオリジナルなドライバモジュール名称であり、左側に書かれている名称が、ＯＳのシステムディレクトリにコピーされるリネーム後の名称である。前述のプリンタドライバデータファイルというのは、ＩＲ８５００ＰＫ．ＸＰＤやＬＢ２０００ＰＫ．ＸＰＤである。このように、対応している機種分だけ上記の記述を行えば、ドライバセットに入っているモジュールセットは一種類でも、ＯＳのシステムディレクトリにコピーされるモジュールは、機種分だけ存在することになる。
【００８７】
（他の実施形態）
前述の実施形態では、ＯＳのプリンタフォルダからプリンタドライバをインストールする場合について述べたが、これを独自で提供するインストーラで行うことも可能である。具体的には、独自で提供するインストーラの中で、ドライバモジュール名を、ドライバＩＮＦをもとに変更し、名称変更されたドライバモジュールをＯのＡＰＩでインストールすれば、本実施例で述べた機種別のインストールが可能となり、ＯＳのプリンタフォルダからのインストールと、全く同じ機能を提供することが可能となる。
【００８８】
本実施形態における各処理が、外部からインストールされるプログラムによって、クライアントデバイス１０００やプリンタ１００１など、それぞれの装置により遂行されてもよい。また、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群をホストコンピュータに供給される場合でも本発明は適用されるものである。
【００８９】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、又は、外部サーバ（図示省略）からダウンロードすることで、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【００９０】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、たとえば、フロッピィーディスク、ハードディスク、光ディスク、光磁気ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ等を用いることができる。
【００９１】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００９２】
なお、上述の第一乃至第五の各実施形態を用いれば、図８のように、再起動の必要性が低減することは言うまでも無い。例えば、本発明各実施形態のプリンタドライバのインストール装置によれば、プリンタドライバをパーソナルコンピュータ等の情報処理装置にインストールする際に、インストールするモジュールセットの名称を、ある一定のルールに従ってインストール時に変更することによって、対応する全機種共通のドライバモジュールセットを、機種別の名称でインストールすることが可能とし、開発効率の高い機種別ドライバを作成出来るようになるだけでなく、望まれていないシステムの再起動を、最小限にとどめることが可能となる。
【００９３】
【発明の効果】
以上説明したように、本発明の一つの側面によれば、インストールする際に生成される、唯一性のある識別情報を用いてドライバモジュールセットの識別情報を変更するので、ドライバの予期しない上書き更新処理を防ぐことが可能となる。
【図面の簡単な説明】
【図１】本発明の１実施例を示す印刷制御装置の構成を説明するブロック図である。
【図２】ホストコンピュータにおける典型的な印刷データ生成方法を説明するブロック図である。
【図３】中間コードを生成する図２を拡張した印刷データ生成方法を説明する簿ロック図である。
【図４】本実施例の全体像を説明するプリンタドライバインストール方法の概略図を示したものである。
【図５】プリンタドライバのフレンドリ名と、ＣＲＣ．ｅｘｅで作成される１６進数の相関図を示したものである。
【図６】本実施例で使用するあるＯＳ用のＩＮＦファイルの例を示したものである。
【図７】本実施例で使用する図６とは別のＯＳ用のＩＮＦファイルの例を示したものである。
【図８】インストール後のシステム再起動の必要性を示した図である。
【図９】共通モジュールのリネームの一例を示した図である。
【図１０】あるＯＳにて利用可能なＩＮＦファイルの記述例を示した図である。
【図１１】図１０とは別のＯＳに適用可能なＩＮＦファイルの一例を示した図である。
【図１２】共通モジュールのリネームの一例を示した図である。
【図１３】共通モジュールのリネームの一例を示した図である。
【図１４】あるＯＳにて利用可能なＩＮＦファイルの記述例を示した図である。
【図１５】図１４とは別のＯＳに適用可能なＩＮＦファイルの一例を示した図である。
【図１６】共通モジュールのリネームの一例を示した図である。
【図１７】あるＯＳにて利用可能なＩＮＦファイルの記述例を示した図である。
【図１８】図１７とは別のＯＳに適用可能なＩＮＦファイルの一例を示した図である。
【図１９】ホストコンピュータ３０００内で実行されるドライバインストーラ及びＯＳのモジュールの一例を示す図である。
【図１】
2004062398.tif 000003
【図２】
2004062398.tif 000004
【図３】
2004062398.tif 000005
【図４】
2004062398.tif 000006
【図５】
2004062398.tif 000007
【図６】
2004062398.tif 000008
【図７】
2004062398.tif 000009
【図８】
2004062398.tif 000010
【図９】
2004062398.tif 000011
【図１０】
2004062398.tif 000012
【図１１】
2004062398.tif 000013
【図１２】
2004062398.tif 000014
【図１３】
2004062398.tif 000015
【図１４】
2004062398.tif 000016
【図１５】
2004062398.tif 000017
【図１６】
2004062398.tif 000018
【図１７】
2004062398.tif 000019
【図１８】
2004062398.tif 000020
【図１９】
2004062398.tif 000021