(57)【要約】【課題】  従来、ＰｎＰ技術を利用したデバイスドライバのインストール処理が開始された場合の専用ドライバ、汎用ドライバのインストールを柔軟に制御する仕組みが提供されていなかった。【解決手段】  そこで、本発明の情報処理装置は、周辺機器のモデル情報に対応する専用ドライバが見つかり、かつ汎用ドライバを使用する設定であった場合には、該周辺機器の互換識別情報に対応する汎用ドライバを検索して、該汎用ドライバが見つかった場合にそのインストールの制御を行うことを特徴とする。【選択図】  図４
2014160318.tif 000002
【特許請求の範囲】
【請求項１】
周辺機器と通信する情報処理装置であって、
周辺機器から、機器情報として、モデル情報と互換識別情報とを受信する受信手段と、
前記モデル情報に対応する前記周辺機器の専用ドライバを検索する第１の検索手段と、
前記第１の検索手段で専用ドライバが見つかり、かつ汎用ドライバを使用する設定であった場合に、前記互換識別情報に対応する汎用ドライバを検索する第２の検索手段と、
前記第２の検索手段で汎用ドライバが見つかった場合に、当該汎用ドライバのインストールの制御を行う制御手段と、を有し、
前記制御手段は、前記第１の検索手段で専用ドライバが見つかり、かつ汎用ドライバを使用する設定でなかった場合に、当該専用ドライバのインストールの制御を行うことを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記第２の検索手段で見つかった汎用ドライバのインストールに際して、前記周辺機器を制御可能な他の汎用ドライバが既にインストール済みであった場合に、より適切な汎用ドライバを前記周辺機器のためにインストールすることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御手段は、ドライバのバージョン情報、またはドライバの構成情報に含まれるファイルの日付を比較することにより、適切な汎用ドライバを判断することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第２の検索手段によりドライバが見つからなかった場合に、ユーザーによりインストールすべきドライバを指定させるための指定手段と、
前記ユーザーにより指定されたドライバが前記モデル情報に対応する専用ドライバであった場合に汎用ドライバを使用する設定を変更する変更手段と、をさらに有し、
前記制御手段は、前記ユーザーにより指定されたドライバのインストールの制御を行うことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
周辺機器と通信する情報処理装置であって、
周辺機器から、機器情報として、モデル情報と互換識別情報とを受信する受信手段と、
前記モデル情報に対応する前記周辺機器の専用ドライバを検索する第１の検索手段と、
前記互換識別情報に対応する汎用ドライバを検索する第２の検索手段と、
グループポリシーを取得する取得手段と、
前記取得されたグループポリシーが汎用ドライバを使用することを示す場合に、専用ドライバではなく、前記第２の検索手段で見つかった汎用ドライバのインストールの制御を行う制御手段と、
を有することを特徴とする情報処理装置。
【請求項６】
周辺機器と通信する情報処理装置であって、
周辺機器から、機器情報として、モデル情報と互換識別情報とを受信する受信手段と、
前記モデル情報に対応する前記周辺機器の専用ドライバを検索する第１の検索手段と、
前記互換識別情報に対応する汎用ドライバを検索する第２の検索手段と、
使用するプリンタードライバの種類に関する設定がすべてのドライバ種を使用可能とする設定であった場合には、第１の検索手段で見つかった専用ドライバと、第２の検索手段で見つかった汎用ドライバと、を用いてドライバリストを作成する作成手段と、を有し、
前記作成手段は、使用するプリンタードライバの種類に関する設定が汎用ドライバのみを使用する設定であった場合には、第１の検索手段で見つかった専用ドライバを用いずに、第２の検索手段で見つかった汎用ドライバを用いてドライバリストを作成することを特徴とする情報処理装置。
【請求項７】
周辺機器と通信する情報処理装置における方法であって、
周辺機器から、機器情報として、モデル情報と互換識別情報とを受信する受信工程と、
前記モデル情報に対応する前記周辺機器の専用ドライバを検索する第１の検索工程と、
前記第１の検索工程で専用ドライバが見つかり、かつ汎用ドライバを使用する設定であった場合に、前記互換識別情報に対応する汎用ドライバを検索する第２の検索工程と、
前記第２の検索工程で汎用ドライバが見つかった場合に、当該汎用ドライバのインストールの制御を行う制御工程と、を有し、
前記制御工程では、前記第１の検索工程で専用ドライバが見つかり、かつ汎用ドライバを使用する設定でなかった場合に、当該専用ドライバのインストールの制御が行われることを特徴とする方法。
【請求項８】
周辺機器と通信する情報処理装置における方法であって、
周辺機器から、機器情報として、モデル情報と互換識別情報とを受信する受信工程と、
前記モデル情報に対応する前記周辺機器の専用ドライバを検索する第１の検索工程と、
前記互換識別情報に対応する汎用ドライバを検索する第２の検索工程と、
グループポリシーを取得する取得工程と、
前記取得されたグループポリシーが汎用ドライバを使用することを示す場合に、専用ドライバではなく、前記第２の検索工程で見つかった汎用ドライバのインストールの制御を行う制御工程と、
を有することを特徴とする方法。
【請求項９】
周辺機器と通信する情報処理装置における方法であって、
周辺機器から、機器情報として、モデル情報と互換識別情報とを受信する受信工程と、
前記モデル情報に対応する前記周辺機器の専用ドライバを検索する第１の検索工程と、
前記互換識別情報に対応する汎用ドライバを検索する第２の検索工程と、
使用するプリンタードライバの種類に関する設定がすべてのドライバ種を使用可能とする設定であった場合には、前記第１の検索工程で見つかった専用ドライバと、前記第２の検索工程で見つかった汎用ドライバと、を用いてドライバリストを作成する作成工程と、を有し、
前記作成工程では、使用するプリンタードライバの種類に関する設定が汎用ドライバのみを使用する設定であった場合には、前記第１の検索工程で見つかった専用ドライバを用いずに、前記第２の検索工程で見つかった汎用ドライバを用いてドライバリストが作成されることを特徴とする方法。
【請求項１０】
請求項１乃至６のいずれか１項に記載の手段としてコンピューターを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリンタードライバのインストール制御といった技術に関するものである。
【背景技術】
【０００２】
情報処理装置からプリンター等の周辺機器を利用するには、一般的に周辺機器に対応したデバイスドライバなどのソフトウェアを、情報処理装置上で動作する処理システム（たとえば、オペレーティングシステム（ＯＳ））に組み込む必要がある。プリンターを利用する場合、プリンタードライバをアプリケーションから起動させ、印刷に必要な設定を行い、アプリケーションから取得したデータをプリンターに転送する事で、用紙に印刷する事が可能になる。
【０００３】
情報処理装置にプリンター等の周辺機器を接続した際に接続された機器を利用するためのデバイスドライバをコンピューターに組み込む技術として、プラグアンドプレイ（Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ（ＰｎＰ））がよく知られている。ＰｎＰ技術を採用することで、ユーザーは周辺機器を利用するための煩雑なドライバのインストール作業や設定の作業から解放され、利便性が格段に向上する。
【０００４】
米国マイクロソフト社のＯＳ  Ｗｉｎｄｏｗｓ（登録商標）がプリンター向けに行うＰｎＰでは、ユニバーサルシリアルバス（ＵＳＢ）やＷｅｂ  Ｓｅｒｖｉｃｅ  ｏｎ  Ｄｅｖｉｃｅｓ（ＷＳＤ）のインターフェースを介してプリンターから識別情報を取得する。取得した識別情報を元に、ＯＳは最適なデバイスドライバを探し出し、デバイスドライバをインストールし、プリンターを検知した接続先を出力先に設定する。このＯＳのＰｎＰでは、プリンターからプリンターのモデル識別情報（ＭＤＬ）を取得し、モデル識別情報（ＭＤＬ）に対応するプリンタードライバを探し、インストールを行う。この際には、当該プリンターに固有に対応するプリンタードライバであるスペシフィックドライバ（専用ドライバ）が探される。もし、モデル識別情報（ＭＤＬ）に対応するプリンタードライバが見つからなければ、プリンターの互換識別情報（ＣＩＤ）を取得し、この互換識別情報（ＣＩＤ）に対応するプリンタードライバを探し、インストールを行う。互換識別情報（ＣＩＤ）を用いた場合には、複数機種のプリンターに対して共通で利用可能なプリンタードライバであるジェネリックドライバ（汎用ドライバ）が導入されることになる。プリンターのクラスに対して共通なジェネリックドライバは、クラスドライバとも呼ばれる。
【０００５】
ここで、ネットワーク上に新たにプリンターが検出された際に、ジェネリックドライバが既にインストールされていた場合を想定する。この場合は、新たにプリンタードライバを検索してインストールするといった処理を省略し、インストール済みのジェネリックドライバを利用すれば、新たなプリンターのために容易にかつ迅速に印刷する環境を構築することが可能である。さらに、ジェネリックドライバは、対応しているプリンターならば、機種によらず、同様の設定画面や使用方法などを提供できる。
【０００６】
先行技術として、特許文献１がある。特許文献１では、クラスドライバがインストール済みであった際に、モデル識別情報に対応する専用ドライバをインストールする場合に、既存のクラスドライバを削除するか、クラスドライバ及び専用ドライバを併存させるかを選択するといった技術の開示がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１０−１６０６１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に示された印刷システムを実現のためには、専用のインストーラーを使用した技術であって、ＰｎＰを使用したインストール方法に対応していない。また、ＰｎＰの利点である、更新すべきプリンタードライバが存在する場合に、自動的な更新が行われないことになる。
【０００９】
上記の課題を解決するためには、ＰｎＰを想定したうえで、デバイスドライバのインストールが開始された場合の専用ドライバ、汎用ドライバのインストールを柔軟に制御する必要がある。
【００１０】
また、ユーザーまたはグループポリシーなどのシステムの設定により、使用するデバイスドライバの種類を選択し、ＰｎＰなどを利用したインストールの制御を行う必要がある。
【課題を解決するための手段】
【００１１】
上記課題の少なくとも何れかを解決するために、本発明の情報処理装置は、周辺機器から、機器情報として、モデル情報と互換識別情報とを受信する受信手段と、前記モデル情報に対応する前記周辺機器の専用ドライバを検索する第１の検索手段と、前記第１の検索手段で専用ドライバが見つかり、かつ汎用ドライバを使用する設定であった場合に、前記互換識別情報に対応する汎用ドライバを検索する第２の検索手段と、前記第２の検索手段で汎用ドライバが見つかった場合に、当該汎用ドライバのインストールの制御を行う制御手段と、を有し、前記制御手段は、前記第１の検索手段で専用ドライバが見つかり、かつ汎用ドライバを使用する設定でなかった場合に、当該専用ドライバのインストールの制御を行うことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、ＰｎＰを想定したうえで、デバイスドライバのインストールが開始された場合の専用ドライバ、汎用ドライバのインストールを柔軟に制御することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明におけるシステム構成、及び各装置内の構成を示すブロック図
【図２】従来の印刷システムのプリンタードライバのインストール処理の一例を示すフローチャート
【図３】プリンターの追加を行うユーザーインターフェース例を示す図
【図４】実施例１のインストール処理を説明するためのフローチャート
【図５】実施例１のユーザーインターフェースの例を示す図
【図６】実施例１のユーザーインターフェースの例を示す図
【図７】実施例２のインストール処理を説明するためのフローチャート
【図８】実施例２のユーザーインターフェースの例を示す図
【図９】実施例２のユーザーインターフェースの例を示す図
【図１０】実施例３のインストール処理を説明するためのフローチャート
【図１１】実施例３のユーザーインターフェース例を示す図
【図１２】本発明におけるプリンターで保持する機器ＩＤの内容の例を示す図
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施の形態を詳しく説明する。
【００１５】
（実施例１）
図１（ａ）は、本発明の実施形態に係るシステムの概略構成を示すブロック図である。このシステムは、情報処理装置１０１とその周辺機器で構成される。周辺機器には、対応するデバイスドライバを用いた情報処理装置１０１から、印刷データを受信して印刷を行なうプリンター１０２等が含まれる。プリンター１０２と周辺機器は、ＵＳＢやＥｔｈｅｒｎｅｔ（登録商標）等の双方向通信が可能な接続媒体１０４を介して接続されている。情報処理装置１０１とサーバー装置１０３は、インターネットあるいはイントラネット等の通信可能な接続媒体１０５を介して接続されている。サーバー装置１０３は複数存在していても構わない。
【００１６】
図１（ｂ）は、図１（ａ）の情報処理装置１０１とプリンター１０２の装置構成を示すブロック図である。情報処理装置１０１において、ＣＰＵ（１１１）は、ＲＡＭ（１１２）に記憶されているプログラムに従って、システムバス１２２に接続される各装置を総括的に制御している。このＲＡＭ（１１２）は、ＣＰＵ（１１１）の主メモリ、ワークエリア等としても機能している。ＲＯＭ（１１３）は、各種プログラム及びデータを格納している。キーボードＩ／Ｆ（１１５）は、キーボード（１１９）や不図示のポインティング装置（タッチパネル等）からのキー入力を制御する。ディスプレイＩ／Ｆ（１１６）は、ディスプレイ（１２０）への表示を制御している。外部メモリＩ／Ｆ（１１７）は、例えばフラッシュメモリ、Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ（ＳＳＤ）等の外部メモリ（１２１）とのアクセスを制御する。双方向接続媒体Ｉ／Ｆ（１１８）は、双方向通信が可能な接続媒体１０４および接続媒体１０５に接続し、プリンター１０２やサーバー装置１０３と通信を行う。外部メモリ（１２１）は、オペレーティングシステムプログラム（以下、ＯＳ）１２２をはじめ各種アプリケーション１２３、印刷処理関連プログラム１２４、さらに、不図示のユーザーファイル、編集ファイル等を記憶する情報処理装置が読み取り可能な記憶媒体として機能する。なお、この実施例では、ＯＳ１２２として、Ｍｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）を使用するものとする。
【００１７】
デバイスマネージャー１２３は、本実施形態に係る、プリンタークラスのデバイス、即ちプリンターのプリンタードライバのインストールおよび管理を行う。デバイスマネージャー１２３は、図示を行わないが、ＰｎＰ技術を用いたプリンタードライバのインストール制御を行うＯＳ１２２のライブラリである、ＰｎＰマネージャーを呼び出すことでＰｎＰインストール作業を実行する。ポリシーマネージャー１２４は、情報処理装置１０１の使用ポリシーを設定した運用を行う場合、ポリシーの内容に従い、情報処理１０１内の設定、制限等をＯＳ１２２に反映させる。図示を行いが、ポリシーの内容はＯＳ１２２に内容が記載され、ポリシーマネージャー１２４を介して、情報処理装置１０１管理者が設定できる。アプリケーション１２４は、ＯＳ１２２上で動作するソフトウェアであり、ＯＳ１２２のＡＰＩを介してプリンタードライバを使用し、プリンター１０２で印刷を実行することも可能である。印刷処理関連プログラム１２６として、各関連プリンタードライバが保存されており、汎用ドライバ１２７、専用ドライバ１２９はその一例である。
【００１８】
ＯＳ１２２には汎用ドライバ１２８として使用可能な、クラスドライバがインボックスドライバとして予め同梱されている。
【００１９】
次に、プリンター１０２の構成について説明する。ＣＰＵ（１３２）は、プリンター１０２の全体の動作を制御している。ＲＡＭ（１３９）は、ＣＰＵ（１３２）の主メモリ、ワークエリア等として機能するとともに、出力情報展開領域、環境データ格納領域としても用いられる。またこのＲＡＭ（１３９）は、ＮＶＲＡＭ（不揮発性ＲＡＭ）領域も備えており、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。ＲＯＭ（１３３）は、各種フォントを記憶するフォントＲＯＭ（１３３ａ）、ＣＰＵ（１３２）により実行される制御プログラム等を記憶するプログラムＲＯＭ（１３３ｂ）、及び各種データを記憶するデータＲＯＭ（１３３ｃ）を備えている。データＲＯＭ（１３３ｃ）には、従来および本実施例のプリンタードライバのインストール処理で使用する、機器情報（機器ＩＤ１４３）を保持する。機器ＩＤ１４３の情報内容については、図１２で説明を行い、後述する実施例すべてに使用される。
【００２０】
図１２は、機器ＩＤ１４３についての説明するための図である。図１２（ａ）で示すように、機器ＩＤ１４３は、文字列情報の形で表現され、主な要素として次に示す要素で構成される。“製造者（ＭＦＧ）”は、機器の製造者情報を示す。“コマンド（ＣＭＤ）”は、機器が対応しているコマンドセット示す。“モデル（ＭＤＬ）”は、機器のモデル情報を示す。“互換ＩＤ（ＣＩＤ）”は、機器の属するファミリーやクラスの互換識別情報を示す。尚、ＩＥＥＥ１２８４の規定ではＭＦＧ、ＭＤＬ、ＣＭＤの提供は必須とされているが、ＣＩＤの提供は任意となっている。図１２（ｂ）は、機器ＩＤの一例を示している。この例では、周辺機器が、製造者は“ＡＢＣ”であり、コマンドセットとして”ＰＣＬ”をサポートしており、モデル名称が“Ｍ１２３”というプリンターであり、互換識別情報としては“Ｃｌａｓｓ１”という名称が与えられていることを示している。
【００２１】
双方向接続媒体Ｉ／Ｆ（１３８）は、情報処理装置１０１との間でデータの送受信を行なう。印刷部Ｉ／Ｆ（１３６）は、プリンターエンジンである印刷部（１３７）とのインターフェースを制御している。外部メモリ（１３４）は、外部メモリＩ／Ｆ（１４０）によりアクセスが制御されており、オプションとして接続されるハードディスク（ＨＤ）、Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ（ＳＳＤ）等を含んでおり、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。なお、ハードディスク等の外部メモリ（１３４）が接続されていない場合には、ＲＯＭ（１３３）のデータＲＯＭ（１３３ｃ）に、情報処理装置１０１で利用される情報等を記憶することになる。データＲＯＭ（１３３ｃ）には、本実施例で使用する機器ＩＤ１４３が保存されており、情報処理装置１０１とプリンター１０２が接続されたときに、プリンター１０２が機器識別情報として、情報処理装置１０１に送信する。なお、この外部メモリ（１３４）は複数備えるものであってもよく、例えば、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンター制御言語を解釈するプログラム等を格納した外部メモリを複数接続できるように構成されていてもよい。操作部（１４２）には、ユーザーによる操作を受け付ける操作パネルが設けられ、その操作パネルには操作のためのスイッチ及びＬＥＤ表示器等が配されている（不図示）。また、不図示のＮＶＲＡＭを有し、操作パネルからのプリンターモード設定情報を記憶するようにしてもよい。ＣＰＵ（１３２）は、ＲＯＭ（１３３）のプログラムＲＯＭ（１３３ｂ）に記憶された制御プログラム等に基づき、印刷部Ｉ／Ｆ（１３６）を介して印刷部（１３７）に出力情報としての画像信号を出力する。また、ＣＰＵ（１３２）は、双方向通信媒体Ｉ／Ｆ（１３８）を介した情報処理装置１０１との通信処理が制御可能となっている。この通信により、プリンター１０２は、情報処理装置１０１から送信される印刷データを受信すると共に、プリンター１０２内の情報を情報処理装置１０１に通知可能に構成されている。
【００２２】
図１（ｃ）はサーバー装置１０３の装置構成を示すブロック図である。サーバー装置１０３において、ＣＰＵ（１６１）は、ＲＡＭ（１６２）に記憶されているプログラムに従って、システムバス（１６０）に接続される各デバイスを総括的に制御している。このＲＡＭ（１６２）は、ＣＰＵ（１６１）の主メモリ、ワークエリア等としても機能している。ＲＯＭ（１６３）は、各種プログラム及びデータを格納している。ＨＩＤ  Ｉ／Ｆ（１６５）は、キーボードなどのヒューマンインタフェースデバイスや不図示のポインティングデバイス（マウス）であるＨＩＤ（１６９）からの信号入力を制御する。ディスプレイＩ／Ｆ（１６６）は、ディスプレイ（１７０）への表示を制御している。外部メモリＩ／Ｆ（１６７）は、例えばＨＤ、ＳＳＤ等の外部メモリ（３２０）とのアクセスを制御する。外部メモリ（１７１）は、ＯＳ１７２をはじめドライバ管理プログラム（１７３）、さらに、不図示のユーザーファイル、編集ファイル等を記憶するコンピューターが保存または、読み取り可能な記憶媒体として機能する。ドライバデータベースプログラム１７４は、本実施形態に係る検索プログラム（１７５）を含んでいる。ネットワークＩ／Ｆ（１６８）は、インターネットあるいは携帯通信網のような無線通信網を介して情報処理装置１０１に接続され、その先に接続されているプリンター１０２の制御に適したプリンタードライバに関する情報のやり取り、制御を行なう。尚、サーバーコンピュータ１０３に最新のドライバやポリシー設定データを保持しておくことで、最新の汎用および専用ドライバや、ポリシー情報を情報処理装置１０１に提供することが可能になる。企業内のネットワークにサーバー装置１０３が存在する場合は、とくに、社内運用ポリシーに適したカスタマイズ設定を施した汎用ドライバの運用などが可能になる。ここで、カスタマイズ設定を施した汎用ドライバとは、特定の印刷設定に制限を加えたり、デフォルトの設定を変更したり、ユーザーインターフェースに変更が加えられた、社内でのみ運用されるような汎用ドライバを示す。
【００２３】
図２は、従来の印刷システムにおけるプリンタードライバのインストール処理の一例を示すフローチャートである。まず、情報処理装置１０１のＯＳ１２２が接続媒体１０４を介してプリンター１０２が接続されたことを検知し、インストール処理が開始される。
【００２４】
Ｓ２０１では、デバイスマネージャー１２３はプリンター１０２に対して機器ＩＤ１４３の取得要求を発行し、この要求の応答としてプリンター１０２から機器ＩＤ１４３を取得する。デバイスマネージャー１２３は、取得した機器ＩＤ１４３に含まれるモデル情報（ＭＤＬ）をさらに取得する。機器ＩＤ１４３が保持している情報の内容は、図１２で後述する。Ｓ２０２では、デバイスマネージャー１２３はモデル情報（ＭＤＬ）に対応する専用ドライバの検索を実施する。Ｓ２０３では、このＳ２０２の検索処理で専用ドライバが見つかった場合Ｓ２０７へ、見つからない場合にはＳ２０４に処理を進める。
【００２５】
Ｓ２０４にて、デバイスマネージャー１２３は機器ＩＤ１４３に互換識別情報（ＣＩＤ）が含まれていたかどうかを調べる。（Ｓ２０４）機器ＩＤ１４３に互換識別情報（ＣＩＤ）が含まれている場合にはＳ２０５へと進み、機器ＩＤ１４３に互換識別情報（ＣＩＤ）が含まれていない場合にはＳ２２０へ進む。Ｓ２０５では、デバイスマネージャー１２３は互換識別情報（ＣＩＤ）に対応する汎用ドライバ１２７の検索を実施する。Ｓ２０６では、デバイスマネージャー１２３は、Ｓ２０５の検索処理での汎用ドライバ１２８の有無を判定し、見つかった場合Ｓ２０７へ、見つからない場合にはＳ２２０に進む。
【００２６】
Ｓ２２０で、デバイスマネージャー１２３は、論理プリンターを追加するためにユーザーの入力を受け付けるダイアログの表示を行う。図３は、プリンターの追加画面の一例を示す図であり、このようなダイアログを表示して、ユーザーからインストールを行うドライバの入力を受け付ける。次に、Ｓ２２１に進み、インストールするプリンタードライバの指定をユーザーから受付、インストールドライバが指定されているかどうかの確認を行う。インストールするドライバが指定されていない場合、ドライバのインストールやプリンターの追加処理は行わず、本処理を終了する。また、Ｓ２２１で、インストールするプリンタードライバがユーザーにより指定された場合、Ｓ２０７に進む。
【００２７】
Ｓ２０７で、デバイスマネージャー１２３はインストール指示されたプリンタードライバが既に情報処理装置１０１にインストール済みかどうかを調べる。Ｓ２０７で該当するプリンタードライバが見つかれば次のＳ２０８に進み、見つからなければＳ２０９に進む。Ｓ２０８では、該当ドライバが未だ情報処理装置１０１にインストールされてない場合、デバイスマネージャー１２３は情報処理装置１０１に該当プリンタードライバをインストールする処理を行う。Ｓ２０９では、デバイスマネージャー１２３はプリンター１０２の接続を検知したポートを出力先ポートとする論理プリンターの作成を行う。ここで、論理プリンターとはプリンタードライバを利用するための論理的なオブジェクトであり、印刷アプリケーションが印刷を行う際に「プリンター」として参照するオブジェクトである。尚、一つの論理プリンターは一つのプリントキューを持つ。
【００２８】
図３は、図２のＳ２２０のタイミングで表示されるダイアログの一例である。ユーザーは、本プリンターの追加ダイアログ３００を使用し、インストールするプリンタードライバの指定を行う。
【００２９】
ユーザーは、製造元（３０１）とプリンター（３０２）のドロップダウンコンボボックスから、所望のプリンターを選択し、次へボタン３０５押下により、プリンタードライバのインストール処理を開始することが可能である。また、Ｕｐｄａｔｅボタン３０３押下により、デバイスマネージャー１２３は、ＯＳ１２２を介し、双方向接続媒体Ｉ／Ｆ（１１８）からインターネットあるいはイントラネット等の通信可能な接続媒体１０５でサーバー装置１０３に接続する。サーバー装置１０３のドライバ管理プログラム１７３が検索プログラム１７５に問い合わせ、利用可能なプリンターの一覧リストを情報処理装置１０１へ返信する。デバイスマネージャー１２３は、製造元（３０１）とプリンター（３０２）のドロップダウンコンボボックスの内容を更新する。ディスク使用ボタン３０４は、ユーザー押下により、デバイスマネージャー１２３が、外部メモリＩ／Ｆ（１１７）を介して、外部メモリ（１２１）にアクセスを行う。キャンセルボタン３０６及びクローズダイアログボタン３０７は、本プリンターの追加ダイアログ（３００）を閉じるためのボタンで、この操作が行われた場合はインストールするドライバが決定されなかった場合の処理となる。
【００３０】
図４は、本実施例におけるインストール処理の一例を示すフローチャートである。本処理は、情報処理装置１０１のＯＳ１２２がプリンター１０２の接続を検知し、インストール処理が開始される。本処理は、ＯＳ１２２により実行されることを想定しているが、ＯＳ１２２上で動作するインストーラーなどのソフトウェアがＯＳ１２２の探索機能を利用して、実行することも可能である。
【００３１】
Ｓ４０１で、デバイスマネージャー１２３はプリンター１０２に対して機器ＩＤ１４３の取得要求を発行し、その応答として、プリンター１０２から機器ＩＤ１４３を取得する。デバイスマネージャー１２３は、さらに、前記機器ＩＤ１４３から、モデル情報（ＭＤＬ）と互換識別情報（ＣＩＤ）を抽出する。Ｓ４０２で、デバイスマネージャー１２３は、抽出された情報に対応する専用ドライバが既にインストールされているか確認を行う。Ｓ４０３で、デバイスマネージャー１２３は、Ｓ４０２の確認処理で、専用ドライバが見つかった場合Ｓ４０４へ、見つからない場合にはＳ４０５に処理を進める。
【００３２】
Ｓ４０４で、デバイスマネージャー１２３は、ＯＳ１２２の設定で『汎用ドライバを使用する』設定になっているかどうか確認する。Ｓ４０４で、汎用ドライバを使用する設定になっている場合にはＳ４０５に進み、専用ドライバを使用しない設定あるいはその設定自体がない場合にはＳ４０８へ進む。Ｓ４０５で、デバイスマネージャー１２３は、機器ＩＤ１４３に互換識別情報（ＣＩＤ）が含まれ、Ｓ４０１で抽出されたかを判定する。機器ＩＤ１４３から互換識別情報（ＣＩＤ）が抽出された場合にはＳ４０６へと進み、含まれていない場合にはＳ４２０へ進む。Ｓ４０６で、デバイスマネージャー１２３は、互換識別情報（ＣＩＤ）に対応する汎用ドライバ１２７の検索を実施する。Ｓ４０７で、デバイスマネージャー１２３は、Ｓ４０６の検索処理で汎用ドライバ１２８が見つかった場合にはＳ４０８へ、見つからない場合にはＳ４２０に処理を進める。
【００３３】
Ｓ４２０で、デバイスマネージャー１２３は、論理プリンターを追加するためにユーザーの入力を受け付けるダイアログ（図３）の表示を行う。該ダイアログを表示して、ユーザーからインストールを行うドライバの入力を受け付ける。次に、Ｓ４２１に進み、デバイスマネージャー１２３は、インストールするプリンタードライバの指定をユーザーから受付、インストールすべきプリンタードライバが指定されているかどうかの確認を行う。インストールすべきプリンタードライバが指定されていない場合、プリンタードライバのインストールやプリンターの追加処理は行わず、本処理を終了する。また、インストールするプリンタードライバがユーザーにより指定された場合にはＳ４２２に進む。Ｓ４２２で、デバイスマネージャー１２３は、ＭＤＬに対応する専用ドライバのインストールが指定された場合には、ＯＳ１２２での『汎用ドライバを使用する』設定を、『専用ドライバを使用する』設定に変更する。
【００３４】
Ｓ４０８で、デバイスマネージャー１２３は、Ｓ４０３またはＳ４０７で見つかったと判定されたインストール対象のプリンタードライバが、既に情報処理装置１０１にインストール済みかどうかを調べる。例えば、情報処理装置１０１にインストールされているプリンタードライバ名のリストを取得し、該リストにインストールが指示されたプリンタードライバ名が記載されているかを調べることで、該当ドライバが既にインストール済みかを判断することができる。Ｓ４０８で該当するプリンタードライバが見つかればＳ４１３に進み、見つからなければＳ４０９に進む。
【００３５】
Ｓ４０９で、デバイスマネージャー１２３は、接続が検出されたプリンター１０２でも利用可能なプリンタードライバが既に他のプリンター用にインストールされているかを確認する。既にインストールされていた場合にはＳ４１０に進み、インストールされていない場合にはＳ４１２に進む。Ｓ４１０で、デバイスマネージャー１２３は、上記インストール対象のプリンタードライバの方が、Ｓ４０９で情報処理装置１０１に既にインストールされていることが確認されたプリンタードライバより適切なドライバであるかを判定する。この判定で、より適切であると判定された場合にはＳ４１２に進み、そうでない場合にはＳ４１１に進む。ここでの判定では、例えば、プリンタードライバのバージョン情報やプリンタードライバの構成情報に含まれるファイルの日付を比較することにより、より新しいものが適切なものとして判断している。Ｓ４１１では、デバイスマネージャー１２３が、Ｓ４０９で情報処理装置１０１に既にインストールされていることが確認されたプリンタードライバを、接続が検出されたプリンター１０２用に再インストールする。Ｓ４１２で、デバイスマネージャー１２３、は情報処理装置１０１に上記インストール対象のプリンタードライバをインストールする。
【００３６】
Ｓ４１３でデバイスマネージャー１２３は、これまでの処理でプリンター１０２に対応するとして特定され、インストールされたプリンタードライバを利用するため、プリンター１０２の接続を検知したポートを出力先ポートとする論理プリンターの作成を行う。ここで、論理プリンターとはプリンタードライバを利用するための論理的なオブジェクトであり、印刷アプリケーションが印刷を行う際に「プリンター」として参照するオブジェクトである。尚、一つの論理プリンターは一つのプリントキューを持つ。
【００３７】
Ｓ４１４で、デバイスマネージャー１２３は、Ｓ４０２〜Ｓ４１３までの処理で、プリンター１０２に対応する専用ドライバと汎用ドライバの両方が見つかったかどうかを判断する。いずれかしか見つからなかった場合は本処理を終了し、両方見つかった場合には、Ｓ４１５に進む。
【００３８】
Ｓ４１５で、デバイスマネージャー１２３は、図５で示すようなメッセージを、ディスプレイ（１２０）に表示する。図５に示す表示画面を介して、ユーザーが専用ドライバと汎用ドライバの何れを優先して利用するかの選択を促す。図５の詳細については後述する。次に、Ｓ４１６で、デバイスマネージャー１２３は、ユーザーによる図５に示す表示画面を介した選択により、『汎用ドライバを使用する』設定に変更が行われたかを判定する。設定が変更されたと判定した場合にはＳ４１７に進み、専用ドライバを選択、または設定変更がなかった場合には本処理を終了する。Ｓ４１７で、デバイスマネージャー１２３は、ユーザーの選択に従い、ＯＳ１２２の設定を『汎用ドライバを使用する』設定に変更し、Ｓ４０４の処理に戻る。
【００３９】
図４で示す処理により、ユーザーの意図に従い、ＯＳ１２２のインストール処理であっても、新たに接続が検出された周辺機器のために、専用ドライバの代わりに汎用ドライバをインストールすることも可能になる。さらに、汎用ドライバの中でも既にインストールされている汎用ドライバの情報と比較して、より適切なドライバのインストールが可能となる。
【００４０】
図５は、図４のＳ４１５において、ユーザーに提示されるメッセージを含むユーザーインターフェースの一例を表す図である。５００は、本メッセージのダイアログである。本ダイアログには、専用ドライバと汎用ドライバが存在することを表示するとともに、現在のＯＳの設定が『専用ドライバを使用する』設定、あるいは『汎用ドライバを使用する』設定かを表示する。この設定において、デフォルトの設定では、『専用ドライバを使用する』設定になる。
【００４１】
５０１は『専用ドライバを使用する』設定を選択するボタンであり、５０２は『汎用ドライバを使用する』設定を選択するボタンである。５０３は、専用ドライバおよび汎用ドライバに関する詳細設定を提供するダイアログを開くためのボタンであり、押下すると、本ダイアログを閉じ、デバイスマネージャー１２３は、図６で示すダイアログボックスをディスプレイ部（１２０）に表示する。
【００４２】
図６は、図５のボタン５０３を押下した場合に表示されるユーザーインターフェースの一例を表す図である。６００は、デバイスマネージャー１２３が管理する論理プリンターの設定を表示するダイアログボックスである。図４のＳ４１３などで作成された論理プリンターの設定を、本ダイアログボックスで確認、再設定することが可能である。
【００４３】
６０１は、専用ドライバおよび汎用ドライバに関する設定が可能な詳細設定タブシートである。ボタン５０３の押下に応じて、本タブシート６０１が選択された状態で、ダイアログボックス６００が、ディスプレイ部（１２０）に表示される。
【００４４】
６０２は、プリンタードライバの選択のためのドロップダウンコンボボックスである。図４でインストールされたプリンタードライバの名称が表示される。ドロップダウンコンボボックス６０２は、情報処理装置１０１にインストールされているプリンタードライバのすべてのリストから所望のプリンタードライバを選択し、図４のＳ４１３で作成した論理プリンターに関連付けすることが可能である。６０３は、ドロップダウンコンボボックス６０２における候補以外の新しいプリンタードライバを追加する処理を開始するためのドライバ追加ボタンである。ドライバ追加ボタン６０３が押下されると、デバイスマネージャー１２３が図３で示す画面をディスプレイ部（１２０）に表示し、ユーザーによりインストールするプリンタードライバの追加処理が可能となる。６０４は、使用するプリンタードライバの種類を選択するためのラジオボタンである。ラジオボタン６０４で選択された設定が、現在のＯＳ１２２の設定となる。
【００４５】
（実施例２）
次に、本発明に係る第２の実施形態について説明する。本実施例においては、グループポリシーを考慮した上でデバイスドラバのインストール処理を実現する。
【００４６】
本実施例については、システムの構成、情報処理装置１０１、プリンター１０２、及びサーバー装置１０３の構成については、実施例１と同様のものとする。ここで、ＯＳ１２２が搭載され実行されている情報処理装置１０１は、サーバー装置１０３がイントラネット等のネットワーク１０５に接続されている。また、サーバー装置１０３は、ユーザーアカウントに関連付けされたグループポリシーを管理しているものとする。
【００４７】
ここで、本実施例におけるグループポリシーでは、『汎用ドライバを使用する』設定、『専用ドライバを使用する』設定のいずれかが指定されている。さらに、それら指定による種類のドライバ以外の使用を禁止するかも指定可能である。具体的には、ネットワーク管理者などが汎用ドライバのみの使用を推奨する場合には、グループポリシーとしては、『汎用ドライバを使用する』設定と、『指定された種類のドライバ以外の使用を禁止する』設定が有効になる。
【００４８】
図７は、グループポリシーを有効にした場合のＯＳ１２２のインストール処理の一例を示すフローチャートである。本処理は、ＯＳ１２２がプリンター１０２の接続を検知し、インストール処理が開始される。本処理は、ＯＳ１２２により実行されることを想定しているが、ＯＳ１２２上で動作するインストーラーなどのソフトウェアがＯＳ１２２の探索機能を利用して、実行することも可能である。
【００４９】
Ｓ７０１で、デバイスマネージャー１２３はプリンター１０２に対して機器ＩＤ１４３の取得要求を発行し、その応答として、プリンター１０２から機器ＩＤ１４３を取得する。デバイスマネージャー１２３は、さらに、前記機器ＩＤ１４３から、モデル情報（ＭＤＬ）と互換識別情報（ＣＩＤ）を抽出する。
【００５０】
Ｓ７０２で、デバイスマネージャー１２３は、今までにインストールの対象となったことのあるプリンタードライバの情報を取得する。ここでは、例えば、情報処理装置１０１にインストールされているプリンタードライバ名のリストと、過去に行われたインストール処理のログ情報との少なくとも何れかを取得する。該リストを確認することで、今回インストールの対象となるプリンタードライバが既にインストール済みかどうかを判断することができる。さらに、該ログ情報から実際にはインストールを行わなかったが入手可能であったプリンタードライバを確認し、ドライバ検索処理の効率化や高速化が行われる。次に、Ｓ７０４で、デバイスマネージャー１２３は、ポリシーマネージャー１２４に問い合わせ、プリンタードライバに関するグループポリシーを要求する。ポリシーマネージャー１２４は、グループポリシーが存在する場合には、応答として、当該グループポリシーを情報処理装置１０１に送信する。
【００５１】
Ｓ７０５で、デバイスマネージャー１２３は、グループポリシーが存在するか否かを判断する。グループポリシーが存在したことが確認できた場合にはＳ７０６に処理を進め、存在しない場合にはＳ７２０に処理を進める。Ｓ７０６で、デバイスマネージャー１２３は、グループポリシーが『汎用ドライバを使用する』設定を示すかを判定する。『汎用ドライバを使用する』設定を示す場合にはＳ７０７に処理を進め、『汎用ドライバを使用する』設定を示さない場合、つまり『専用ドライバを使用する』設定の場合にはＳ７２０に処理を進める。Ｓ７２０で、デバイスマネージャー１２３は、図２で示すインストール処理を実行し、本処理を終了する。
【００５２】
Ｓ７０７で、デバイスマネージャー１２３は、機器ＩＤ１４３から抽出されたにモデル情報（ＭＤＬ）と互換識別情報（ＣＩＤ）に対応する専用ドライバ及び汎用ドライバを検索する。Ｓ７０８で、デバイスマネージャー１２３は、汎用ドライバが見つかり、かつ、該見つかった汎用ドライバが既にインストール済みのプリンタードライバよりも適切であるかを判定する。この判定で、より適切であると判定された場合にはＳ７０９に進み、そうでない場合にはＳ７３０に進む。ここで、Ｓ７０７で汎用ドライバが見つからなかった場合はＳ７３０に進む。また、接続が検知されたプリンター１０２に対応するようなプリンタードライバがまだインストールされていない場合にはＳ７０９に進む。Ｓ７０８の判定では、Ｓ７０２で取得した情報に基づき、例えば、プリンタードライバのバージョン情報やプリンタードライバの構成情報に含まれるファイルの日付を比較することにより、より新しいものが適切なものとして判断している。
【００５３】
Ｓ７３０で、デバイスマネージャー１２３は、グループポリシーで専用ドライバの使用が禁止されているかを判定する。禁止されている場合にはＳ７３２に進み、禁止されていない場合にはＳ７３１に進む。Ｓ７３１で、デバイスマネージャー１２３は、デバイスマネージャー１２３は、専用ドライバが見つかり、かつ、該見つかった専用ドライバが既にインストール済みのプリンタードライバよりも適切であるかを判定する。この判定で、より適切であると判定された場合にはＳ７０９に進み、そうでない場合にはＳ７３２に進む。ここで、Ｓ７０７で専用ドライバが見つからなかった場合はＳ７３２に進む。また、接続が検知されたプリンター１０２に対応するようなプリンタードライバがまだインストールされていない場合にはＳ７０９に進む。Ｓ７３２では、Ｓ７０７でプリンタードライバが見つかった場合であっても、インストール処理を行うことなく、当該ドライバ情報をログとして保存する。その後、図７で示す処理を終了する。
【００５４】
Ｓ７０９で、デバイスマネージャー１２３は、Ｓ７０７で見つかった汎用ドライバもしくは専用ドライバのインストール処理を制御する。そして、Ｓ７１０で、デバイスマネージャー１２３は、インストールされたプリンタードライバを利用するために、プリンター１０２の接続を検知したポートを出力先ポートとする論理プリンターの作成を行う。その後、図７で示す処理を終了する。
【００５５】
図８は、Ｓ７１０で、グループポリシーにより汎用ドライバのインストールが完了した場合に、情報処理装置１０１において表示される通知画面である。この通知画面８００では、グループポリシーの内容（たとえば、『汎用ドライバ使用する』設定であること）と、インストールが完了した旨を通知する内容が表示される。ここで、「問い合わせ…」ボタンをユーザーが押下することで、デバイスマネージャー１２３は、ＯＳ１２２の機能として、グループポリシーの管理者にメッセージを送信することが可能である。
【００５６】
図９は、Ｓ７３２で、インストール処理が行われなかった場合に、情報処理装置１０１において表示される通知画面である。この通知画面９００では、グループポリシーの内容（たとえば、『汎用ドライバ使用する』設定であること）と、インストールが行われなかった旨を通知する内容が表示される。ここで、「問い合わせ…」ボタンをユーザーが押下することで、デバイスマネージャー１２３は、ＯＳ１２２の機能として、グループポリシーの管理者にメッセージを送信することが可能である。
【００５７】
なお、実施例２に記載のグループポリシーの設定と、実施例１に記載のＯＳの設定とを組み合わせて利用してもよい。具体的には、いずれかの設定が行われていない場合には、他方の設定に従いプリンタードライバのインストール処理を実行するようにデバイスマネージャー１２３が制御する。また、ともに設定が行われている場合には、グループポリシーの設定を優先するようにデバイスマネージャー１２３がインストール処理を実行するように制御する。
【００５８】
（実施例３）
次に、本発明に係る第３の実施形態について説明する。本実施例では、新たに接続されたプリンターに対応するプリンタードライバをすべてインストールすることを想定している。
【００５９】
本実施例については、システムの構成、情報処理装置１０１、プリンター１０２、及びサーバー装置１０３の構成については、実施例１と同様のものとする。
【００６０】
図１０は、実施例３におけるＯＳ１２２のインストール処理の一例を示すフローチャートである。本処理は、ＯＳ１２２がプリンター１０２の接続を検知し、インストール処理が開始される。本処理は、ＯＳ１２２により実行されることを想定しているが、ＯＳ１２２上で動作するインストーラーなどのソフトウェアがＯＳ１２２の探索機能を利用して、実行することも可能である。
【００６１】
Ｓ１００１で、デバイスマネージャー１２３はプリンター１０２に対して機器ＩＤ１４３の取得要求を発行し、その応答として、プリンター１０２から機器ＩＤ１４３を取得する。デバイスマネージャー１２３は、さらに、前記機器ＩＤ１４３から、モデル情報（ＭＤＬ）と互換識別情報（ＣＩＤ）を抽出する。Ｓ１００２で、デバイスマネージャー１２３は、機器ＩＤ１４３から抽出されたにモデル情報（ＭＤＬ）と互換識別情報（ＣＩＤ）に対応する専用ドライバ及び汎用ドライバを検索する。
【００６２】
Ｓ１００３において、Ｓ１００２の検索処理で見つかったドライバでＳ１００４〜Ｓ１００６の処理が行われていないドライバがあるか否かを判定する。未処理のドライバがある場合にはＳ１００４に進み、未処理のドライバがない場合にはＳ１００８に進む。デバイスマネージャー１２３は、Ｓ１００４〜Ｓ１００６で、Ｓ１００２の検索処理で見つかったドライバの中の未処理のドライバの１つを対象に処理を行う。
【００６３】
Ｓ１００４で、デバイスマネージャー１２３は、対象となるプリンタードライバをインストールする。そして、プリンター１０２の接続を検知したポートを出力先ポートとする論理プリンターの追加作成を行う。本実施例では、１つのプリントキューに対して、複数のプリンタードライバのインストールが可能であり、ユーザーはインストールされているプリンタードライバを適宜、切り替えることで所望のプリンタードライバを使用する。Ｓ１００５で、デバイスマネージャー１２３は、インストール済みのプリンタードライバのランクを決定する。例えば、プリンタードライバのバージョン情報やプリンタードライバの構成情報に含まれるファイルの日付を比較することにより、インストール済みのプリンタードライバのそれぞれのランクを決定する。Ｓ１００６で、デバイスマネージャー１２３は、Ｓ１００５で決定したランクに従い、プリントキューに対応するプリンタードライバのリストを作成する。
【００６４】
Ｓ１００８で、デバイスマネージャー１２３は、論理プリンターが作成されているかどうかを判定する。Ｓ１００４〜Ｓ１００６までの処理が行われていない場合には論理プリンターが作成されていない。論理プリンターが作成されている場合にはＳ１００９に進み、論理プリンターが作成されていない場合にはＳ１０２０に進む。
【００６５】
Ｓ１００９で、デバイスマネージャー１２３は、接続が検知されたプリンター１０２に対応する専用ドライバと汎用ドライバの両方がインストールされているかどうかを判断する。両種類ともインストールされている場合にはＳ１０１０に進み、いずれかしかインストールされていない場合にはＳ１０１１に進む。Ｓ１０１０で、デバイスマネージャー１２３は、使用するプリンタードライバの種類に関する設定を参照する。Ｓ１０１０での参照の結果、「すべてのドライバ種を使用可能とする」設定であった場合にはＳ１０１２に進み、「専用ドライバのみを使用する」設定であった場合にはＳ１０１３に進み、「汎用ドライバのみを使用する」設定であった場合にはＳ１０１４に進む。Ｓ１０１１で、デバイスマネージャー１２３は、使用するプリンタードライバの種類に関する設定を「すべてのドライバ種を使用可能とする」に設定する。
【００６６】
Ｓ１０１２で、デバイスマネージャー１２３は、インストールされたドライバを含むドライバリストを作成する。ここでは、専用ドライバがリストの上部に、汎用ドライバがリストの下部に配置される。Ｓ１０１３で、デバイスマネージャー１２３は、インストールされた専用ドライバのみを含むドライバリストを作成する。Ｓ１０１４で、デバイスマネージャー１２３は、インストールされた汎用ドライバのみを含むドライバリストを作成する。
【００６７】
Ｓ１０１２〜Ｓ１０１４の処理で作成されたリストは、プリンター１０２の印刷で使用するプリンタードライバを管理するためのリストである。このリストは、Ｓ１００５〜Ｓ１００６の処理で決定したランクで順番づけされリストされている。このリストは、図１１で後述するプリンター１０２の設定ダイアログボックスで、ユーザーが使用するプリンタードライバの表示、選択を行う場合に使用する情報であり、外部メモリ（１２１）のＯＳ１２２のユーザー情報として保存される。
【００６８】
その後、Ｓ１０１５で、デバイスマネージャー１２３は、作成されたドライバリストの最上位にリストされているプリンタードライバを、デフォルトで使用するプリンタードライバに設定する。その後、本処理を終了する。
【００６９】
デバイスマネージャー１２３は、Ｓ１０２０で論理プリンターを追加するためにユーザーの入力を受け付けるダイアログ（図３）の表示を行い、Ｓ１０２１でユーザーからインストールすべきドライバが指定されているかどうかの確認を行う。ここで、インストールするドライバが指定されていない場合、ドライバのインストールやプリンターの追加処理は行わず、本処理を終了する。インストールすべきプリンタードライバがユーザーにより指定された場合にはＳ１０２２に進む。Ｓ１０２２で、デバイスマネージャー１２３は、指定されたプリンタードライバをインストールして、プリンター１０２の接続を検知したポートを出力先ポートとする論理プリンターの作成を行い、本処理を終了する。
【００７０】
図１１は、図１０のプリンタードライバのインストール処理の結果、同じプリントキューにインストールされた１以上のプリンタードライバを表示、選択をするプリンター１０２に関する設定画面１１００の一例を表す図である。設定画面１１００は、ＯＳ１２２のデバイスマネージャー１２３が管理する論理プリンターの設定を表示するダイアログボックスである。この画面上で、図１０の処理で作成されたドライバリストを用いて、インストールされた１以上のプリンタードライバを表示、選択できる。本ダイアログボックスにおいてのユーザーの設定変更は、次回発生するＯＳ１２２のイベントに対応して効力が発生するものとする。
【００７１】
１１０２は、使用するプリンタードライバの種類に関する設定を選択するためのラジオボタンである。ラジオボタンが有効になっているものが現在の設定である。
１１０３は、使用するプリンタードライバを選択するためのドロップダウンコンボボックスである。ドロップダウンコンボボックスでは、図１０の処理で作成したドライバリストが表示される。ここで選択された所望のプリンタードライバが、図１０で作成された論理プリンターに関連付けされる。図１０のＳ１０１５でデフォルトに設定されたプリンタードライバがドロップダウンコンボボックス１１０３においてデフォルト表示されている。ボタン１１０４は、ドロップダウンコンボボックス１１０３で選択できない新しいプリンタードライバを追加する処理を開始を指示するためのボタンである。ボタン１１０４を押下すると、デバイスマネージャー１２３は、図３のプリンターの追加ダイアログ３００をディスプレイ部１２０に表示する。
【００７２】
これらの処理により、デバイスマネージャー１２３は、インストール可能なすべてのプリンタードライバをインストールし、かつ優先順位を持ったドライバリストを作成する。これにより、たとえば、汎用ドライバの中でも既にインストールされている汎用ドライバと比較し、より適したドライバの選択が可能となる。また、ユーザーの設定により、汎用ドライバのみを使用することを設定すれば、専用ドライバの代わりに汎用ドライバを容易に使用することが可能になる。
【００７３】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００７４】
さらに、本発明には、上述した実施形態の適宜組み合わせることにより構成されたシステムやその機能も含まれるものとする。
【図１】
2014160318.tif 000003
【図２】
2014160318.tif 000004
【図３】
2014160318.tif 000005
【図４】
2014160318.tif 000006
【図５】
2014160318.tif 000007
【図６】
2014160318.tif 000008
【図７】
2014160318.tif 000009
【図８】
2014160318.tif 000010
【図９】
2014160318.tif 000011
【図１０】
2014160318.tif 000012
【図１１】
2014160318.tif 000013
【図１２】
2014160318.tif 000014