(57)【特許請求の範囲】
【請求項１】
ネットワークに接続され、前記ネットワーク上の情報処理装置と通信可能な画像形成装置であって、
複数の画像形成手段と、
前記複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定手段と、
前記情報処理装置から受信する情報要求に対して、前記決定手段で決定した画像形成手段の識別子を含む識別情報を送信する送信手段と、
前記情報処理装置から検索要求を受信する受信手段と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答手段と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶する記憶手段とを備え、
前記決定手段は、前記記憶手段に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在する場合、前記情報処理装置の識別情報に対応するタイプの画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する
ことを特徴とする画像形成装置。
【請求項２】
前記決定手段は、前記記憶手段に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在しない場合、当該画像形成装置にオプションとして追加拡張された画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する
ことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
ネットワークを介して画像形成装置と情報処理装置とが相互に接続されて構成される画像形成システムであって、
前記画像形成装置は、
複数の画像形成手段と、
前記複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定手段と、
前記情報処理装置から受信する情報要求に対して、前記決定手段で決定した画像形成手段の識別子を含む識別情報を送信する送信手段と、
前記情報処理装置から検索要求を受信する受信手段と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答手段と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶する記憶手段とを備え、
前記決定手段は、前記記憶手段に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在する場合、前記情報処理装置の識別情報に対応するタイプの画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定し、
前記情報処理装置は、
前記識別情報を前記画像形成装置から受信する受信手段と、
前記受信手段で受信した識別情報に基づいて、前記画像形成装置を使用するためのデバイスドライバをインストールするインストール手段と
を備えることを特徴とする画像形成システム。
【請求項４】
ネットワークに接続され、前記ネットワーク上の情報処理装置と通信可能な画像形成装置の制御方法であって、
前記画像形成装置が備える複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定工程と、
前記情報処理装置から受信する情報要求に対して、前記決定工程で決定した画像形成手段の識別子を含む識別情報を送信する送信工程と、
前記情報処理装置から検索要求を受信する受信工程と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答工程と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶媒体に記憶する記憶工程とを備え、
前記決定工程は、前記記憶工程で前記記憶媒体に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在する場合、前記情報処理装置の識別情報に対応するタイプの画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する
ことを特徴とする画像形成装置の制御方法。
【請求項５】
ネットワークに接続され、前記ネットワーク上の情報処理装置と通信可能な画像形成装置の制御をコンピュータに実行させるためのプログラムであって、
前記画像形成装置が備える複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定工程と、
前記情報処理装置から受信する情報要求に対して、前記決定工程で決定した画像形成手段の識別子を含む識別情報を送信する送信工程と、
前記情報処理装置から検索要求を受信する受信工程と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答工程と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶媒体に記憶する記憶工程とをコンピュータに実行させ、
前記決定工程は、前記記憶工程で前記記憶媒体に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在する場合、前記情報処理装置の識別情報に対応するタイプの画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続され、前記ネットワーク上の情報処理装置と通信可能な画像形成装置及びその制御方法、プログラム、その画像形成装置及び情報処理装置からなる画像形成システムに関するものである。
【背景技術】
【０００２】
従来、ネットワークに接続され、ネットワークを介してコンピュータからの操作を受け付ける画像形成装置（例えば、プリンタや複合機等）が利用されている。更に、この画像形成装置においては、装置内で処理可能なＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）を後から拡張し、複数のＰＤＬをサポートすることが可能であるものも存在する。
【０００３】
また、周辺装置であるデバイスと、ホストコンピュータ等の情報処理装置とが接続する際には、デバイスは機種名や製造社名を含むデバイス情報を情報処理装置に送信することが可能である。これを受けて、情報処理装置はデバイス情報中のデバイスＩＤを参照し、それによって特定されるデバイスドライバを選択してインストールすることが可能である。このような技術は、プラグアンドプレイと呼ばれる。
【０００４】
ここで、一般的なプラグアンドプレイによるプリンタドライバインストール処理について、図１を用いて説明する。
【０００５】
図１において、情報処理装置１００の一例としては、一般的なパーソナルコンピュータ（ＰＣ）やワークステーション等をホストコンピュータとして用いることになる。情報処理装置１００には、装置に搭載されるオペレーティングシステム（ＯＳ）への同梱ドライバとして、複数のドライバセット１０１〜１０３が予め格納されているものとする。
【０００６】
ドライバセット１０１〜１０３はそれぞれ、ドライバインストール時に参照される固有情報を記述したＩＮＦファイル１０４と、各種実行モジュール１０５と、そして、リソース１０６によって構成される。ＩＮＦファイル１０４中には、プラグアンドプレイ時に渡されるデバイス情報中の製造者名称であるＭＦＧタグと、製品名称であるＭＤＬタグの値を用いて構成されるデバイスＩＤが記述されている。
【０００７】
このデバイスＩＤは、インストール時に対応する画像形成装置（プリンタ）とデバイスドライバを正確に対応つけるための識別子として用いられる。情報処理装置１００と画像形成装置１０７が、ＵＳＢ等の通信媒体１０８を介して接続されると、画像形成装置１０７がその接続を検知する。接続の検知後、画像形成装置１０７は、自装置の固有情報を含むＩＥＥＥ１２８４規定のデバイス情報１０９を、通信媒体１０８を介して情報処理装置１００へ送信する。ここで、ＩＥＥＥ１２８４規定のデバイス情報１０９は、図２に示す情報を含む。
【０００８】
デバイス情報１０９を受信した情報処理装置１００内のＯＳは、デバイス情報１０９中のＣＬＳタグを読み取り、プラグアンドプレイの対象が画像形成装置であることを認識し、対応するドライバセットのインストール処理を開始する。ＯＳは、デバイス情報１０９のＭＦＧタグとＭＤＬタグから構成されるデバイスＩＤを生成し、そのデバイスＩＤが記述されているＩＮＦファイル１０４を有するドライバセットを、ドライバセット１０１〜１０３から検索する。
【０００９】
デバイス情報１０９に対応するドライバセットを検索した場合は、そのドライバセット中の各種実行モジュール１０５と、そして、リソース１０６をＯＳへインストールする。続けて、そのインストールしたドライバセットを、デバイス情報１０９を受信した通信媒体１０８のポートへ割り当てる。もし、対応するドライバセットが情報処理装置１００に存在しない場合は、インストール処理を行わずに終了する。
【００１０】
ここで、図２に示すデバイス情報について説明する。
【００１１】
図２に示すデバイス情報のフォーマットでは、タグ名称を示す「タグ」列と、そのタグで取り得る値を示す「値」列で構成される。ＣＬＳタグには、値として「ＰＲＩＮＴＥＲ」が格納されている。ＣＬＳタグは、装置のタイプが値として格納されるものであり、ここでは、接続先の周辺装置が画像形成装置であることを示している。
【００１２】
ＭＦＧタグには、値として「ＡＢＣ」が格納されている。ＭＦＧタグは、製造元名称を示し、ここでは、ＡＢＣ社が製造元であることを示している。ＭＤＬタグには、値として「ＬＢＰ−ＸＸＸ  ＰＤＬ１」が格納されている。ＭＤＬタグは、機種名及びＰＤＬ種別を示し、ここでは、周辺装置の機種がＬＢＰ−ＸＸＸ、ＰＤＬ種別がＰＤＬ１であることを示している。
【００１３】
ＣＭＤタグには、値として「ＰＤＬ１，ＩＥＥＥ１２８４」が格納されている。ＣＭＤタグの値には、通信媒体を通してやり取りされるコマンド及びＰＤＬ名称を含む。ここでは、デバイスが、ＰＤＬの種類としてＰＤＬ１なるコマンド群を、通信媒体の種類としてＩＥＥＥ１２８４で送受信する周辺装置であることを示している。
【００１４】
また、図２の例で示したデバイス情報１０９を受信した情報処理装置１００においては、ＯＳによりＭＦＧタグとＭＤＬタグの値から「ＡＢＣ  ＬＢＰ−ＸＸＸ  ＰＤＬ１」というデバイスＩＤが生成されることになる。そして、このデバイスＩＤをキーとして、ドライバセットが検索されることになる。
【００１５】
また、さらに、ＵＳＢのようなローカルインタフェースを使用したプラグアンドプレイや、ＬＡＮ等のネットワークインタフェースを使用してプラグアンドプレイを実現する技術も提案されている。その一例としては、ＷＳ−ＤｉｓｃｏｖｅｒｙやＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅと呼ばれるＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）ベースのＷｅｂサービスプロトコルが挙げられる。
【００１６】
情報処理装置は、これらの技術を使用することにより、ネットワーク上のデバイスの存在を検知し、検知したデバイスからデバイス情報を取得することが可能となる。これにより、ローカルインタフェースの場合と同様なプラグアンドプレイにより、ネットワーク上のデバイスのドライバインストールを行うことができる。
【００１７】
また、デバイスに装着されたオプション装置によりデバイスＩＤを変化させ、情報処理装置上でのプリンタドライバ内で表示を変更する技術も既に提案されている（特許文献１）。
【００１８】
更に、プリンタデバイスの機能を拡張する拡張装置の変更に応じて異なるデバイスＩＤを情報処理装置に通知することで、情報処理装置がそのデバイスＩＤに応じたデバイスドライバを選択する技術も提案されている（特許文献２）。
【特許文献１】特開２００４−２３０８２３号公報
【特許文献２】特開平９−２６７５３８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかしながら、上述した従来技術では、複数のＰＤＬを有する画像形成装置の場合、情報処理装置上にも対応する複数のドライバがインストールされてしまうという問題があった。一般のユーザにとっては、印刷に際して、どのＰＤＬを使用するかは気にかけないことが多く、それにも関わらず複数のドライバがインストールされてしまうことは、ユーザの混乱を招く恐れがあった。
【００２０】
また、ＰＤＬを後から追加可能な画像形成装置において、デバイス管理者があえてＰＤＬを追加した場合は、デバイス管理者は後から追加したＰＤＬをユーザに使わせたいという意志がある。それにもかかわらず、情報処理装置では、もともと備えていたＰＤＬ用のデバイスドライバがインストールされていて、それが標準として使用されてしまう可能性があるという問題もあった。
【００２１】
本発明は上記の課題を解決するためのものである。その目的は、適切なＰＤＬを選択して情報処理装置にデバイス情報を提示することで、ユーザが所望するドライバをインストールさせ、かつユーザの利便性を向上させることができる画像形成装置及びその制御方法、プログラムを提供することにある。
【課題を解決するための手段】
【００２２】
上記の目的を達成するための本発明による画像形成装置は以下の構成を備える。即ち、
ネットワークに接続され、前記ネットワーク上の情報処理装置と通信可能な画像形成装置であって、
複数の画像形成手段と、
前記複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定手段と、
前記情報処理装置から受信する情報要求に対して、前記決定手段で決定した画像形成手段の識別子を含む識別情報を送信する送信手段と、
前記情報処理装置から検索要求を受信する受信手段と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答手段と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶する記憶手段とを備え、
前記決定手段は、前記記憶手段に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在する場合、前記情報処理装置の識別情報に対応するタイプの画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する。
【００２３】
また、好ましくは、前記決定手段は、前記記憶手段に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在しない場合、当該画像形成装置にオプションとして追加拡張された画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する。
【００２９】
上記の目的を達成するための本発明による画像形成システムは以下の構成を備える。即ち、
ネットワークを介して画像形成装置と情報処理装置とが相互に接続されて構成される画像形成システムであって、
前記画像形成装置は、
複数の画像形成手段と、
前記複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定手段と、
前記情報処理装置から受信する情報要求に対して、前記決定手段で決定した画像形成手段の識別子を含む識別情報を送信する送信手段と、
前記情報処理装置から検索要求を受信する受信手段と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答手段と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶する記憶手段とを備え、
前記情報処理装置は、
前記識別情報を前記画像形成装置から受信する受信手段と、
前記受信手段で受信した識別情報に基づいて、前記画像形成装置を使用するためのデバイスドライバをインストールするインストール手段と
を備える。
【００３０】
上記の目的を達成するための本発明による画像形成装置の制御方法は以下の構成を備える。即ち、
ネットワークに接続され、前記ネットワーク上の情報処理装置と通信可能な画像形成装置の制御方法であって、
前記画像形成装置が備える複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定工程と、
前記情報処理装置から受信する情報要求に対して、前記決定工程で決定した画像形成手段の識別子を含む識別情報を送信する送信工程と、
前記情報処理装置から検索要求を受信する受信工程と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答工程と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶媒体に記憶する記憶工程とを備え、
前記決定工程は、前記記憶工程で前記記憶媒体に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在する場合、前記情報処理装置の識別情報に対応するタイプの画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する。
【００３１】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
ネットワークに接続され、前記ネットワーク上の情報処理装置と通信可能な画像形成装置の制御をコンピュータに実行させるためのプログラムであって、
前記画像形成装置が備える複数の画像形成手段から優先する画像形成手段を、画像形成手段の状態に応じて決定する決定工程と、
前記情報処理装置から受信する情報要求に対して、前記決定工程で決定した画像形成手段の識別子を含む識別情報を送信する送信工程と、
前記情報処理装置から検索要求を受信する受信工程と、
前記検索要求で指定されるタイプを解釈し、当該画像形成装置がそのタイプを有する場合のみ応答する応答工程と、
前記検索要求で指定されるタイプが前記画像形成手段の種別を示すタイプである場合、前記検索要求を送信した情報処理装置を示す識別情報と、指定されたタイプを示すタイプ情報との対応を示す対応情報を記憶媒体に記憶する記憶工程とを備え、
前記決定工程は、前記記憶工程で前記記憶媒体に記憶した対応情報に、前記情報要求を送信した情報処理装置が存在する場合、前記情報処理装置の識別情報に対応するタイプの画像形成手段を、前記複数の画像形成手段から優先する画像形成手段に決定する。
【発明の効果】
【００３２】
本発明によれば、適切なＰＤＬを選択して情報処理装置にデバイス情報を提示することで、ユーザが所望するドライバをインストールさせ、かつユーザの利便性を向上させることができる画像形成装置及びその制御方法、プログラムを提供できる。
【発明を実施するための最良の形態】
【００３３】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【００３４】
＜実施形態１＞
図３は本発明の実施形態１の画像形成システムの構築例を示す図である。
【００３５】
図３に示す画像形成システムは、デバイス３０１、及びホストコンピュータ３０２及び３０３がネットワーク３０４を介して相互に接続された構成となっている。
【００３６】
尚、ネットワーク３０４は、典型的にはインターネットやＬＡＮやＷＡＮや電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれかにより実現される通信ネットワークである。または、これらの組み合わせにより実現されるいわゆる通信ネットワークであり、データの送受信が可能であれば良い。
【００３７】
次に、デバイス３０１のハードウェア構成について、図４を用いて説明する。
【００３８】
図４は本発明の実施形態１のデバイスのハードウェア構成を示すブロック図である。
【００３９】
尚、ここでは、デバイスとして、画像形成装置である、レーザビーム方式のプリンタ４００を例に挙げて説明する。
【００４０】
図４のプリンタ４００において、ＣＰＵ４０１は、ＲＯＭ４０３のプログラム用ＲＯＭ４０３ｂに記憶された制御プログラムに基づいて、システムバス４０４に接続される各種のデバイスとのアクセスを総括的に制御する。また、ＣＰＵ４０１は、印刷インタフェース４０７を介して接続される印刷部（プリンタエンジン）４１０に出力情報としての画像信号を出力する。
【００４１】
尚、プログラム用ＲＯＭ４０３ｂに記憶される制御プログラムには、後述する各種フローチャートを実現するためのプログラムが含まれており、ＣＰＵ４０１は、これらのプログラムを実行することで、フローチャートで示される各種処理を実行する。また、プログラム用ＲＯＭ４０３ｂに記憶される制御プログラムには、入力されたＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）からプリンタエンジン４１０が印刷可能なビットマップデータに変換するプログラムも含まれる。そのプログラムをＣＰＵ４０１が実行することでにより画像形成手段として機能する。
【００４２】
また、このＲＯＭ４０３のプログラム用ＲＯＭ４０３ｂには、ＣＰＵ４０１が実行可能な制御プログラム等を記憶する。さらに、ＲＯＭ４０３のフォント用ＲＯＭ４０３ａには、出力情報を生成する際に使用するフォントデータ（アウトラインフォントデータを含む）等を記憶する。ＲＯＭ４０３のデータ用ＲＯＭ４０３ｃには、ホストコンピュータ（例えば、ホストコンピュータ３０２）上で利用されるデータを記憶している。
【００４３】
ＣＰＵ４０１は、ネットワークコントローラ部４０６を介して、ネットワーク３０４上のホストコンピュータとの通信処理が可能となっている。ＲＡＭ４０２は、主としてＣＰＵ４０１の主メモリ、ワークエリア等として機能し、増設ポート（不図示）に接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。尚、ＲＡＭ４０２は、出力情報展開領域、環境データ格納領域等に用いられる。
【００４４】
ハードディスク（ＨＤ）、ＩＣカード等の外部記憶装置４１１は、ディスクコントローラ（ＤＫＣ）４０８によりアクセスが制御される。外部記憶装置４１１は、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶したり、印刷ジョブを一時的にスプールし、スプールされたジョブを外部から制御するためのジョブ格納領域として使用される。
【００４５】
また、操作パネル４０５は、例えば、タッチパネル、各種キー、ボタン等から構成され、タッチパネル上に表示されるソフトウェアキーから各種情報をユーザが入力することが可能である。不揮発性メモリ４０９は、操作パネル４０５から入力されるプリンタモード設定情報等の各種情報を記憶している。
【００４６】
また、プリンタ４００には、さらにオプションで、ステープルやソート機能を行うフィニッシャや、両面印刷機能を実現するための両面印刷装置等の各種拡張装置を装着することが可能となっており、それらの動作はＣＰＵ４０１から制御される。
【００４７】
ＰＤＬ拡張部４１２は、１個以上のＰＤＬ装置（ＰＤＬボード）４１３を接続し、ＣＰＵ４０１からＰＤＬ装置４１３を制御可能とする。ＰＤＬ装置４１３は、ホストコンピュータから受信した印刷データ（ＰＤＬ）を解釈し、プリンタエンジン４１０が印刷可能なビットマップデータに変換する機能を有する画像形成部（画像形成手段）である。このＰＤＬ装置４１３は、標準として１個以上接続されているが、後から追加することも可能である。また、プラグアンドプレイで使用されるＩＥＥＥ１２８４規定のデバイス情報は、このＰＤＬ装置４１３が保持している。
【００４８】
尚、以下の実施形態１においては、ことわりのない限りデバイスは、標準ＰＤＬ装置としてＰＤＬ１を備えており、オプションＰＤＬ装置としてＰＤＬ２を追加拡張可能であるものとする。
【００４９】
この拡張は、専用のＰＤＬ装置を搭載する拡張ボードを物理的にプリンタ４００に追加する構成であっても良い。あるいは、ＰＤＬ装置がプログラムによって実現される場合には、プログラム用ＲＯＭ４０３ｂに対応するプログラムを追加する構成であっても良い。更には、予め複数種類のＰＤＬ装置それぞれに対応するプログラムをプログラム用ＲＯＭ４０３ｂに記憶しておき、それらから必要なＰＤＬ装置を、ユーザ操作によって入力されたライセンスキーによって有効にすることで追加する構成であっても良い。
【００５０】
また、ＰＤＬの一例としては、ＬＩＰＳ、ＰｏｓｔＳｃｒｉｐｔ、ＰＣＬ等がある。
【００５１】
次に、ホストコンピュータ３０２や３０３の詳細構成について、図５を用いて説明する。
【００５２】
図５は本発明の実施形態１のホストコンピュータの詳細構成を示すブロック図である。
【００５３】
ホストコンピュータ３０２や３０３に対応する情報処理装置５１０において、ＨＤＤ５０１は大容量のハードディスクドライブである。このＨＤＤ５０１は、予めＲＡＭ５０９にロードするプログラムモジュールや、ＩＮＦファイルを含むドライバセット５０５を記憶しておくことができる。ＣＤ／ＤＶＤ−ＲＯＭ／ＲＡＭドライブ等から構成される外部記憶装置５０２も同様の機能を有する。
【００５４】
ＲＡＭ５０９上で実現される各プログラムモジュール群には、ポート管理部５０７、プラグアンドプレイ部５０８、プリンタクラスインストーラ部５１１、ドライバライブラリ５０６上で管理される１つ以上のプリンタドライバセット５０５より構成されている。ＲＡＭ５０９は、ＨＤＤ５０１からこれらのプログラムモジュールを適宜読み出し実行する。
【００５５】
ＣＰＵ５０４は、プリンタクラスインストーラ部５１１、プラグアンドプレイ部５０８、ポート管理部５０７及びドライバライブラリ５０６を統括制御し、各処理をＨＤＤ５０１からＲＡＭ５０９に読み出して実行する。
【００５６】
バス５０３は、情報処理装置５１０の各種構成要素（ＣＰＵ５０４、ＲＡＭ５０９、ＨＤＤ５０１、外部記憶装置５０２）を相互に接続するバスである。
【００５７】
ポート管理部５０７は、デバイス４００との通信のために、ネットワーク３０４に接続された情報処理装置５１０側のインタフェースの制御を行う。プリンタドライバの自動インストール時には、ＩＥＥＥ１２８４規定のデバイス情報を受信し、プラグアンドプレイ部５０８に受け渡す。
【００５８】
プラグアンドプレイ部５０８は、プラグアンドプレイに関してデバイスとの情報制御を行うモジュールである。このプラグアンドプレイ部５０８は、ポート管理部５０７より受信したデバイス情報中のＭＦＧタグとＭＤＬタグの値からデバイスＩＤを生成する。そして、生成したデバイスＩＤをプリンタクラスインストーラ部５１１に受け渡す。
【００５９】
プリンタクラスインストーラ部５１１は、プリンタドライバのインストールを担当するモジュールである。プリンタクラスインストーラ部５１１は、プラグアンドプレイ部５０８より受信したデバイスＩＤを元に、１つ以上あるプリンタドライバセット５０５より、そのデバイスＩＤに対応するプリンタドライバセットを検索する。該当のプリンタドライバセットを検索した場合、そのプリンタドライバをインストールして、必要なポートに割り当てる。
【００６０】
プリンタドライバセット５０５は、プリンタドライバに対する、ＤＬＬ等の実行モジュール群５０５ｂ、リソース５０５ｃと、インストールのためにそれらの特徴を記述するＩＮＦファイル５０５ａとで構成される。
【００６１】
次に、情報処理装置（ホストコンピュータ）５１０とデバイス（プリンタ）４００間で実現されるプリンタドライバインストールのシーケンスについて、図６を用いて説明する。
【００６２】
図６は本発明の実施形態１のプリンタドライバインストールのシーケンスを示す図である。
【００６３】
ステップＳ６０１で、情報処理装置５１０は、ネットワーク上にデバイス検索要求を送信する。デバイス検索要求は、例えば、図７に示すようなＸＭＬ形式で記述される情報であり、マルチキャストを使用して送信される。ここで、図７中の＜Ｔｙｐｅｓ＞要素７０１には、検索対象のデバイスのタイプを記述する。例えば、プリントサービス／スキャンサービス等の機能種別を記述したり、ＰＤＬ１を有するプリントサービス等のＰＤＬ装置種別を記述することが可能である。
【００６４】
このデバイス検索要求は、マルチキャストが到達する範囲に存在するすべてのデバイスが受信し、各デバイスは、後述の図８のフローチャートに従い、それに対する応答を返すか否かを判定する。
【００６５】
例えば、デバイス４００において応答すると判定された場合、デバイス４００は、ステップＳ６０２で、デバイス検索要求に対する応答を情報処理装置５１０に送信する。次に、情報処理装置５１０は、ステップＳ６０３で、検索された（応答した）デバイスに対してデバイス情報要求を送信する。
【００６６】
デバイス情報要求を受信したデバイス４００は、ステップＳ６０４で、後述する方法でデバイス情報を生成する。そして、生成したデバイス情報を、ステップＳ６０５で、情報処理装置５１０に送信する。尚、デバイス４００からネットワークに参加したことを通知する場合は、ステップＳ６０１とステプＳ６０２の処理の代わりにデバイス４００がネットワーク参加通知を情報処理装置５１０に行う。次に、ステップＳ６０３で、情報処理装置５１０は、デバイス４００からのネットワーク参加通知に基づき、デバイスに対してデバイス情報要求を送信する。
【００６７】
このデバイス情報（識別情報）は、例えば、図９に示すようなＸＭＬ形式で記述される情報であり、デバイスが有するサービスのサービスリストを含んでいる。また、図９中の＜ＳｅｒｖｉｃｅＩＤ＞要素９０１の値は、各サービスを識別するための固有のＩＤ（サービスＩＤ）、つまり、識別子であり、後で必要なサービスを特定する際に使用される。
【００６８】
尚、実施形態１においては、デバイスにオプションのＰＤＬ装置が追加されている場合、サービスリストとしては追加されたＰＤＬ装置を使用するプリントサービス１個だけとするが、これに限定されない。
【００６９】
例えば、図１０に示す、デバイス４００の操作パネル４０５上で表示されるプラグアンドプレイ設定画面を用いて設定を変更することにより、デバイスが持つすべてのＰＤＬ装置のプリントサービスをリストするようにしても良い。図１０の例においては、初期状態としてオプションＰＤＬ装置を優先する設定「はい」ボタン１００１が選択されている。これに対し、「いいえ」ボタン１００２を選択して、ＯＫボタン１００３を操作することで、設定を適宜変更することが可能である。
【００７０】
次に、情報処理装置５１０は、ステップＳ６０６で、受信したデバイス情報から、必要なサービスＩＤを指定してサービス情報要求を送信する。サービス情報要求を受信したデバイス４００は、ステップＳ６０７で、指定されたサービスＩＤに対応するＰＤＬ装置からデバイス情報の値を取得し、その値を含むサービス情報を情報処理装置５１０に送信する。このサービス情報は、例えば、図１１に示すようなＸＭＬ形式で記述される情報である。
【００７１】
情報処理装置５１０は、ステップＳ６０８で、デバイス４００から受信したサービス情報を参照し、対応するプリンタドライバをインストールする。尚、ステップＳ６０５で、デバイス４００が複数のサービスリストを含むデバイス情報を情報処理装置５１０に送信した場合、ステップＳ６０６〜ステップＳ６０８が繰り返され、リストされたサービスの数だけプリンタドライバがインストールされることになる。
【００７２】
次に、図６のシーケンスにおいて、デバイス検索要求を受信したデバイス４００が、それに対して応答するか否かを判定する判定処理について、図８を用いて説明する。
【００７３】
図８は本発明の実施形態１の判定処理を示すフローチャートである。
【００７４】
デバイス４００が、ステップＳ８０１で、デバイス検索要求を受信する。ステップＳ８０２で、検索条件として、デバイス検索要求中の＜Ｔｙｐｅｓ＞タグによる、タイプ指定の有無を判定する。タイプ指定がない場合（ステップＳ８０２でＮＯ）、受信したデバイス検索要求は全デバイス検索を意味するため、ステップＳ８０３に進み、デバイス検索要求に応答すると判定する。
【００７５】
一方、タイプ指定がある場合（ステップＳ８０２でＹＥＳ）、ステップＳ８０４に進み、指定されたタイプがデバイス自身のタイプに含まれるか否かを判定する。デバイス自身のタイプに含まれる場合（ステップＳ８０４でＹＥＳ）、ステップＳ８０３に進む。一方、デバイス自身のタイプに含まれない場合（ステップＳ８０４でＮＯ）、ステップＳ８０５に進み、デバイス検索要求に応答しないと判定する。
【００７６】
尚、ステップＳ８０４での判定に使用するデバイス自身のタイプとは、図１２に示すような、デバイス４００に装着されているＰＤＬ装置及びそのサービスを示すサービス名情報である。そして、このサービス名情報は、デバイス４００が適宜自身に装着されているＰＤＬ装置を認識して、それに基づいてサービス名情報を生成してＲＡＭ４０２に保持する。この処理は、画像形成装置の電源オン時に行っても良いし、ライセンスキーによりオプションＰＤＬが追加利用可能となったときでもよい。また、図１３の処理を行う前に実行しても良い。ここで、図１２で示すように、デバイスは、サービス名情報において、各ＰＤＬ装置を１個のＰｒｉｎｔＳｅｒｖｉｃｅとして管理し、それぞれのサービスに対してサービスＩＤを割り当てている。
【００７７】
次に、図６のシーケンスのステップＳ６０４で、デバイスがデバイス情報に含めるサービスリストを生成する生成処理について、図１３を用いて説明する。
【００７８】
図１３は本発明の実施形態１の生成処理を示すフローチャートである。
【００７９】
まず、ステップＳ１３０１で、まずはデバイス４００の標準ＰＤＬ装置であるＰＤＬ１を優先ＰＤＬ装置として設定する。次に、ステップＳ１３０２で、オプションＰＤＬ装置としてＰＤＬ２がデバイス４００に装着されているか否かを判定する。ＰＤＬ２が追加装着されている場合（ステップＳ１３０２でＹＥＳ）、ステップＳ１３０３に進み、ＰＤＬ２を優先ＰＤＬ装置として設定する。その後、ステップＳ１３０４に進む。
【００８０】
尚、オプションＰＤＬ装置が追加装着されているか否かの判定は、例えば、オプションＰＤＬ装置が物理的な拡張ボードで実現されている場合には、それを装着するための装置内のスロットの空き状態に基づいて判定する。また、オプションＰＤＬ装置がプログラムによって実現される場合には、有効となっているオプションＰＤＬ装置を示すフラグを記憶するＲＡＭ４０２の内容を参照することで判定する。
【００８１】
また、ライセンスキーによりオプションのＰＤＬ２を追加利用可能とする画像形成装置の場合は、ステップＳ１３０２で、オプションのＰＤＬ２が追加利用可能であるか否かを判定する。オプションのＰＤＬ２が追加利用可能な場合（ステップＳ１３０２でＹＥＳ）、ステップＳ１３０３に進み、ＰＤＬ２を優先ＰＤＬ装置として設定する。その後、ステップＳ１３０４に進む。
【００８２】
一方、ＰＤＬ２が追加装着されていない場合（ステップＳ１３０２でＮＯ）、ステップＳ１３０４に進む。
【００８３】
ステップＳ１３０４で、設定されている優先ＰＤＬ装置に対応するサービスＩＤをサービス名情報（図１２）から取得し、デバイス情報中の＜ＳｅｒｖｉｃｅＩＤ＞の値として設定する。その結果、ＰＤＬ２が装着されていてもいなくても、デバイス情報中のサービスリストにはサービスは１個だけが設定される。
【００８４】
次に、デバイスが標準ＰＤＬ装置としてＰＤＬ１及びＰＤＬ２を備えており、オプションＰＤＬ装置としてＰＤＬ３を追加拡張可能である場合には、図１２の処理は、図１４のようになる。
【００８５】
尚、オプションＰＤＬ装置が複数装着される場合は、オプションＰＤＬ装置が追加される毎に追加日時を不揮発性メモリ４０９に履歴情報として保持する。そして、不揮発性メモリ４０９に保持された履歴情報を元に最も最近に追加されたオプションＰＤＬ装置を優先ＰＤＬ装置として設定する。また、図１３の処理は、ステップＳ６０４のタイミングで実行するほか、画像形成装置の電源オン時に実行しても良いし、ライセンスキーによりオプションＰＤＬ装置が追加利用可能となったときでもよい。
【００８６】
図１４は本発明の実施形態１の生成処理を示すフローチャートである。
【００８７】
ステップＳ１４０１で、まずは、デバイス４００の標準ＰＤＬ装置であるＰＤＬ１及びＰＤＬ２を優先ＰＤＬ装置として設定する。次に、ステップＳ１４０２で、オプションＰＤＬ装置であるＰＤＬ３がデバイス４００に装着されているか否かを判定する。ＰＤＬ３が追加装着されている場合（ステップＳ１４０２でＹＥＳ）、ステップＳ１４０３に進み、ＰＤＬ３を優先ＰＤＬ装置として設定する。その後、ステップＳ１４０４に進む。
【００８８】
一方、ＰＤＬ３が追加装着されていない場合（ステップＳ１４０２でＮＯ）、ステップＳ１４０４に進む。
【００８９】
ステップＳ１４０４で、設定されている優先ＰＤＬ装置に対応するサービスＩＤをサービス名情報（図１２）から取得し、デバイス情報中の＜ＳｅｒｖｉｃｅＩＤ＞の値として設定する。その結果、ＰＤＬ３が装着されていない場合は、デバイス情報中のサービスリストにサービスが２個設定される。一方、ＰＤＬ３が装着されている場合は、デバイス情報中のサービスリストにサービスが１個設定される。
【００９０】
以上説明したように、実施形態１によれば、情報処理装置からのＰＤＬ装置の検索要求に対して、画像形成装置が適切でかつ優先的に使用するＰＤＬ装置を自動的に選択して、それを示すデバイス情報を情報処理装置に通知する。これにより、ユーザが所望するプリンタドライバを情報処理装置でインストールさせることが可能となり、ユーザの利便性を向上させることができる。
【００９１】
ここで、実施形態１の構成は、画像形成装置にオプションＰＤＬ装置が追加装着された場合に、特に有効である。なぜなら、オプションＰＤＬ装置を追加する状況とは、ユーザが、そのオプションＰＤＬ装置を積極的に使用したい場合であることが想定されるからである。つまり、このような状況の場合には、標準ＰＤＬ装置ではなく、オプションＰＤＬ装置を情報処理装置に優先的に使用させる優先ＰＤＬ装置として設定させることが可能となり、よりユーザが意図する環境を構築することが可能となる。
【００９２】
＜実施形態２＞
実施形態２では、図６のシーケンスにおいて、デバイス検索要求にタイプ指定としてＰＤＬ装置のいずれかが指定された場合は、送信元の情報処理装置を示すホスト情報（識別情報）を画像形成装置が記憶する。そして、デバイス情報要求を画像形成装置が受信した際には、その中に示されるホスト情報と、装置内に記憶しているホスト情報を比較し、その比較結果に基づいて、優先ＰＤＬ装置を選択する構成について説明する。
【００９３】
特に、実施形態２の構成によれば、デバイス検索の際に特定のＰＤＬ装置を指定して検索を行った情報処理装置５１０に対しては、その特定のＰＤＬ装置を優先ＰＤＬ装置として設定することが可能となる。換言すれば、デバイス４００で設定する優先ＰＤＬ装置に関わらず、デバイス検索時に指定したＰＤＬ装置に対応するプリンタドライバを、情報処理装置でインストールさせることが可能となる。
【００９４】
まず、実施形態２の構成で、図６のシーケンスにおいて、デバイス検索要求を受信したデバイス４００が、それに対して応答するか否かを判定する判定処理について、図１５を用いて説明する。
【００９５】
図１５は本発明の実施形態２の判定処理を示すフローチャートである。
【００９６】
尚、図１５において、実施形態１の図８と同一のステップについては、同一のステップ番号を付加して、その詳細については省略する。
【００９７】
ステップＳ８０４で、タイプ指定がある場合（ステップＳ８０４でＹＥＳ）、ステップＳ１５０５に進み、指定されたタイプがＰＤＬ種別であるか否かを判定する。ＰＤＬ種別でない場合（ステップＳ１５０５でＮＯ）、ステップＳ８０３に進む。一方、ＰＤＬ種別である場合（ステップＳ１５０５でＹＥＳ）、ステップＳ１５０６に進み、指定されたＰＤＬ装置がデバイス４００の標準ＰＤＬ装置であるか否かを判定する。
【００９８】
デバイス４００の標準ＰＤＬ装置でない場合（ステップＳ１５０６でＮＯ）、ステップＳ８０３に進む。一方、デバイス４００の標準ＰＤＬ装置である場合（ステップＳ１５０６でＹＥＳ）、ステップＳ１５０７に進む。ステップＳ１５０７で、デバイス検索要求の送信元の情報処理装置５１０のＩＰアドレスと、検索条件として指定されたＰＤＬを検索履歴情報としてＲＡＭ４０２に保存する。その後、ステップＳ８０３に進む。
【００９９】
ここで、検索履歴情報の一例について、図１６を用いて説明する。
【０１００】
図１６は本発明の実施形態２の検索履歴情報の一例を示す図である。
【０１０１】
図１６に示す検索履歴情報は、デバイス検索要求で指定されたＰＤＬ装置名と、その要求を発行した情報処理装置（ホストコンピュータ）のアドレス情報（ＩＰアドレス）を対応づけて管理している。つまり、デバイス検索要求で指定されたＰＤＬ装置名と、その要求を発行した情報処理装置のアドレス情報との対応を示す対応情報を管理している。
【０１０２】
特に、図１６では、ＩＰアドレスが「１９２．１６８．０．２」及び「１９２．１６８．０．３」である情報処理装置からそれぞれ検索条件として「ＰＤＬ１」を指定したデバイス検索要求を受信したことを示している。
【０１０３】
次に、図６のシーケンスのステップＳ６０４で、デバイスがデバイス情報に含めるサービスリストを生成する生成処理について、図１７を用いて説明する。
【０１０４】
図１７は本発明の実施形態２の生成処理を示すフローチャートである。
【０１０５】
尚、図１７において、実施形態１の図１３と同一のステップについては、同一のステップ番号を付加して、その詳細については省略する。
【０１０６】
デバイス４００は、情報処理装置５１０からデバイス情報要求を受信すると、ステップＳ１７０１で、受信したデバイス情報要求から、送信元の情報処理装置５１０のＩＰアドレスを取得する。次に、ステップＳ１７０２で、ステップＳ１７０１で取得したＩＰアドレスが、ＲＡＭ４０２に保存している検索履歴情報に含まれているか否かを判定する。検索履歴情報に含まれている場合（ステップＳ１７０２でＹＥＳ）、ステップＳ１７０３に進み、検索履歴情報で保持している情報処理装置のＩＰアドレスに対応するＰＤＬ装置を優先ＰＤＬ装置として設定する。その後、ステップＳ１３０４に進む。
【０１０７】
一方、検索履歴情報に含まれていない場合（ステップＳ１７０２でＮＯ）、ステップＳ１３０１に進む。その後、上述のステップＳ１３０１〜ステップＳ１３０３の処理を経て、ステップＳ１３０４で、設定されている優先ＰＤＬ装置に対応するサービスＩＤをサービス名情報（図１２）から取得し、デバイス情報中の＜ＳｅｒｖｉｃｅＩＤ＞の値として設定する。その結果、ＰＤＬ２が装着されていてもいなくても、デバイス情報中のサービスリストにはサービスは１個だけが設定される。
【０１０８】
以上説明したように、実施形態２によれば、デバイス検索要求で指定されたＰＤＬ装置を画像形成装置が標準ＰＤＬ装置として備えている場合には、その要求を発行した情報処理装置の識別情報（例えば、ＩＰアドレス）を履歴情報として記憶する。そして、この識別情報と合致する識別情報の情報処理装置からのデバイス情報要求がある場合には、その履歴情報で示されるＰＤＬ装置を優先ＰＤＬ装置として選択して、それを示すデバイス情報を情報処理装置に通知する。これにより、ユーザが所望するプリンタドライバを情報処理装置でインストールさせることが可能となり、ユーザの利便性を向上させることができる。
【０１０９】
実施形態２では、情報処理装置において、ユーザが明示的に使用するＰＤＬ装置を指定してデバイス検索要求を発行した場合に、特に、有効である。これは、そのＰＤＬ装置を有する画像形成装置が優先的に使用されることになるからである。
【０１１０】
＜実施形態３＞
実施形態３では、デバイスが、さらに、実際に印刷に使用されたＰＤＬ装置の使用履歴情報を記憶する。そして、その後の情報処理装置からのデバイス検索要求に対しては、その使用履歴情報によって得られる、使用頻度が最大となっているＰＤＬ装置を優先ＰＤＬ装置として選択する構成について説明する。
【０１１１】
特に、実施形態の３の構成によれば、デバイスが設置されているネットワーク環境において、最も多く使用されているＰＤＬ装置に対応するプリンタドライバを、情報処理装置でインストールさせることが可能となる。
【０１１２】
まず、実施形態３の構成において、デバイスが実行する印刷処理について、図１８を用いて説明する。
【０１１３】
図１８は本発明の実施形態３の印刷処理を示すフローチャートである。
【０１１４】
デバイス４００は、ステップＳ１８０１で、情報処理装置５１０から印刷ジョブを受信する。次に、ステップＳ１８０２で、印刷ジョブを解析し、使用されているＰＤＬ装置を特定する。次に、ステップＳ１８０３で、特定されたＰＤＬ装置がＰＤＬ１であるか否かを判定する。ＰＤＬ１である場合（ステップＳ１８０３でＹＥＳ）、ステップＳ１８０４に進み、ＰＤＬ１用カウンタを１増加させる。その後、ステップＳ１８０５で、印刷ジョブを印刷し、処理を終了する。
【０１１５】
一方、ＰＤＬ１でない場合（ステップＳ１８０３でＮＯ）、ステップＳ１８０６に進み、特定されたＰＤＬ装置がＰＤＬ２であるか否かを判定する。ＰＤＬ２である場合（ステップＳ１８０６でＹＥＳ）、ステップＳ１８０７に進み、ＰＤＬ２用カウンタを１増加させる。その後、ステップＳ１８０５で、印刷ジョブを印刷し、処理を終了する。
【０１１６】
一方、ＰＤＬ２でない場合（ステップＳ１８０６でＮＯ）、ステップＳ１８０８に進み、印刷ジョブを廃棄して処理を終了する。
【０１１７】
尚、各ＰＤＬ用カウンタは、例えば、不揮発性メモリ４０９に保持され、デバイス再起動後もクリアされることはない。
【０１１８】
次に、図６のシーケンスのステップＳ６０４で、デバイスがデバイス情報に含めるサービスリストを生成する生成処理について、図１９を用いて説明する。
【０１１９】
図１９は本発明の実施形態３の生成処理を示すフローチャートである。
【０１２０】
尚、図１９において、実施形態１の図１３と同一のステップについては、同一のステップ番号を付加して、その詳細については省略する。
【０１２１】
ステップＳ１３０１の処理後、ステップＳ１３０２で、ＰＤＬ２が追加装着されている場合（ステップＳ１３０２でＹＥＳ）、ステップＳ１９０３に進む。
【０１２２】
ステップＳ１９０３で、ＰＤＬ１用カウンタの示すカウンタ値がＰＤＬ２用カウンタの示すカウンタ値よりも少ないか否かを判定する。ＰＤＬ１用カウンタの示すカウンタ値がＰＤＬ２用カウンタの示すカウンタ値よりも少ない場合（ステップＳ１９０３でＹＥＳ）、ステップＳ１３０４に進む。一方、ＰＤＬ１用カウンタの示すカウンタ値がＰＤＬ２用カウンタの示すカウンタ値以上である場合（ステップＳ１９０３でＮＯ）、ステップＳ１３０３に進む。
【０１２３】
以上の処理によって、ステップＳ１３０４では、設定されている優先ＰＤＬ装置に対応するサービスＩＤをサービス名情報（図１２）から取得し、デバイス情報中の＜ＳｅｒｖｉｃｅＩＤ＞の値として設定する。その結果、ＰＤＬ２が装着されていてもいなくてもサービスリストにはサービスは１個だけが設定される。
【０１２４】
以上説明したように、実施形態３によれば、画像形成装置内の各ＰＤＬ装置の使用頻度を使用履歴情報として管理しておく。そして、その使用履歴情報に基づいて、画像形成装置が適切でかつ優先的に使用するＰＤＬ装置を自動的に選択して、それを示すデバイス情報を情報処理装置に通知する。これにより、ユーザが所望するプリンタドライバを情報処理装置でインストールさせることが可能となり、ユーザの利便性を向上させることができる。
【０１２５】
尚、実施形態３では、使用履歴情報から得られる、各ＰＤＬ装置の使用頻度の内、より使用頻度の高いＰＤＬ装置を優先ＰＤＬ装置として選択しているが、これに限定されない。例えば、ＰＤＬ装置内の使用頻度を均等にしたい場合や、負荷分散のために、使用頻度の低いＰＤＬ装置を優先ＰＤＬ装置として選択するようにしても良い。
【０１２６】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１２７】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１２８】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１２９】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０１３０】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスクがある。また、更に、記録媒体としては、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０１３１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、その接続先のホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１３２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１３３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。また、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０１３４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１３５】
【図１】プラグアンドプレイを使用したプリンタドライバインストール処理を説明するための図である。
【図２】ＩＥＥＥ１２８４規定のデバイス情報を説明するための図である。
【図３】本発明の実施形態１の画像形成システムの構築例を示す図である。
【図４】本発明の実施形態１のデバイスのハードウェア構成を示すブロック図である。
【図５】本発明の実施形態１のホストコンピュータの詳細構成を示すブロック図である。
【図６】本発明の実施形態１のプリンタドライバインストールのシーケンスを示す図である。
【図７】本発明の実施形態１のデバイス検索要求の一例を示す図である。
【図８】本発明の実施形態１の判定処理を示すフローチャートである。
【図９】本発明の実施形態１のデバイス情報の一例を示す図である。
【図１０】本発明の実施形態１の操作パネル上でのプラグアンドプレイ設定画面の一例を示す図である。
【図１１】本発明の実施形態１のサービス情報の一例を示す図である。
【図１２】本発明の実施形態１のサービス名情報の一例を示す図である。
【図１３】本発明の実施形態１の生成処理を示すフローチャートである。
【図１４】本発明の実施形態１の生成処理を示すフローチャートである。
【図１５】本発明の実施形態２の判定処理を示すフローチャートである。
【図１６】本発明の実施形態２の検索履歴情報の一例を示す図である。
【図１７】本発明の実施形態２の生成処理を示すフローチャートである。
【図１８】本発明の実施形態３の印刷処理を示すフローチャートである。
【図１９】本発明の実施形態３の生成処理を示すフローチャートである。
【符号の説明】
【０１３６】
５０１  ＨＤＤ
５０２  外部記憶装置
５０３  バス
５０４  ＣＰＵ
５０５  プリンタドライバセット
５０６  ドライバライブラリ
５０７  ポート管理部
５０８  プラグアンドプレイ部
５０９  ＲＡＭ
５１０  情報処理装置
【図１】
0004579799.tif 000002
【図２】
0004579799.tif 000003
【図３】
0004579799.tif 000004
【図４】
0004579799.tif 000005
【図５】
0004579799.tif 000006
【図６】
0004579799.tif 000007
【図７】
0004579799.tif 000008
【図８】
0004579799.tif 000009
【図９】
0004579799.tif 000010
【図１０】
0004579799.tif 000011
【図１１】
0004579799.tif 000012
【図１２】
0004579799.tif 000013
【図１３】
0004579799.tif 000014
【図１４】
0004579799.tif 000015
【図１５】
0004579799.tif 000016
【図１６】
0004579799.tif 000017
【図１７】
0004579799.tif 000018
【図１８】
0004579799.tif 000019
【図１９】
0004579799.tif 000020