(57)【要約】【課題】ユーザの使用目的に応じて、印刷速度、印刷品位が最適化された、操作性に優れたネットワーク印刷を提供することを目的とする。【解決手段】端末装置から入力される入力データを受信する入力データ受信手段と、入力データ、又は印刷装置に関する印刷装置情報に応じて、印刷装置において印刷用の画像処理を行うか、印刷装置以外の装置において印刷用の画像処理を行うかを切り替える制御手段と、を有することによって課題を解決する。【選択図】図２７
2007156994.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された端末装置からの要求に応じて、ネットワークを介して接続された印刷装置に関する機能を提供するホスト装置であって、
前記端末装置から入力される入力データを受信する入力データ受信手段と、
前記入力データ、又は前記印刷装置に関する印刷装置情報に応じて、前記印刷装置において印刷用の画像処理を行うか、前記印刷装置以外の装置において印刷用の画像処理を行うかを切り替える制御手段と、
を有することを特徴とするホスト装置。
【請求項２】
前記制御手段は、前記入力データに含まれる前記印刷装置に関する印刷設定情報に応じて、前記切り換えを行うことを特徴とする請求項１に記載のホスト装置。
【請求項３】
前記制御手段は、前記入力データに含まれる、ファイルの種類、又は前記ファイルに関する情報に応じて、前記切り換えを行うことを特徴とする請求項１に記載のホスト装置。
【請求項４】
前記制御手段は、前記入力データに含まれる前記端末装置に関する情報に応じて、前記切り換えを行うことを特徴とする請求項１に記載のホスト装置。
【請求項５】
ネットワークを介して接続された端末装置からの要求に応じて、ネットワークを介して接続された印刷装置に関する機能を提供するホスト装置における印刷制御方法であって、
前記端末装置から入力される入力データを受信する入力データ受信ステップと、
前記入力データ、又は前記印刷装置に関する印刷装置情報に応じて、前記印刷装置において印刷用の画像処理を行うか、前記印刷装置以外の装置において印刷用の画像処理を行うかを切り替える制御ステップと、
を有することを特徴とする印刷制御方法。
【請求項６】
前記制御ステップは、前記入力データに含まれる前記印刷装置に関する印刷設定情報に応じて、前記切り換えを行うことを特徴とする請求項５に記載の印刷制御方法。
【請求項７】
前記制御ステップは、前記入力データに含まれる、ファイルの種類、又は前記ファイルに関する情報に応じて、前記切り換えを行うことを特徴とする請求項５に記載の印刷制御方法。
【請求項８】
前記制御ステップは、前記入力データに含まれる前記端末装置に関する情報に応じて、前記切り換えを行うことを特徴とする請求項５に記載の印刷制御方法。
【請求項９】
請求項５乃至８の何れか１項に記載の印刷制御方法をコンピュータに実行させることを特徴とする印刷制御プログラム。
【請求項１０】
請求項９記載の印刷制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト装置及び印刷制御方法に関する。
【背景技術】
【０００２】
近年、ネットワークの基盤が整備されるに従い、ネットワーク対応型のプリンタ、複写機、ファクシミリ、スキャナ、デジタルカメラ、及びこれらの複合機能を備える画像処理装置等の周辺装置が急速に普及しつつある。
【０００３】
ここで、こうしたネットワーク対応型の周辺装置を動作させる手順を、周辺装置がネットワーク対応型プリンタである場合を例にとって説明する。まず、ユーザが、使用する情報処理装置（クライアントＰＣ）上に、そのクライアントＰＣ上で稼動するオペレーティングシステム（以降「ＯＳ」と略すことがある）を使って、該当ドライバソフトウエア（プリンタドライバ）をインストールする。又は、プリンタベンダからフレキシブルディスク、ＣＤ−ＲＯＭ等の記録媒体を介して提供されるドライバをインストールする。その上で、クライアントＰＣに、プリンタに割り当てられたＩＰアドレス、プリンタポート、使用するプリントプロトコル、デバイスドライバ等のプリンタを動作させるための情報を設定する。この情報の設定に際しては、こうした情報を入力するための各種プレゼンテーションページ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ、ユーザインタフェース）が、ネットワークの所定蓄積場所に予め蓄積されている。クライアントＰＣは、この各種プレゼンテーションページを入手することによって前記の情報設定を行う。このようなシステムでは、クライアントＰＣ上で起動された任意の印刷指令可能なアプリケーションからプリンタに対して印刷指令することができる。
【０００４】
また一方で、ネットワーク対応型の周辺装置の普及に伴い、ネットワーク上で各種サービスを提供する周辺装置を、ネットワークを介して探索し、その周辺装置を情報処理装置（クライアントＰＣ）から制御するようにする技術が開発されつつある。例えば、このような技術にはＵｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ（以降「ＵＰｎＰ」と略すことがある）が存在し、現在、ＵＰｎＰ  Ｆｏｒｕｍ（ｈｔｔｐ：／／ｗｗｗ．ｕｐｎｐ．ｏｒｇ／）にて標準化されている。
【０００５】
このＵＰｎＰを利用した印刷ネットワークシステムにおいて、ＵＰｎＰに対応していないプリンタに対して、情報処理装置で構成された代理サーバ（Ｐｒｏｘｙ  Ｓｅｒｖｅｒ）を用いて、前記プリンタを見かけ上ＵＰｎＰ対応プリンタとして扱う機能がある。このような機能は、プロキシサーバ機能と呼ばれ、プロキシサーバ機能を有する印刷ネットワークシステムが提案されている。なお、プロキシサーバ機能を備える印刷ネットワークシステムは、ＵＰｎＰ  Ｐｒｉｎｔｅｒ  Ｐｒｏｘｙ印刷ネットワークシステムと呼ばれている。
【０００６】
【特許文献１】特開平７−１５２５０８号公報
【特許文献２】特開２００２−１８９６４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、前述の背景技術において、ＵＰｎＰ対応の周辺装置と、ＵＰｎＰ対応でない周辺装置とが混在するネットワークでは、ユーザはその周辺装置がＵＰｎＰ対応であるか否かをいつも意識しなければならないという問題があった。
【０００８】
また、ＵＰｎＰ  Ｐｒｉｎｔｅｒ  Ｐｒｏｘｙ印刷ネットワークシステムに、機能の異なる様々な情報処理装置が含まれていた場合にも問題があった。ここで、機能の異なる情報処理装置としては、Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ（以降ＰＣと略す場合がある）や、Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ（以降ＰＤＡと略す場合がある）等がある。
【０００９】
ＵＰｎＰ  Ｐｒｉｎｔｅｒ  Ｐｒｏｘｙ印刷ネットワークシステムでは、このような機能の異なる様々な情報処理装置から前記プリンタにて印刷を行うことができる。しかし、例えば、ＰＣのような高機能の情報処理装置は、このＰＣで取り扱うことができる高品位かつ高解像度の画像ファイル（ＪＰＥＧファイル）を選択して前記プリンタにて印刷する場合がある。一方、ＰＤＡのような低機能の情報処理装置は、このＰＤＡで取り扱うことができる低品位かつ低解像度の画像ファイル（ＪＰＥＧファイル）を選択して前記プリンタにて印刷する場合がある。しかしこれらの場合であっても、代理サーバ（Ｐｒｏｘｙ  Ｓｅｒｖｅｒ）は同一の印刷用の画像処理を施して前記プリンタにて印刷する。この為、代理サーバは高機能の情報処理装置に最適化された印刷用の画像処理を施すことになり、ＰＤＡからの印刷において得られる印刷結果に対して必要以上に時間がかかってしまい、ユーザの使用目的に適さない場合が発生する問題があった。
【００１０】
本発明は前記の点に鑑みなされたもので、ユーザの使用目的に応じて、印刷速度、印刷品位が最適化された、操作性に優れたネットワーク印刷を提供することを目的とする。
【課題を解決するための手段】
【００１１】
そこで、前記問題を解決するため、本発明は、ネットワークを介して接続された端末装置からの要求に応じて、ネットワークを介して接続された印刷装置に関する機能を提供するホスト装置であって、前記端末装置から入力される入力データを受信する入力データ受信手段と、前記入力データ、又は前記印刷装置に関する印刷装置情報に応じて、前記印刷装置において印刷用の画像処理を行うか、前記印刷装置以外の装置において印刷用の画像処理を行うかを切り替える制御手段と、を有することを特徴とする。
【００１２】
本発明によれば、ネットワークを介して接続された端末装置からの要求に応じて、ネットワークを介して接続された印刷装置に関する機能を提供するホスト装置であって、前記端末装置から入力される入力データを受信する入力データ受信手段と、前記入力データ、又は前記印刷装置に関する印刷装置情報に応じて、前記印刷装置において印刷用の画像処理を行うか、前記印刷装置以外の装置において印刷用の画像処理を行うかを切り替える制御手段と、を有することにより、例えば、ダイレクト印刷の場合は、ダイレクト印刷の機能を有した印刷装置で画像処理を行い、ダイレクト印刷でない場合は、端末装置又はホスト装置等で画像処理を行うので、ユーザの使用目的に応じて、印刷速度、印刷品位が最適化された、操作性に優れたネットワーク印刷を提供することができる。
【００１３】
また、前記問題を解決するため、本発明は、印刷制御方法、プログラム、及び記録媒体としてもよい。
【００１４】
なお、端末装置とは、例えば、後述するクライアントＰＣ等に対応する。また、印刷装置とは、例えば、後述するプリンタ等に対応する。また、ホスト装置とは、例えば、後述する代理サーバ等に対応する。また、印刷装置情報は、例えば、印刷装置に関する、機種名情報、特徴情報、制御コマンド情報等、の内、少なくとも１つ以上を含む。また、入力データは、例えば、印刷装置に関する印刷設定情報等を含む。ここで、印刷設定情報は、例えば、印刷に関する、用紙の大きさ情報、用紙の種類情報、レイアウト情報、品位情報、向き情報、部数情報、カラー情報等、の内、少なくとも１つ以上を含む。また、入力データは、例えば、ファイルの種類、又は前記ファイルに関する情報等を含む。ここで、ファイルに関する情報は、例えば、ファイルに関する、解像度情報、カラー情報、画像の大きさ情報、ファイルの大きさ情報等、の内、少なくとも１つ以上を含む。また、入力データは、例えば、端末装置に関する情報等を含む。ここで、端末装置に関する情報は、例えば、端末装置に関する、オペレーティングシステムの種類情報、オペレーティングシステムのバージョン情報、特徴情報等、の内、少なくとも１つ以上を含む。
【発明の効果】
【００１５】
本発明によれば、ユーザの使用目的に応じて、印刷速度、印刷品位が最適化された、操作性に優れたネットワーク印刷を提供することができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施形態について図面に基づいて説明する。
【００１７】
図１は、情報処理装置及び周辺装置からなる印刷ネットワークシステム（周辺装置制御システム）の一実施形態における情報処理装置の構成部分を示すブロック図である。なお、本印刷ネットワークシステム（周辺装置制御システム）は第１、第２の構成部分から成り、第１の構成部分については図３を参照して、第２の構成部分については図４を参照して詳しく後述する。
【００１８】
情報処理装置はクライアントＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）８５１、８５７によって構成され、周辺装置はプリンタ８５５によって構成される。クライアントＰＣ８５１、８５７とプリンタ８５５とは、Ｅｔｈｅｒｎｅｔ（登録商標）で構成されるネットワーク８５６を介して接続され、互いに通信可能である。なお、周辺装置として図１ではプリンタ８５５を示したが、プリンタ、複写機、ファクシミリ、又はこれらの複合機等の画像形成装置、スキャナ、デジタルカメラであってもよい。
【００１９】
なお、本実施形態は、クライアントＰＣ８５１、８５７側で実行されるアプリケーション（ソフトウェア）と、プリンタ８５５に実装されるアプリケーション（ソフトウェア）とで実現され、各機能モジュールより構成される。図１におけるクライアントＰＣ８５１及びプリンタ８５５の各ブロック内には、各機能モジュールが示されている。
【００２０】
クライアントＰＣ８５１は、図２を参照して後述するようなハードウェアで構成されている。クライアントＰＣ８５１には、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）として、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰがインストールされているものとする。また、クライアントＰＣ８５１には、ＷｅｂブラウザとしてＭｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）Ｖｅｒｓｉｏｎ  ６．０（以下「ＩＥ６」という）がインストールされているものとする。
【００２１】
図１において、ドライバ自動インストールアプリケーション部１は、クライアントＰＣ８５１のＯＳ上で動作するソフトウェアである。ドライバ自動インストールアプリケーション部１は、ドライバ自動ダウンロード・設定モジュール部１００と、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）リクエスト発行処理部４とを含む。また、ドライバ自動インストールアプリケーション部１は、ＳＯＡＰレスポンス解析処理部５と、コンフィギュレータモジュール部７と、メモリコントローラ部８と、ＧＵＩモジュール部（ＧＵＩ）６とを含む。
【００２２】
また、クライアントＰＣ８５１は、通信機能としてのＴＣＰ／ＵＤＰ／ＩＰプロトコルスタック部２と、ＨＴＴＰ１．１に準ずるＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）部３とを含む。なお、ＨＴＴＰ部３は、図１に示されるように、ＴＣＰ／ＵＤＰ／ＩＰプロトコルスタック部２とドライバ自動インストールアプリケーション部１との間に設けられる。
【００２３】
ＧＵＩモジュール部６は、ユーザとの間でインタラクティブに要求の受付処理を行い、その処理結果の表示処理を実行する。コンフィギュレータモジュール部７は、ネットワーク８５６を介してプリンタ８５５より取得したドライバを、プリンタ８５５より取得したネットワーク情報と共に、クライアントＰＣ８５１が保持する記録装置（図示せず）にイントールする処理を実行する。また、コンフィギュレータモジュール部７は、ＯＳに対してインストールしたドライバのドライバ情報の登録を行う。なお、コンフィギュレータモジュール部７は、このイントールの実行の際に、メモリコントローラ部８を介して、記録装置におけるメモリスペースの有無の調査、及びイントール先の管理制御を実行する。
【００２４】
プリンタ８５５は、ＵＰｎＰに対応したネットワーク対応型プリンタであり、このプリンタ８５５を制御するＯＳとしてＬｉｎｕｘＯＳが搭載される。プリンタ８５５は、通信機能としてＴＣＰ／ＵＤＰ／ＩＰプロトコルスタック部９を有する。このＴＣＰ／ＵＤＰ／ＩＰプロトコルスタック部９には、ＨＴＴＰ１．１に準ずるＨＴＴＰ部１０と、ＳＯＡＰリクエスト解析処理部１１と、レスポンスの発行を実行するためのＳＯＡＰレスポンス発行処理部１２とが設けられる。
【００２５】
また、ＴＣＰ／ＵＤＰ／ＩＰプロトコルスタック部９にはプリントプロトコルモジュール部１３が実装される。プリントプロトコルモジュール部１３は、クライアントＰＣ８５１から発行されるプリンタ要求を解析し、プリントコントローラ部１４に対して前記要求を送出する機能を有する。
【００２６】
メモリコントローラ部１５は、ドライバを格納する場所を示すディレクトリ情報の管理や、データサイズ情報の管理の機能を有すると共に、ドライバ送信時において記録装置から読み出したドライバをＨＴＴＰ部１０に対して送出する処理を実行する機能を有する。
【００２７】
ＵＰｎＰデバイス制御部６０は、ＳＯＡＰリクエスト解析処理部１１と、ＳＯＡＰレスポンス発行処理部１２とを含む。このＵＰｎＰデバイス制御部６０については後に詳述する。
【００２８】
クライアントＰＣ８５７は、クライアントＰＣ８５１と同様に、図２を参照して後述するようなハードウェアで構成されている。クライアントＰＣ８５７には、ＯＳとしてＷｉｎｄｏｗｓ（登録商標）  ９８がインストールされ、ＷｅｂブラウザとしてＩＥ６がインストールされている。Ｗｅｂサーバ８５８は、ホームページ（後述するプレゼンテーションページ、印刷設定ＵＩのプレゼンテーションページ、ステータスモニタＵＩのプレゼンテーションページ等）を公開提供する機能を有する。
【００２９】
図２は、クライアントＰＣ８５１、８５７のハードウェア構成の一例を示すブロック図である。ここではクライアントＰＣ８５１を例にして説明する。
【００３０】
クライアントＰＣ８５１は、ランダムアクセスメモリ部（ＲＡＭ１２０１）、記憶部であるハードディスクドライブ部（ＨＤＤ１２０２）、入力部の一例であるキーボード部（ＫＢＤ１２０３）を含む。また、クライアントＰＣ８５１は、制御部のＣＰＵ１２０４、表示部の一例である表示用ディスプレイ（ＬＣＤ１２０５）、通信制御部の一例であるネットワークボード（ＮＢ１２０７）、クライアントＰＣ８５１の構成要素を互いに接続するバス１２０６を含む。なお、記憶部は、可搬性ＣＤ−ＲＯＭ又は内部据付のＲＯＭ等であってもよい。
【００３１】
図１に示すクライアントＰＣ８５１の各モジュール１乃至８は、ＨＤＤ１２０２に記憶され、必要に応じてＲＡＭ１２０１に読み出されてＣＰＵ１２０４により実行される。これにより、ＣＰＵ１２０４が、図１に示す各モジュール１乃至８の機能を実現する。
【００３２】
なお、図１に示すプリンタ８５５も、印刷処理を行うプリントコントローラ部１４を除いて、図２に示すハードウェア構成と同じ構成を採る。その場合、図１に示すプリンタ８５５の各モジュール９乃至１３及び１５は、ＨＤＤ１２０２に記憶され、必要に応じてＲＡＭ１２０１に読み出されてＣＰＵ１２０４により実行される。
【００３３】
なお、クライアントＰＣ８５１のメモリコントローラ部８及びプリンタ８５５のメモリコントローラ部１５は、基本的には独立なハードウェアで構成されることが多い。
【００３４】
図３は、印刷ネットワークシステムの前記実施形態における第１の構成部分を示すブロック図である。
【００３５】
第１の構成部分においては、クライアントＰＣ８５１、８５７、ネットワーク対応プリンタ８５２、代理サーバ（Ｐｒｏｘｙ  Ｓｅｖｅｒ）８５３が、ネットワーク８５６を介して通信可能に接続される。
【００３６】
クライアントＰＣ８５１、８５７、ネットワーク８５６は、図１を参照して前述したクライアントＰＣ８５１、８５７、ネットワーク８５６と同一のものである。
【００３７】
代理サーバ８５３は代理応答装置であり、この代理サーバ８５３も、図２に示すハードウェア構成と同じ構成を採り、このハードウェア構成によって、各部（各モジュール）の機能が実現される。つまり、各モジュールが、ＨＤＤからＲＡＭに読み出され、ＣＰＵにより実行される。
【００３８】
より具体的に説明すると、図３に示されるように、代理サーバ８５３は、ＳＯＡＰレスポンス発行処理部８１５と、ＳＯＡＰリクエスト解析処理部８１６とを含む。また、代理サーバ８５３は、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）処理部８１７と、ＨＴＴＰ部８１４と、ＴＣＰ／ＵＤＰ／ＩＰプロトコルスタック部８１３と、ＵＳＢプロトコルスタック部８１９とを含む。ＵＳＢプロトコルスタック部８１９は、ＵＳＢホストコントローラ等から構成されてＵＳＢ（双方向通信が可能なインタフェース）を制御する。
【００３９】
また、プリンタ８５２も、図２に示すハードウェア構成と同じ構成を採り、このハードウェア構成によって、各部（各モジュール）の機能が実現される。つまり、各モジュールが、ＨＤＤからＲＡＭに読み出され、ＣＰＵにより実行される。
【００４０】
より具体的に説明すると、図３に示されるように、プリンタ８５２は、ＴＣＰ／ＵＤＰ／ＩＰプロトコルスタック部８０９と、ＳＮＭＰ処理部８１０と、プリントプロトコルモジュール部８１１と、プリントコントローラ部８１２とを含む。なお、プリントコントローラ部８１２は、プリンタ８５２とは別のＣＰＵによって実行されるようにしてもよい。
【００４１】
プリンタ８５２は、図１に示すプリンタ８５５と異なり、プリンタ８５５のＵＰｎＰデバイス制御部６０のようなものを備えていない。
【００４２】
代理サーバ８５３において、８１８はＵＰｎＰデバイス制御部である。このＵＰｎＰデバイス制御部８１８は、プリンタ８５５のＵＰｎＰデバイス制御部６０と同様な機能を備えているが、更に、プロキシサーバ機能も備えている。プロキシサーバ機能とは、ＵＰｎＰ未対応であるサポート対象プリンタ（プリンタ８５２）をネットワーク８５６上に発見した場合に、このプリンタ８５２を、見かけ上ＵＰｎＰ対応プリンタとして扱うことができる機能である。なお、プロキシサーバ機能に関しては図１７で後述する。
【００４３】
図４は、印刷ネットワークシステム（周辺装置制御システム）の前記実施形態における第２の構成部分を示すブロック図である。
【００４４】
第２の構成部分においては、クライアントＰＣ８５１、８５７、代理サーバ８５３、ＵＳＢを利用したローカル接続のプリンタ８５４が、ネットワーク８５６を介して通信可能に接続される。クライアントＰＣ８５１、８５７、ネットワーク８５６は、図１を参照して前述したクライアントＰＣ８５１、８５７、ネットワーク８５６と同一のものである。また、代理サーバ８５３も、図３を参照して前述した代理サーバ８５３と同一のものである（但し、図４にはＵＳＢプロトコルスタック部８１９のみを図示し、他の構成部分の図示を省略してある。）。
【００４５】
図４において、プリンタ８５４は、図２に示すハードウェア構成と同じ構成を採る。ＵＳＢを制御するＵＳＢプロトコルスタック部８２０、ＳＮＭＰ処理部８２３、プリントプロトコルモジュール部８２１、プリントコントローラ部８２２の各モジュールが、ＨＤＤからＲＡＭに読み出され、ＣＰＵにより実行される。なお、プリントコントローラ部８２２は、プリンタ８５４とは別のＣＰＵによって実行されるようにしてもよい。
【００４６】
プリンタ８５４は、図１に示すプリンタ８５５と異なり、プリンタ８５５のＵＰｎＰデバイス制御部６０のようなものを備えていない。しかし、代理サーバ８５３のＵＰｎＰデバイス制御部８１８（図３）は、プロキシサーバ機能を有している。このプロキシサーバ機能によって、代理サーバ８５３が、ＵＰｎＰ未対応であるサポート対象プリンタ（プリンタ８５４）をローカルポート（ＵＳＢポート）上に発見した場合、このプリンタ８５４は、見かけ上ＵＰｎＰ対応プリンタとして扱われる。
【００４７】
また、プリンタ８５４はＪＰＥＧ形式のファイル等を入力として印刷を行うダイレクト印刷の機能も備えており、代理サーバ８５３からＵＳＢを介して送られてくるＪＰＥＧ等のファイルを直接印刷することができる。８５９は画像処理部であり、ダイレクト印刷時に入力されるＪＰＥＧファイル等に対して印刷用の二値化処理や色変換処理を行い、プリンタ８５４の印刷を制御する印刷制御コマンドを作成して、このコマンドに従って印刷が行われる。代理サーバ８５３からプリンタ８５４にＪＰＥＧファイル等を送るプロトコルは任意のプロトコルでよいが、ここではカメラ映像機器工業会（ＣＩＰＡ）のもとでダイレクトプリントの標準規格として策定されたＰｉｃｔＢｒｉｄｇｅを使用する。なお、ＰｉｃｔＢｒｉｄｇｅは公知のプロトコルであるので、ここではその詳細説明は省略する。
【００４８】
８６０はＰＤＡであり、ここではＯＳとしてＷｉｎｄｏｗｓ（登録商標）  ＣＥを搭載したＰｏｃｋｅｔ（登録商標）  ＰＣを有しているものとする。ＰＤＡ８６０はハードディスクドライブやキーボードを備えていないので、そのハードウェア構成は図２の構成からハードディスクドライブ部（ＨＤＤ１２０２）、入力部の一例であるキーボード部（ＫＢＤ１２０３）を除いたような構成である。
【００４９】
ＰＤＡ８６０からの印刷はＷｉｎｄｏｗｓ（登録商標）  ＸＰやＷｉｎｄｏｗｓ（登録商標）  ９８を搭載したＰｅｒｓｏｎａｌ  ＣｏｍｐｕｔｅｒにおけるＲＡＷデータの印刷と同様であり、ＯＳ標準の仕様であるので、ここではその詳細説明は省略する。
【００５０】
ＰＤＡ８６０は、Ｗｅｂブラウザを搭載しているので、図１０に示すようなプレゼンテーションページを表示する。そして、Ｗｅｂブラウザを介して、印刷対象のファイルを選択し、各印刷設定を選択して、プリンタ８５５や、代理サーバ８５３を介したプリンタ８５４にてドライバレス印刷を行うことができる。
【００５１】
ここで以下の説明においては、代理サーバ８５３のコンピュータ名をＰＣ＿ＡＢＥとする。また、プリンタ８５４については、製造者名をＡＢＣ、機種名をＰｒｉｎｔＭｄｌ−Ｍ、製造番号を０００７７７とする。そして、プリンタ８５４が代理サーバ８５３にＵＳＢで接続されていて、代理サーバ８５３にプリンタ８５４用のドライバがインストールされていて、代理サーバ８５３を介してプリンタ８５４で正常に印刷できるものとする。また、更に、プリンタ８５４は、代理サーバ８５３を介してネットワーク８５６上の共有プリンタとしてクライアントＰＣ８５１、８５７から参照可能な環境が整っているものとする。代理サーバ８５３においてドライバをインストールされているプリンタ８５４のプリンタ（表示）名と、共有プリンタとして参照されるプリンタ８５４のプリンタ（表示）名とは同一であり、ＡＢＣ  ＰｒｉｎｔＭｄｌ−Ｍであるとする。
【００５２】
図５は、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰをＯＳとして搭載したクライアントＰＣ８５１において実行されるＵＰｎＰ対応デバイス検出処理の手順を示すフローチャートである。このフローチャートには、クライアントＰＣ８５１からの要求に対する各プリンタによる応答処理も含まれる。
【００５３】
図５において、クライアントＰＣ８５１が起動して（Ｓ４０１）、ＵＰｎＰサービスが開始される（Ｓ４０２）。すると、ＵＰｎＰルートデバイスを検索する要求であるＳＳＤＰ（Ｓｉｍｐｌｅ  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）リクエストがクライアントＰＣ８５１から周辺装置（プリンタ）側に発行される（Ｓ４０３）。
【００５４】
このＳＳＤＰリクエストに対してデバイス（周辺装置）からＳＳＤＰレスポンスが有った場合（Ｓ４０４でＹＥＳ）、クライアントＰＣ８５１は、ＳＳＤＰレスポンスのあったデバイスを検出する。そして、クライアントＰＣ８５１は、検出したデバイスのアイコンをＭｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダ上に表示する（Ｓ４０５）。そして、クライアントＰＣ８５１は、所定時間（例えば１分）待機（Ｓ４０８）の後、ステップＳ４０３へ戻る。
【００５５】
ステップＳ４０４において、ＳＳＤＰリクエストに対してデバイスからＳＳＤＰレスポンスが無いと判別した場合、クライアントＰＣ８５１は、ステップＳ４０６に進む。ステップＳ４０６において、クライアントＰＣ８５１は、Ｍｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダ上に、レスポンスの無いデバイスのアイコンが表示されているか否かを判別する。クライアントＰＣ８５１は、レスポンスの無いデバイスのアイコンが表示されている場合、その表示されているアイコンを削除し（Ｓ４０７）、ステップＳ４０８へ進む。
【００５６】
また、ステップＳ４０６において、レスポンスの無いデバイスのアイコンが表示されていないと判別した場合、クライアントＰＣ８５１は、ステップＳ４０８へ進む。
【００５７】
次に、図１に示すプリンタ８５５、図３に示すプリンタ８５２及び代理サーバ８５３、並びに図４に示すプリンタ８５４及び代理サーバ８５３が、それぞれ起動している状態のとき（Ｓ４０９）を例に説明する。このようなとき、ステップＳ４０３で発行されたＳＳＤＰリクエストを受信した場合（Ｓ４１０）、プリンタ８５５、プリンタ８５２及びプリンタ８５４はそれぞれ、リクエスト要求が一致するか否かを判別する（Ｓ４１１）。つまり、プリンタ８５５、プリンタ８５２及びプリンタ８５４はそれぞれ、受信したＳＳＤＰリクエストが、自分がサポートしているリクエスト（ＵＰｎＰルートデバイスを検索するＳＳＤＰリクエスト）と一致するか否かを判別する。
【００５８】
判別の結果、一致する場合は、プリンタは、ＳＳＤＰレスポンスをクライアントＰＣ８５１へ発行し（Ｓ４１２）、ステップＳ４１０のＳＳＤＰリクエストの受信待ち状態に戻る。ステップＳ４１１において、ＳＳＤＰリクエストが一致しないと判別した場合、プリンタは、ステップＳ４１０へ戻る。
【００５９】
このように、ＵＰｎＰ対応デバイスが印刷ネットワークシステム内に存在する場合には、クライアントＰＣ８５１のＭｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダ上に、そのデバイスのアイコンが表示される。これによって、そのデバイスをクライアントＰＣ８５１から制御することができるようになる。
【００６０】
図６は、クライアントＰＣ８５１の表示装置に表示されたＭｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダの一例を示す図である。
【００６１】
図６は、図５のステップＳ４０５でプリンタ８５５（図１）のアイコンが表示されている状態を示している。図６中、ＡＢＣ  ＰｒｉｎｔＭｄｌ−Ｋ  ０００８８８は、ＵＰｎＰ対応のプリンタ８５５が使用可能な状態でスタンバイ中であることを示している。このアイコン表示において、ＡＢＣは製造者名、ＰｒｉｎｔＭｄｌ−Ｋは機種名、０００８８８は装置固有の製造番号を示している。
【００６２】
このように製造者名、機種名、製造番号を利用してデバイス表示名を構成する。よって、例えば、同一ネットワーク上に製造番号だけが異なる同一機種の周辺装置が複数存在するような場合においても、デバイス表示名からそれぞれのデバイスを特定できる。したがって、ユーザが意図していないデバイスに誤ってアクセスしてしまうような誤操作を防止することができる。
【００６３】
図７は、クライアントＰＣ８５１から発行されるＨＴＴＰリクエストの一例を示す図である。図７は、図５のステップＳ４０３や後述する図２３のステップＳ４７０３で発行されるＵＰｎＰルートデバイスを検索するためのＳＳＤＰリクエストを表す。図７の左端の番号は行番号を表す。このＳＳＤＰリクエストの内容に関しては、ＵＰｎＰ  Ｆｏｒｕｍによって標準化されているＵｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ｄｅｖｉｃｅ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｖ  １．０の規格に記載されている。よって、ここでは本実施形態に関連する部分のみ説明し、それ以外の部分に関する説明は省略する。
【００６４】
図７において、３行目はＳｅａｒｃｈ  Ｔａｒｇｅｔであり、ＵＰｎＰルートデバイスを表すｕｐｎｐ：ｒｏｏｔｄｅｖｉｃｅが指定されている。４行目はＭＡＮとして"ｓｓｄｐ：ｄｉｓｃｏｖｅｒ"が指定されている。この例では、Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｖ  １．０にて規定されるＳｉｍｐｌｅ  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ（ＳＳＤＰ）を使用する。
【００６５】
図７に示す例によれば、クライアントＰＣ８５１は、マルチキャストアドレス「２３９．２５５．２５５．２５０」、ポート番号「１９００」に対して、図７に示すフォーマットのＨＴＴＰパケットを発行する。なお、ＨＴＴＰリクエストによる探索要求はＵＰｎＰの探索要求に限るものではない。
【００６６】
図８は、クライアントＰＣ８５１に返信されるＨＴＴＰレスポンスの一例を示す図である。図８は、図５のステップＳ４１２や後述する図２３のステップＳ４７１３でプリンタ８５５から発行されるＳＳＤＰレスポンスを表す。図８の左端の番号は行番号を表す。このＳＳＤＰレスポンスの内容に関しては、ＵＰｎＰ  Ｆｏｒｕｍで標準化されているＵｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ｄｅｖｉｃｅ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｖ  １．０の規格に記載されている。よって、ここでは本実施形態に関連する部分のみ説明し、それ以外の部分に関する説明は省略する。
【００６７】
図８において、４行目で、プリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎが存在するＵＲＬが指定されている。このＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎについては、図９及び図１６、図１７を参照して後述する。
【００６８】
６行目はＮｏｔｉｆｉｃａｔｉｏｎ  Ｔｙｐｅを示し、この例では、デバイスのＤｅｖｉｃｅＴｙｐｅがＵＰｎＰ  Ｆｏｒｕｍで標準化されているＰｒｉｎｔｅｒ：１であることを表している。
【００６９】
７行目はＮｏｔｉｆｉｃａｔｉｏｎ  Ｓｕｂ  Ｔｙｐｅを示し、この例では、デバイスが使用可能な状態であることを表すｓｓｄｐ：ａｌｉｖｅが指定されている。
【００７０】
９行目はＵｎｉｑｕｅ  Ｓｅｒｖｉｃｅ  Ｎａｍｅを示し、この例では、デバイスのＵｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ（ＵＵＩＤ）が記されている。
【００７１】
図８に示す例によれば、Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｖ  １．０にて規定されるＳＳＤＰを使用している。よって、プリンタ８５５はマルチキャストアドレス「２３９．２５５．２５５．２５０」、ポート番号「１９００」に対して、図８に示すフォーマットのＨＴＴＰパケットを発行する。なお、ＨＴＴＰレスポンスによる応答はＵＰｎＰの応答に限るものではない。
【００７２】
図９は、プリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容の基本的な一例を示す図である。
【００７３】
図９の左端の番号は行番号を表す。この記述内容に関しては、ＵＰｎＰ  Ｆｏｒｕｍで標準化されているＵｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ｄｅｖｉｃｅ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｖ  １．０の規格に記載されている。よって、ここでは本実施形態に関連する部分のみ説明し、それ以外の部分に関する説明は省略する。
【００７４】
図９において、２〜３０行目はｒｏｏｔ要素を表し、プリンタ８５５がＵＰｎＰ  Ｆｏｒｕｍで標準化されているデバイスに準拠していることが記述されている。７〜２９行目はｄｅｖｉｃｅ要素を表す。８行目はｄｅｖｉｃｅＴｙｐｅ要素を示し、プリンタ８５５がＵＰｎＰ  Ｆｏｒｕｍで標準化されているＰｒｉｎｔｅｒ  Ｄｅｖｉｃｅ  Ｖ  １．０のデバイスであることが記述されている。
【００７５】
９行目はｆｒｉｅｎｄｌｙＮａｍｅ要素を示し、この内容が、図６に示すＭｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダに表示されるＵＰｎＰ対応デバイスのアイコンにおけるデバイス名として使用される。この要素を、後述する製造者名（ＡＢＣ）、機種名（ＰｒｉｎｔＭｄｌ−Ｋ）、製造番号（０００８８８）から構成する。このことにより、例えば、同一ネットワーク上に製造番号だけが異なる同一機種の周辺装置が複数存在するような場合においても、表示名からそれぞれのデバイスを特定できる。よって、ユーザが意図していないデバイスに誤ってアクセスしてしまうような誤操作を防止することができる。
【００７６】
１０行目はｍａｎｕｆａｃｔｕｒｅｒ要素を示し、製造業者名が記述される。１１行目はｍａｎｕｆａｃｔｕｒｅｒＵＲＬ要素を示し、製造業者のＷｅｂサイトのホームページのＵＲＬが記述される。１２行目はｍｏｄｅｌＤｅｓｃｒｉｐｔｉｏｎ要素を示し、エンドユーザ用の識別名が記述される。１３行目はｍｏｄｅｌＮａｍｅ要素を示し、機種名が記述される。１４行目はｓｅｒｉａｌＮｕｍｂｅｒ要素を示し、製造番号が記述される。１５行目はＵＤＮ要素であり、Ｕｎｉｑｕｅ  Ｄｅｖｉｃｅ  Ｎａｍｅが記述される。
【００７７】
１６〜２６行目はｓｅｒｖｉｃｅＬｉｓｔ要素を表す。１７〜２５行目はｓｅｒｖｉｃｅ要素を示し、このデバイス、即ちプリンタ８５５がサポートしているＵＰｎＰのサービスが記述される。１８行目はｓｅｒｖｉｃｅＴｙｐｅ要素を示し、プリンタ８５５がＵＰｎＰ  Ｆｏｒｕｍで標準化されているＰｒｉｎｔｅｒ  Ｂａｓｉｃ  Ｓｅｒｖｉｃｅ  Ｖ  １．０のサービスをサポートしていることが記述される。
【００７８】
１９行目はｓｅｒｖｉｃｅＩｄ要素を示し、このサービスのＩＤが記述される。２０行目はＳＣＰＤＵＲＬ要素を示し、Ｓｅｒｖｉｃｅ  ＤｅｓｃｒｉｐｔｉｏｎのためのＵＲＬ、即ち、Ｓｅｒｖｉｃｅ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ  Ｄｅｆｉｎｉｔｉｏｎ  ＵＲＬが記述される。２１〜２２行目はｃｏｎｔｒｏｌＵＲＬ要素を示し、デバイスを制御するためのＵＲＬが記述される。２３〜２４行目はｅｖｅｎｔＳｕｂＵＲＬ要素を示し、イベントのためのＵＲＬが記述される。２７〜２８行目はｐｒｅｓｅｎｔａｔｉｏｎＵＲＬ要素を示し、デバイスを公開するためのプレゼンテーションページのＵＲＬが記述される。
【００７９】
図１０は、プリンタ８５５が公開しているプレゼンテーションページをクライアントＰＣ８５１上で表示した場合の画面を示す図である。
【００８０】
クライアントＰＣ８５１において、図６に示す、ＵＰｎＰ対応デバイスであるプリンタ８５５のアイコン「ＡＢＣ  ＰｒｉｎｔＭｄｌ−Ｋ  ０００８８８」がダブルクリックされる。すると、図９の２７〜２８行目のｐｒｅｓｅｎｔａｔｉｏｎＵＲＬ要素で指定されているＵＲＬを引数としてＷｅｂブラウザ（ＩＥ６）が起動して、図１０に示すようなプレゼンテーションページが表示される。
【００８１】
このプレゼンテーションページはＡｃｔｉｖｅ  Ｓｅｒｖｅｒ  Ｐａｇｅｓ（以下「ＡＳＰ」という）で構成されており、動的に作成されたＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｋｅｕｐ  Ｌａｎｇｕａｇｅ）を見せることができる。よって、プリンタ８５５の状態等をリアルタイムに反映させて表示することが可能である。また、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔを用いて、一定時間（例えば５秒間）毎にページの内容が自動的に更新されるようになっているので、ＡＳＰの機能と合わせて、約５秒のインターバルでリアルタイムに表示内容が更新される。
【００８２】
図１０において、２１６はアドレス表示部であり、このプレゼンテーションページのＵＲＬが表示される。２００はプリンタ名表示部（Ｐｒｉｎｔｅｒ：）であり、プリンタ８５５の図６で示すようなＵＰｎＰ対応デバイス名であるプリンタ名が表示される。２０１は機種名表示部（Ｍｏｄｅｌ：）であり、プリンタ８５５の機種名が表示される。２０２はＩＰアドレス表示部（ＩＰ  Ａｄｄｒｅｓｓ：）であり、プリンタ８５５のＩＰアドレスが表示される。２０３はプリンタの状態表示部であり、プリンタの動作状態が表示される。図１０の例では"ＯＮ  ＬＩＮＥ"の状態を表している。
【００８３】
２０４は、ファイル名表示部２０５及び参照ボタン（Ｂｒｏｗｓｅ．．．）２０６から構成されるファイル選択部（Ｐｒｉｎｔ  Ｆｉｌｅ：）である。ユーザが、参照ボタン２０６をクリックすることによって印刷対象のファイルを選択すると、そのファイル名がファイル名表示部２０５に表示される。選択可能なファイルの種類は、ここではＪＰＥＧ形式のファイルとＸＨＴＭＬ（ＸＨＴＭＬ−ＰＲＩＮＴ）形式のファイルとする。
【００８４】
２０７は部数指定部（Ｃｏｐｉｅｓ：）であり、ユーザは、印刷部数を１〜１００部の範囲で指定できる。２０８は用紙の種類選択部（Ｍｅｄｉａ  Ｔｙｐｅ：）であり、ユーザは、用紙の種類をＰｌａｉｎ  Ｐａｐｅｒ、Ｐｈｏｔｏ  Ｐａｐｅｒ、ＯＨＰ  Ｓｈｅｅｔの中から選択することができる。
【００８５】
２０９は用紙サイズ選択部（Ｐａｐｅｒ  Ｓｉｚｅ：）であり、ユーザは、用紙サイズをＡ４、Ａ５、Ｂ５、Ｌｅｔｔｅｒの中から選択することができる。２１０は印刷レイアウト選択部（Ｌａｙｏｕｔ：）であり、ユーザは、印刷レイアウトを１−ｕｐ、２−ｕｐ、４−ｕｐの中から選択することができる。
【００８６】
２１１は印刷品位選択部（Ｐｒｉｎｔ  Ｑｕａｌｉｔｙ：）であり、ユーザは、印刷品位をＨｉｇｈ（高品位）、Ｓｔａｎｄａｒｄ（標準）、Ｄｒａｆｔ（ドラフト）の中から選択することができる。２１２は印刷の向き選択部（Ｏｒｉｅｎｔａｔｉｏｎ：）であり、ユーザは、印刷の向きをＰｏｒｔｒａｉｔ、Ｌａｎｄｓｃａｐｅから選択することができる。
【００８７】
２１３は印刷ボタン（Ｐｒｉｎｔ）であり、ユーザが、このボタンをクリックすると印刷が開始される。２１４はインク残量表示部であり、プリンタ８５５に装着されているインクカートリッジのインク残量が表示される。２１５は操作ガイド部であり、ユーザ操作の補助として、操作ガイドが表示される。
【００８８】
このプレゼンテーションページを利用することにより、クライアントＰＣ８５１、８５７にプリンタ８５５用のドライバをインストールすることなく、これらのクライアントＰＣからドライバレスでプリンタ８５５において印刷することができる。以下、この印刷を「ドライバレス印刷」という。
【００８９】
図１１は、図１０に示すプレゼンテーションページを用いてドライバレス印刷を行うときにクライアントＰＣ８５１又はクライアントＰＣ８５７で実行される印刷処理の手順を示すフローチャートである。但し、以下の説明では、図１０に示すプレゼンテーションページを用いてクライアントＰＣ８５１で実行される印刷処理の手順を例にとる。
【００９０】
図１１において、クライアントＰＣ８５１は、図１０に示す印刷ボタン２１３がクリックされると（Ｓ２５０１）、図１０に示す各印刷設定部２０７〜２１２に設定された印刷設定情報をプリンタ８５５へ送信する（Ｓ２５０２）。また、クライアントＰＣ８５１は、ファイル選択部２０４で選択された印刷対象ファイルをプリンタ８５５へ送信する（Ｓ２５０３）。これによって、クライアントＰＣ８５１におけるドライバレス印刷処理が完了する（Ｓ２５０４）。
【００９１】
ステップＳ２５０２においてプリンタ８５５へ送信された印刷設定情報は、クライアントＰＣ８５１の情報と共に、互いに関連付けられてプリンタ８５５内のメモリ等に保存される。この保存されたクライアントＰＣ８５１の情報と、印刷設定情報とは、次回、再びクライアントＰＣ８５１からこのプレゼンテーションページにアクセスされた時の初期設定値として利用される。これにより、次回アクセス時に、ユーザがよく使用するお気に入りの印刷設定が初期設定値としてプレゼンテーションページに最初に表示され、ユーザにとって操作性が向上する。
【００９２】
図１２は、ドライバレス印刷が行われたときのプリンタ８５５で行われる状態検出処理の手順と、クライアントＰＣ８５１又はクライアントＰＣ８５７で行われるプリンタ８５５の状態表示処理の手順とを示すフローチャートである。但し、以下の説明では、図１０に示すプレゼンテーションページを用いてクライアントＰＣ８５１で実行されるプリンタ８５５の状態表示処理の手順を例にとる。なお、プリンタ８５５の状態表示は、図１０に示すプレゼンテーションページおけるプリンタ名表示部２００、機種名表示部２０１、ＩＰアドレス表示部２０２、プリンタの状態表示部２０３、インク残量表示部２１４における状態表示を指す。
【００９３】
まず、プリンタ８５５における状態検出処理が起動する（Ｓ２６０１）と、プリンタ８５５は、プリンタ８５５の動作状況を表すステータスを確認し（Ｓ２６０２）、前回の確認結果と比較してステータスに変化が有る否かを判別する（Ｓ２６０３）。その結果、ステータスに変化が有るならば、プリンタ８５５は、最新のステータスを保存し（Ｓ２６０４）、プリンタ８５５に用意されているプレゼンテーションページのＡＳＰの情報を更新し（Ｓ２６０５）する。プリンタ８５５は、所定時間（例えば５秒間）待機した後（Ｓ２６０６）、ステップＳ２６０２へ戻る。一方、ステップＳ２６０３においてステータスに変化が無いと判別した場合、プリンタ８５５は、ステップＳ２６０６へ進む。
【００９４】
次に、クライアントＰＣ８５１における図１０に示すプレゼンテーションページに関する処理として（Ｓ２６０７）、クライアントＰＣ８５１は、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔで記述されている所定時間（例えば５秒間）が経過したか否かを判定する。Ｊａｖａ（登録商標）Ｓｃｒｉｐｔで記述されている所定時間（例えば５秒間）が経過した場合（Ｓ２６０８でＹＥＳ）、クライアントＰＣ８５１は、クライアントＰＣ８５１のＷｅｂブラウザ上における図１０のプレゼンテーションページの表示内容を更新する（Ｓ２６０９）。そして、クライアントＰＣ８５１は、ステップＳ２６０８へ戻る。
【００９５】
このようにして、簡単な構成のプレゼンテーションページを１つ用意するだけで、プリンタ８５５の状態を、クライアントＰＣ８５１又はクライアントＰＣ８５７の図１０のプレゼンテーションページにリアルタイムに反映することができる。これによって、プレゼンテーションページの開発工数を削減でき、しかも、ユーザにとって操作性が向上する。
【００９６】
図１３は、クライアントＰＣ８５１の表示装置に表示されるＰｒｉｎｔｅｒｓ  ａｎｄ  Ｆａｘｅｓフォルダを示す図である。図１３に示すように、クライアントＰＣ８５１にドライバがインストールされているプリンタ（プリンタ８５４）は、そのプリンタを表すアイコンにてこのフォルダ内に表示される。
【００９７】
図１４は、代理サーバ８５３におけるプリンタドライバの構成を示すブロック図である。図１４において、プリンタドライバ５０は代理サーバ８５３にインストールされているドライバであり、３２〜３９で示す複数のモジュールを備えている。アプリケーション３０は印刷指令可能なアプリケーションソフトウェアであり、例えば、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ  ＯＳ  に標準で同梱されているテキストエディタであるＮｏｔｅｐａｄ（Ｎｏｔｅｐａｄ．ｅｘｅ）等に相当する。３１はＧＤＩ（Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）であり、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ  ＯＳの一部である。
【００９８】
次にプリンタドライバ５０の構成を説明する。３２はプリンタキューで、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ  ＯＳのＳｐｏｏｌｅｒの一部であり、印刷ジョブをキューイングする。３３はプリントプロセッサであり、印刷レイアウトの変更や印刷画像の特殊処理を行う。３４はグラフィックスドライバで、プリンタドライバ５０の画像処理のコアとして動作し、ＧＤＩ３１から送られて来る描画命令に基づき印刷用の画像処理を行い、印刷制御コマンドを作成する。３５はＵＩモジュールで、プリンタドライバ５０のユーザインタフェースの提供及び制御を行う。
【００９９】
３６はランゲージモニタで、データの通信Ｉ／Ｆとしてデータの送受信を制御する。３７はポートモニタであり、ランゲージモニタ３６から送られてくるデータを適切なポートに対して送信したり、プリンタ８５４から送られてくるデータを、クラスドライバ３８を介して受信したりする。クラスドライバ３８は、最もポートに近いローレベルのモジュールであり、ポートを制御する。図１１に示す例では、ＵＳＢ用のクラスドライバに相当し、代理サーバ８５３のＵＳＢポートを制御して、プリンタ８５４との間でのＵＳＢ通信を制御する。３９はステータスモニタで、プリンタ８５４の状態をモニタして表示する。
【０１００】
図１１では、プリンタドライバ５０を搭載した代理サーバ８５３の場合で説明したが、同じＷｉｎｄｏｗｓ（登録商標）  ＸＰ  ＯＳを搭載したクライアントＰＣ８５１においてプリンタドライバを利用した印刷処理においても同様な構成となる。また、図１１では、代理サーバ８５３にプリンタ８５４がＵＳＢで接続されているローカル印刷の例を説明した。しかしながら、例えば、クライアントＰＣ８５１から代理サーバ８５３を介して共有されているプリンタ８５４で印刷するようなネットワーク印刷においても同様な構成となる。
【０１０１】
図１５は、クライアントＰＣ８５１のＷｉｎｄｏｗｓ（登録商標）  ＸＰ  ＯＳに標準のアプリケーションとして組み込まれているテキストエディタ、ＮｏｔｅｐａｄによってクライアントＰＣ８５１の表示装置に表示される画面の一例を示す図である。
【０１０２】
この画面において印刷を指示するには、Ｆｉｌｅメニューから印刷メニュー（Ｐｒｉｎｔ．．．）２１７を選択する。これにより、テキスト表示部２１８に表示されているテキストに対する印刷処理が開始される。
【０１０３】
図１６及び図１７は、本実施形態におけるプリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容を示す図である。なお、図９を参照して説明したＵＰｎＰデバイスのＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの基本的な記述内容に対して、本実施形態では記述内容の追加が行われているので、この追加した部分を中心に説明する。
【０１０４】
図１６及び図１７の左端の番号は行番号を表す。これらの図において、２〜３９行目はｒｏｏｔ要素、７〜３８行目はｄｅｖｉｃｅ要素を表す。１〜１５行目の内容は図９と同一なので、ここでは説明を省略する。
【０１０５】
１６〜３５行目はｓｅｒｖｉｃｅＬｉｓｔ要素を表す。この中で、１７〜２５行目に記されている１つ目のサービスは、図９の１７〜２５行目に記されているサービスと同一なので、ここでは説明を省略する。
【０１０６】
２６〜３４行目はｓｅｒｖｉｃｅ要素を示し、このデバイス、即ちプリンタ８５５がサポートしているＵＰｎＰの２つ目のサービスが記述される。
【０１０７】
２７行目はｓｅｒｖｉｃｅＴｙｐｅ要素を示し、製造業者（ベンダー）が独自に定めたＰｒｉｎｔｅｒ  Ｅｘｔｅｎｓｉｏｎａｌ  Ｓｅｒｖｉｃｅ  Ｖ１．０（ＰｒｉｎｔＥｘ：１）のサービスをプリンタ８５５がサポートしていることが記述されている。このＰｒｉｎｔｅｒ  Ｅｘｔｅｎｓｉｏｎａｌ  Ｓｅｒｖｉｃｅ  Ｖ１．０のサービス内容、及び、このサービスのＳｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎについては、図１８、図１９を参照して後述する。
【０１０８】
２８行目はｓｅｒｖｉｃｅＩｄ要素を示し、このサービスのＩＤが記述される。２９行目はＳＣＰＤＵＲＬ要素であり、ＳＣＰＤＵＲＬ（Ｓｅｒｖｉｃｅ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ  Ｄｅｆｉｎｉｔｉｏｎ  ＵＲＬ）が記述される。３０〜３１行目はｃｏｎｔｒｏｌＵＲＬ要素であり、デバイスがＰｒｉｎｔｅｒ  Ｅｘｔｅｎｓｉｏｎａｌ  Ｓｅｒｖｉｃｅ  Ｖ１．０を制御するためのＵＲＬが記述される。
【０１０９】
３２〜３３行目はｅｖｅｎｔＳｕｂＵＲＬ要素であり、このサービスのイベントのためのＵＲＬが記述される。３６〜３７行目はｐｒｅｓｅｎｔａｔｉｏｎＵＲＬ要素であり、デバイスを公開するためのプレゼンテーションページのＵＲＬが記述されている。これは図９の２７〜２８行目と同一である。
【０１１０】
図１８及び図１９は、本実施形態におけるプリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｓｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容を表す図である。
【０１１１】
図１８及び図１９の左端の番号は行番号を表す。これらの図１８及び図１９に示す内容は、図１６及び図１７のＰｒｉｎｔｅｒ  Ｅｘｔｅｎｓｉｏｎａｌ  Ｓｅｒｖｉｃｅ  Ｖ１．０のサービスのＳＣＰＤ（Ｓｅｒｖｉｃｅ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ  Ｄｅｆｉｎｉｔｉｏｎ）である。そして、このサービス及びこのサービスのＳｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの内容を表している。これらの内容の一部に関しては、ＵＰｎＰ  Ｆｏｒｕｍで標準化されているＵｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ｄｅｖｉｃｅ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｖ  １．０の規格に記載されているので、ここでは本実施形態に関連する部分のみ説明する。
【０１１２】
以下の説明においては、図１に示す印刷ネットワークシステムを例として用いる。これらの図１８及び図１９において、２〜５５行目はＳＣＰＤ要素を表し、ここには、プリンタ８５５がＵＰｎＰ  Ｆｏｒｕｍで標準化されているサービスに準拠していることが記述されている。７〜４３行目はａｃｔｉｏｎＬｉｓｔ要素を表す。Ｐｒｉｎｔｅｒ  Ｅｘｔｅｎｓｉｏｎａｌ  Ｓｅｒｖｉｃｅ  Ｖ１．０のサービスは２つのアクションを備え、１つ目はＣｒｅａｔｅＰｒｉｎｔｅｒアクション、２つ目はＤｅｌｅｔｅＰｒｉｎｔｅｒアクションである。
【０１１３】
８〜３２行目は前記１つ目のａｃｔｉｏｎ要素を示し、ＣｒｅａｔｅＰｒｉｎｔｅｒアクションを表す。ＣｒｅａｔｅＰｒｉｎｔｅｒアクションはデバイス、即ち、プリンタ８５５のドライバをクライアントＰＣ８５１やクライアントＰＣ８５７等にインストールする時のアクションである。９行目はｎａｍｅ要素を示し、このアクションの名前がＣｒｅａｔｅＰｒｉｎｔｅｒであることが記述されている。
【０１１４】
１０〜３１行目はａｒｇｕｍｅｎｔＬｉｓｔ要素を示す。ＣｒｅａｔｅＰｒｉｎｔｅｒアクションは４つの変数を備え、１つ目はＰｒｉｎｔｅｒＮａｍｅ変数、２つ目はＰｒｉｎｔｅｒＰａｔｈ変数、３つ目はＰｒｉｎｔＳｅｔｔｉｎｇＵＲＬ変数、４つ目はＳｔａｔｕｓＭｏｎｉｔｏｒＵＲＬ変数である。１１〜１５行目は前記１つ目のａｒｇｕｍｅｎｔ要素を示し、ＰｒｉｎｔｅｒＮａｍｅ変数が記述されている。
【０１１５】
１２行目はｎａｍｅ要素であり、この変数の名前がＰｒｉｎｔｅｒＮａｍｅであることが記述されている。１３行目はｄｉｒｅｃｔｉｏｎ要素であり、変数の入出力方向を表す。ＰｒｉｎｔｅｒＮａｍｅ変数は、コントロールポイント（クライアントＰＣ８５１やクライアントＰＣ８５７等）からデバイス（プリンタ８５５）へ入力する変数であることが記述されている。
【０１１６】
１４行目はｒｅｌａｔｅｄＳｔａｔｅＶａｒｉａｂｌｅ要素であり、この変数の値（文字列）が指定される。例えば、デバイスがプリンタ８５５の場合、クライアントＰＣ８５１からこの変数の値として、ドライバをインストールすべきプリンタのプリンタ名を表す"ＡＢＣ  ＰｒｉｎｔＭｄｌ−Ｋ  ０００８８８"という値（文字列）が指定される。
【０１１７】
１６〜２０行目は前記２つ目のａｒｇｕｍｅｎｔ要素を示し、ＰｒｉｎｔｅｒＰａｔｈ変数が記述されている。１７行目はｎａｍｅ要素を示し、この変数の名前がＰｒｉｎｔｅｒＰａｔｈであることが記述されている。
【０１１８】
１８行目はｄｉｒｅｃｔｉｏｎ要素を示し、変数の入出力方向を表す。ＰｒｉｎｔｅｒＰａｔｈ変数は、デバイス（プリンタ８５５）からコントロールポイント（クライアントＰＣ８５１やクライアントＰＣ８５７等）に対して出力される変数であることが記述されている。
【０１１９】
１９行目はｒｅｌａｔｅｄＳｔａｔｅＶａｒｉａｂｌｅ要素を示し、この変数の値（文字列）が指定される。例えば、デバイスがプリンタ８５５の場合、プリンタ８５５からこの変数の値として、プリンタ８５５のネットワークパスを表すＩＰアドレス"１９２．１６８．０．１００"という値（文字列）が指定されて返される。
【０１２０】
２１〜２５行目は前記３つ目のａｒｇｕｍｅｎｔ要素を示し、ＰｒｉｎｔｅｒＳｅｔｔｉｎｇＵＲＬ変数が記述されている。２２行目はｎａｍｅ要素を示し、この変数の名前がＰｒｉｎｔｅｒＳｅｔｔｉｎｇＵＲＬであることが記述されている。
【０１２１】
２３行目はｄｉｒｅｃｔｉｏｎ要素を示し、変数の入出力方向を表す。ＰｒｉｎｔｅｒＳｅｔｔｉｎｇＵＲＬ変数は、デバイス（プリンタ８５５）からコントロールポイント（クライアントＰＣ８５１やクライアントＰＣ８５７等）に対して出力される変数であることが記述されている。
【０１２２】
２４行目はｒｅｌａｔｅｄＳｔａｔｅＶａｒｉａｂｌｅ要素を示し、この変数の値（文字列）が指定される。例えば、デバイスがプリンタ８５５の場合、プリンタ８５５からこの変数の値として、プリンタ８５５の印刷設定ＵＩのプレゼンテーションページのＵＲＬを表す
"ｈｔｔｐ：／／１９２．１６８．０．１００／ＰｒｉｎｔＵＩＰｒｅｓｅｎｔａｔｉｏｎ．ａｓｐ？ｕｕｉｄ＝Ｐｒｉｎｔｅｒ：ＰｒｉｎｔＭｄｌ−Ｋ０００８８８"
という値（文字列）が指定されて返される。
【０１２３】
２６〜３０行目は前記４つ目のａｒｇｕｍｅｎｔ要素を示し、ＳｔａｔｕｓＭｏｎｉｔｏｒＵＲＬ変数が記述されている。２７行目はｎａｍｅ要素であり、この変数の名前がＳｔａｔｕｓＭｏｎｉｔｏｒＵＲＬであることが記述されている。
【０１２４】
２８行目はｄｉｒｅｃｔｉｏｎ要素を示し、変数の入出力方向を表す。ＰｒｉｎｔｅｒＳｅｔｔｉｎｇＵＲＬ変数は、デバイス（プリンタ８５５）からコントロールポイント（クライアントＰＣ８５１やクライアントＰＣ８５７等）に対して出力される変数であることが記述されている。
【０１２５】
２９行目はｒｅｌａｔｅｄＳｔａｔｅＶａｒｉａｂｌｅ要素を示し、この変数の値（文字列）が指定される。例えば、デバイスがプリンタ８５５の場合、プリンタ８５５からこの変数の値として、プリンタ８５５のステータスモニタＵＩのプレゼンテーションページのＵＲＬを表す
"ｈｔｔｐ：／／１９２．１６８．０．１００／ＳｔａｔｕｓＰｒｅｓｅｎｔａｔｉｏｎ．ａｓｐ？ｕｕｉｄ＝Ｐｒｉｎｔｅｒ：ＰｒｉｎｔＭｄｌ−Ｋ０００８８８"
という値（文字列）が指定されて返される。
【０１２６】
３３〜４２行目は前記２つ目のａｃｔｉｏｎ要素を示し、ＤｅｌｅｔｅＰｒｉｎｔｅｒアクションが記述されている。ＤｅｌｅｔｅＰｒｉｎｔｅｒアクションはクライアントＰＣ８５１やクライアントＰＣ８５７等からデバイス、即ち、プリンタ８５５のドライバを削除（アンインストール）する時のアクションである。
【０１２７】
３４行目はｎａｍｅ要素を示し、このアクションの名前がＤｅｌｅｔｅＰｒｉｎｔｅｒであることが記述されている。３５〜４１行目はａｒｇｕｍｅｎｔＬｉｓｔ要素を示す。ＤｅｌｅｔｅＰｒｉｎｔｅｒアクションはＰｒｉｎｔｅｒＰａｔｈ変数を備える。
【０１２８】
３６〜４０行目はａｒｇｕｍｅｎｔ要素を示し、ＰｒｉｎｔｅｒＰａｔｈ変数が記述されている。３７行目はｎａｍｅ要素を示し、この変数の名前がＰｒｉｎｔｅｒＰａｔｈであることが記述されている。
【０１２９】
３８行目はｄｉｒｅｃｔｉｏｎ要素を示し、変数の入出力方向が記述される。ＰｒｉｎｔｅｒＰａｔｈ変数は、コントロールポイント（クライアントＰＣ８５１やクライアントＰＣ８５７等）からデバイス（プリンタ８５５）へ入力する変数であることが記述されている。
【０１３０】
３９行目はｒｅｌａｔｅｄＳｔａｔｅＶａｒｉａｂｌｅ要素を示し、この変数の値（文字列）が指定される。例えば、デバイスがプリンタ８５５の場合、クライアントＰＣ８５１からこの変数の値として、プリンタ８５５のネットワークパスを表すＩＰアドレス"１９２．１６８．０．１００"という値（文字列）が指定される。
【０１３１】
４４〜５４行目はｓｅｒｖｉｃｅＳｔａｔｅＴａｂｌｅ要素を示す。４５〜５３行目はｓｔａｔｅＶａｒｉａｂｌｅ要素を示し、デバイス（プリンタ８５５）の稼動状態を表すＰｒｉｎｔｅｒＳｔａｔｅ状態値が記述される。４５行目を見ると、この状態値がイベントとしてデバイス（プリンタ８５５）からコントロールポイント（クライアントＰＣ８５１やクライアントＰＣ８５７等）へリアルタイムに送信されることが分かる。
【０１３２】
４６行目はｎａｍｅ要素であり、このＰｒｉｎｔｅｒＳｔａｔｅ状態値の名前がＰｒｉｎｔｅｒＳｔａｔｅであることが記述されている。４７行目はｄａｔａＴｙｐｅ要素を示し、このＰｒｉｎｔｅｒＳｔａｔｅ状態値のデータタイプがｓｔｒｉｎｇ（文字列）であることが記述されている。
【０１３３】
４８行目はｄｅｆａｕｌｔＶａｌｕｅ要素を示し、このＰｒｉｎｔｅｒＳｔａｔｅ状態値の初期値がｅｎａｂｌｅであることが記述されている。４９〜５２行目はａｌｌｏｗｅｄＶａｌｕｅＬｉｓｔ要素を示し、状態値として指定可能な値が記述されている。
【０１３４】
５０行目は前記１つ目のａｌｌｏｗｅｄＶａｌｕｅ要素を示し、稼動可能を表す値としてｅｎａｂｌｅが定義されている。５１行目は前記２つ目のａｌｌｏｗｅｄＶａｌｕｅ要素を示し、稼動不可能を表す値としてｕｎａｂｌｅが定義されている。
【０１３５】
このように、クライアントＰＣ８５１やクライアントＰＣ８５７等（以下ではクライアントＰＣ８５１を例にとって説明する）において、ネットワーク８５６上にプリンタ８５５が発見された場合。Ｐｒｉｎｔｅｒ  Ｅｘｔｅｎｓｉｏｎａｌ  Ｓｅｒｖｉｃｅ  Ｖ１．０のサービスのＣｒｅａｔｅＰｒｉｎｔｅｒアクションを利用して、クライアントＰＣ８５１からドライバをインストールするプリンタのプリンタ名が指定される。そして、プリンタ８５５からネットワークパス、印刷設定ＵＩのプレゼンテーションページのＵＲＬ、ステータスモニタＵＩのプレゼンテーションページのＵＲＬが返され、これらの情報を用いてプリンタのドライバのインストールが行われる。また、印刷時にもこれらの情報が利用される。クライアントＰＣ８５１からプリンタ８５５のドライバを削除（アンインストール）する場合は、ＤｅｌｅｔｅＰｒｉｎｔｅｒアクションを利用して削除を確実に行うことができる。
【０１３６】
プリンタ８５５のドライバのインストールや削除の際に、ＰｒｉｎｔｅｒＳｔａｔｅ状態値のイベントを利用し、プリンタ８５５が稼動不可能な場合はプリンタ８５５のドライバのインストールを行わないようにする。又は、プリンタ８５５が稼動不可能な場合はプリンタ８５５のドライバを削除するようにすることも、ユーザにとって有効である。
【０１３７】
前記説明では、図１に示す印刷ネットワークシステムを例として用いたが、図３に示す第１の構成部分や図４に示す第２の構成部分においても、これを利用できる。この場合、代理サーバ８５３が、プリンタ８５５が行っていたＵＰｎＰの制御を行い、プリンタ８５２やプリンタ８５４を見かけ上ＵＰｎＰ対応プリンタとして制御できるようにすることで、容易に実現できる。また、図４に示す印刷ネットワークシステムの第２の構成部分のような、代理サーバ８５３と該代理サーバ８５３にＵＳＢでローカル接続されたプリンタ８５４とから成るローカル接続の環境においても、これを利用できる。この場合、プリンタ８５４が、プリンタ８５５と同様なＵＰｎＰ対応プリンタの機能を備えることで、容易に実現できる。
【０１３８】
図２０は、図１に示す印刷ネットワークシステムにおけるクライアントＰＣ８５１で実行されるＵＰｎＰ対応デバイス検出処理の手順を示すフローチャートである。このフローチャートにはプリンタ８５５側のＳＳＤＰレスポンス発行処理も含まれる。
【０１３９】
図２０において、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰを搭載したクライアントＰＣ８５１が起動して（Ｓ４７０１）、ＵＰｎＰサービスが開始されると（Ｓ４７０２）。すると、クライアントＰＣ８５１が、ＵＰｎＰルートデバイスを検索するＳＳＤＰリクエストを発行する（Ｓ４７０３）。
【０１４０】
このＳＳＤＰリクエストを受信したデバイス（プリンタ８５５）からのＳＳＤＰレスポンスが有った場合（Ｓ４７０４でＹＥＳ）。クライアントＰＣ８５１は、検出されたデバイス（プリンタ８５５）のアイコンをＭｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダ上に表示し（Ｓ４７０５）、プリンタのドライバのインストール（本文及び図では詳細説明を省略）を行う（Ｓ４７０６）。そして、クライアントＰＣ８５１は、所定時間（例えば１分）待機の後（Ｓ４７０９）、ステップＳ４７０３へ戻る。
【０１４１】
ステップＳ４７０４においてデバイス（プリンタ８５５）からＳＳＤＰレスポンスが無いと判別した場合、クライアントＰＣ８５１は、ステップＳ４７０７に進む。そして、クライアントＰＣ８５１は、Ｍｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダ上に、レスポンスの無いデバイス（プリンタ８５５）のアイコンが表示されているか否かを判別する（Ｓ４７０７）。アイコンが表示されている場合、クライアントＰＣ８５１は、そのデバイス（プリンタ８５５）のアイコンの表示を削除し（Ｓ４７０８）、ステップＳ４７０９へ進む。ステップＳ４７０７においてレスポンスの無いデバイス（プリンタ８５５）のアイコンが表示されていない場合、クライアントＰＣ８５１は、ステップＳ４７０９へ進む。
【０１４２】
一方、プリンタ８５５が起動している状態のとき（Ｓ４７１０）を例に説明する。このとき、ステップＳ４７０３で発行されたＳＳＤＰリクエストをプリンタ８５５が受信した場合（Ｓ４７１１）、ステップＳ４７１２に進む。プリンタ８５６は、そのＳＳＤＰリクエストが、自分がサポートしているリクエスト（ＵＰｎＰルートデバイスを検索するＳＳＤＰリクエスト）と一致するか否かを判別する（Ｓ４７１２）。プリンタ８５６は、一致するならばＳＳＤＰレスポンスをクライアントＰＣ８５１へ発行し（Ｓ４７１３）、ステップＳ４７１１のＳＳＤＰリクエストの受信待ち状態に戻る。ステップＳ４７１２においてリクエストが一致しないと判別したならば、プリンタ８５５は、ステップＳ４７１１へ戻る。
【０１４３】
このように、ＵＰｎＰ対応デバイス（プリンタ８５５）が印刷ネットワークシステム内に存在する場合。クライアントＰＣ８５１の表示装置に表示されるＭｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダ上に、図６に示すようなデバイス（プリンタ８５５）のアイコンＡＢＣ  ＰｒｉｎｔＭｄｌ−Ｋ  ０００８８８が表示される。よって、そのデバイス（プリンタ８５５）をクライアントＰＣ８５１から制御することができるようになる。これにより、図１０に示すプレゼンテーションページを用いて、図１１に示す印刷処理の手順に従い、クライアントＰＣ８５１において選択されたファイルをドライバレスでプリンタ８５５にて印刷することができる。
【０１４４】
なお、図２０のステップＳ４７０６においてプリンタ８５５のドライバのインストールが行われる。すると、クライアントＰＣ８５１のＰｒｉｎｔｅｒｓ  ａｎｄ  Ｆａｘｅｓフォルダに、図１３に示すようなプリンタ８５５を表すアイコンＡＢＣ  ＰｒｉｎｔＭｄｌ−Ｋ０００８８８が追加されて表示される。よって、クライアントＰＣ８５１において、任意の印刷指令可能なアプリケーション（例えば、図１５に示すＮｏｔｅｐａｄ等）での印刷指令に基づいてプリンタ８５５にて印刷することができるようになる。このアプリケーションからの印刷処理については、図２３〜図２４を参照して後述する。
【０１４５】
図２１は、本実施形態に係るＵＩモジュール３５の内部構成を示すブロック図である。図２１において、４３はＷｅｂブラウザ制御部であり、プリンタドライバ５０がインストールされているクライアントＰＣや代理サーバのＷｅｂブラウザを制御する。
【０１４６】
４４はＤＥＶＭＯＤＥ制御部であり、印刷時にＯＳ、アプリケーション３０、プリンタドライバ５０間で使用するＤＥＶＭＯＤＥ構造体の制御を行う。また、ＤＥＶＭＯＤＥ制御部４４は、必要に応じて制御結果をＷｅｂブラウザ制御部４３と連携して、印刷設定ＵＩのプレゼンテーションページに反映させる。また、ＤＥＶＭＯＤＥ制御部４４は、Ｗｅｂブラウザ制御部４３から取得した印刷設定ＵＩのプレゼンテーションページの設定内容を、ユーザ毎の固有の設定として、クライアントＰＣや代理サーバにそれぞれ保存する機能も備えている。この機能により、各ユーザ単位でお気に入りの印刷設定を初期値として、印刷設定ＵＩのプレゼンテーションページに反映させることができる。
【０１４７】
図２２は、クライアントＰＣ８５１の表示装置に表示された、プリンタ８５５が公開している印刷設定ＵＩのプレゼンテーションページを示す図である。
【０１４８】
クライアントＰＣ８５１において、ユーザが図１５に示すＦｉｌｅメニューから印刷メニュー（Ｐｒｉｎｔ．．．）２１７を選択すると、Ｐｒｉｎｔダイアログ（図は省略）が表示される。例えば、ユーザは、このＰｒｉｎｔダイアログのＰｒｅｆｅｒｅｎｃｅｓボタン（図は省略）をクリックする。すると、クライアントＰＣ８５１は、クライアントＰＣ８５１に保存されている印刷設定ＵＩのプレゼンテーションページのＵＲＬを取得して、このＵＲＬを引数としてＷｅｂブラウザ（ＩＥ６）を起動する。これによって、図２２に示すような印刷設定ＵＩのプレゼンテーションページがクライアントＰＣ８５１の表示装置に表示される。この印刷設定ＵＩのプレゼンテーションページはＡＳＰで構成されており、動的に作成されたＨＴＭＬデータによって表示が行われる。
【０１４９】
図２２において、２５１はアドレス表示部であり、この印刷設定ＵＩのプレゼンテーションページのＵＲＬが表示される。２３９はプリンタ名表示部（Ｐｒｉｎｔｅｒ：）であり、図１３で示すようにクライアントＰＣ８５１にプリンタ８５５のドライバがインストールされた時に、このプリンタ８５５のプリンタ名が自動的に表示される。
【０１５０】
２４０は機種名表示部（Ｍｏｄｅｌ：）であり、プリンタ８５５の機種名が表示される。２４１はプリンタパス表示部（Ｐａｔｈ：）であり、プリンタ８５５のネットワークパスが表示される。２４２は部数指定部（Ｃｏｐｉｅｓ：）であり、印刷部数を１〜１００部の範囲で指定できる。
【０１５１】
２４３は用紙の種類選択部（Ｍｅｄｉａ  Ｔｙｐｅ：）であり、用紙の種類をＰｌａｉｎ  Ｐａｐｅｒ、Ｐｈｏｔｏ  Ｐａｐｅｒ、ＯＨＰ  Ｓｈｅｅｔの中から選択することができる。２４４は用紙サイズ選択部（Ｐａｐｅｒ  Ｓｉｚｅ：）であり、用紙サイズをＡ４、Ａ５、Ｂ５、Ｌｅｔｔｅｒから選択することができる。
【０１５２】
２４５は印刷レイアウト選択部（Ｌａｙｏｕｔ：）であり、印刷レイアウトを１−ｕｐ、２−ｕｐ、４−ｕｐの中から選択することができる。２４６は印刷品位選択部（Ｐｒｉｎｔ  Ｑｕａｌｉｔｙ：）であり、印刷品位をＨｉｇｈ、Ｓｔａｎｄａｒｄ、Ｄｒａｆｔの中から選択することができる。
【０１５３】
２４７は印刷の向き選択部（Ｏｒｉｅｎｔａｔｉｏｎ：）であり、印刷の向きをＰｏｒｔｒａｉｔ、Ｌａｎｄｓｃａｐｅの中から選択することができる。２４８はＯＫボタンであり、このボタンがクリックされると、その時の印刷設定情報によって印刷設定を更新して保存した後、Ｗｅｂブラウザを終了して印刷設定ＵＩのプレゼンテーションページを閉じる。
【０１５４】
２４９はＣａｎｃｅｌボタンであり、このボタンがクリックされると、そのときの印刷設定情報による更新は実行せずに、Ｗｅｂブラウザを終了して印刷設定ＵＩのプレゼンテーションページを閉じる。２５０は操作ガイド部であり、ユーザ操作の補助として、操作案内情報が表示される。
【０１５５】
図２３及び図２４は、図１に示す印刷ネットワークシステムにおいて、クライアントＰＣ８５１内のアプリケーションでの印刷指令に従ってプリンタ８５５にて印刷が実行されるまでの処理の手順を示すフローチャートである。
【０１５６】
図１５に示す印刷メニュー２１７が選択されて印刷が開始されると（Ｓ５１０１）、Ｐｒｉｎｔダイアログが表示される（Ｓ５１０２）。Ｐｒｉｎｔダイアログの中のＰｒｅｆｅｒｅｎｃｅｓボタンがクリックされると（Ｓ５１０３でＹＥＳ）、クライアントＰＣ８５１は、クライアントＰＣ８５１に保存されている印刷設定ＵＩのプレゼンテーションページのＵＲＬを取得する（Ｓ５１１４）。
【０１５７】
クライアントＰＣ８５１は、取得したＵＲＬを引数としてＷｅｂブラウザ（ＩＥ６）を起動する（Ｓ５１１５）。これによって、図２２に示す印刷設定ＵＩのプレゼンテーションページが表示され（Ｓ５１１６）、ＯＫボタン２４８がクリックされると（Ｓ５１１７でＹＥＳ）、クライアントＰＣ８５１は、その時の印刷設定情報によって印刷設定を更新して保存する。
【０１５８】
また、クライアントＰＣ８５１は、この印刷設定情報をプリンタ８５５に送信する（Ｓ５１１８）。そして、Ｗｅｂブラウザ（ＩＥ６）を終了して印刷設定ＵＩのプレゼンテーションページを閉じた後（Ｓ５１１９）、ステップＳ５１０４へ進む。
【０１５９】
ステップＳ５１０４では、アプリケーション３０がプリンタドライバの機能を問い合わせ、ＤＥＶＭＯＤＥ構造体等の印刷設定情報を作成する（Ｓ５１０４）。Ｐｒｉｎｔダイアログの中のＰｒｉｎｔボタンがクリックされて印刷が開始されると（Ｓ５１０５）、アプリケーション３０から描画命令がＧＤＩ３１に送られる。そして、前記印刷設定情報とこの描画命令とがＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａｆｉｌｅ  Ｆｏｒｍａｔ）ファイルとしてプリンタキュー３２等においてキューイングされ、印刷ジョブが作成される（Ｓ５１０６）。
【０１６０】
そして、プリントプロセッサ３３にて前記印刷ジョブのＥＭＦファイルがリプレイされて印刷レイアウトの変更処理等が行われて、新たな描画命令が作成されてＧＤＩ３１に送られる（Ｓ５１０７）。このリプレイされて新たに作成された描画命令がＧＤＩ３１からグラフィックスドライバ３４に送られ、グラフィックスドライバ３４は、この描画命令を印刷画像用のメモリにラスタライズすることをＧＤＩ３１（ＯＳ）に依頼する。そして、ＧＤＩ３１によりラスタライズが行われ、印刷画像が作成される（Ｓ５１０８）。グラフィックスドライバ３４はこのラスタライズされた印刷画像に基づき印刷制御コマンドを作成する（Ｓ５１０９）。
【０１６１】
次に、プリンタドライバ５０等が、ステータスモニタ３９を起動し（Ｓ５１１０）、プリンタ８５４に前記印刷制御コマンドを送信する（Ｓ５１１１）。
【０１６２】
図２２に示す印刷設定ＵＩのプレゼンテーションページが表示されて、Ｃａｎｃｅｌボタン２４９がクリックされると（Ｓ５１１７でＮＯ）、ステップＳ５１１９へ進む。
【０１６３】
ステップＳ５１１８においてプリンタ８５５へ送信された印刷設定情報は、クライアントＰＣ８５１の情報と関連付けられてプリンタ８５５内に保存される。この保存されたクライアントＰＣ８５１の情報と、印刷設定情報とは、次回、再びクライアントＰＣ８５１からこの印刷設定ＵＩのプレゼンテーションページにアクセスされた時の初期設定値として利用される。これにより、次回アクセス時に、ユーザがよく使用するお気に入りの印刷設定が初期設定値として印刷設定ＵＩのプレゼンテーションページに最初に表示され、ユーザにとって操作性が向上する。
【０１６４】
ステップＳ５１１０においてステータスモニタが起動すると、クライアントＰＣ８５１が、クライアントＰＣ８５１に保存されているステータスモニタＵＩのプレゼンテーションページのＵＲＬを取得して（Ｓ５１２０）する。そして、クライアントＰＣ８５１は、このＵＲＬを引数としてＷｅｂブラウザ（ＩＥ６）を起動する（Ｓ５１２１）。これによって、ステータスモニタＵＩのプレゼンテーションページ（本文及び図での詳細説明は省略）が表示される（Ｓ５１２２）。
【０１６５】
ステータスモニタが起動している間は、プリンタ８５５が自分のステータスを確認し（Ｓ５１２３）、プリンタ８５５に状態変化が有る場合（Ｓ５１２４でＹＥＳ）、そのステータスを保存し（Ｓ５１２５）する。そして、プリンタ８５５が、自分が公開しているステータスモニタＵＩのプレゼンテーションページの表示内容を更新する（Ｓ５１２６）。そして、プリンタ８５５は、所定時間（例えば５秒）待機の後（Ｓ５１２７）、ステップＳ５１２３に戻る。
【０１６６】
ステップＳ５１２４において、プリンタ８５５は、自身の状態変化が無いと判別した場合、ステップＳ５１２７へ進む。
【０１６７】
ステータスモニタが起動している間はこのような処理が繰り返され、プリンタ８５５の最新の状態が、ステータスモニタＵＩのプレゼンテーションページにリアルタイムに表示される。
【０１６８】
ステップＳ５１１１において、クライアントＰＣ８５１がプリンタ８５５に印刷制御コマンドを送信し、印刷制御コマンドの全てが送信された後、Ｗｅｂブラウザを終了する。そして、クライアントＰＣ８５１は、ステータスモニタＵＩのプレゼンテーションページを閉じてステータスモニタを終了し（Ｓ５１１２）、印刷処理を終了する（Ｓ５１１３）。
【０１６９】
プリンタ８５５においては、ステップＳ５１１１で送信された印刷制御コマンドに基づき、印刷が行われる。
【０１７０】
図２３及び図２４では、クライアントＰＣ８５１からの印刷指令によってネットワーク８５６上のプリンタ８５５にて印刷を行う例を示した。しかしながら、例えば、図３に示す印刷ネットワークシステムの第１の構成部分や、図４に示す第２の構成部分においても、同様な印刷処理が可能である。つまり、代理サーバ８５３が、プリンタ８５５が行っていたＵＰｎＰの制御を行い、プリンタ８５２やプリンタ８５４を見かけ上ＵＰｎＰ対応プリンタとして制御できるようにすることで、同様な印刷処理を行うことができる。また、図４に示す第２の構成部分において、代理サーバ８５３と、代理サーバ８５３にＵＳＢでローカル接続されたプリンタ８５４とから成るローカル接続の環境においても、同様な印刷処理が可能である。つまり、プリンタ８５４がプリンタ８５５と同様なＵＰｎＰ対応プリンタの機能を備えることにより、同様な印刷処理を行うことができる。
【０１７１】
図２５はクライアント、データ／印刷品位、プリンタから印刷用の画像処理に使う印刷の種類を決定する為のテーブルの一例を示す図である。なお、図２５に示されるテーブルは、例えば代理サーバ８５３のメモリ（ＨＤＤ）等に格納されている。
【０１７２】
図２５において、「クライアント」欄はクライアントＰＣ８５１、クライアントＰＣ８５７、ＰＤＡ８６０等の印刷ジョブを発行するクライアントを表す欄である。ここでは、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰを搭載したＰＣ、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ以外のＯＳ（例えばＷｉｎｄｏｗｓ（登録商標）  ９８）を搭載したＰＣ、Ｗｉｎｄｏｗｓ（登録商標）  ＣＥを搭載したＰＤＡを想定している。
【０１７３】
なお、ＯＳ名が記載されていないＰＣは任意のＯＳを搭載するＰＣを表すものとする。「データ／印刷品位」欄はクライアントから代理サーバ８５３に送信されて代理サーバ８５３にて受信されたデータ形式と、選択された印刷品位とを表す欄である。ここでは、データ形式として、Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ標準のスプールファイル形式であるＥＭＦ、プリンタ制御コマンドの生データであるＲＡＷ、ＪＰＥＧ、ＸＨＴＭＬ（ＸＨＴＭＬ−ＰＲＩＮＴ）を想定している。また、印刷品位として、図１０の印刷品位選択部２１１で前述した高品位、標準、ドラフトを想定している。
【０１７４】
なお、印刷品位が'−'で表されている部分は、代理サーバに印刷品位選択部２１１で選択された値が直接送られて来ないことを意味する。「プリンタ」欄は代理サーバ８５３を介して制御されるプリンタを表す欄であり、ここでは、通常のノーマル印刷だけに対応しているプリンタ８５２、ノーマル印刷とダイレクト印刷に対応しているプリンタ８５４を想定している。
【０１７５】
「印刷の種類」欄は、使用する印刷用の画像処理を表す欄であり、ここでは、
・印刷処理１・・・クライアントＰＣ内のプリンタドライバで印刷用の画像処理を行う。
・印刷処理２・・・代理サーバ８５３内のプリンタドライバ５０で印刷用の画像処理を行う。
・ダイレクト印刷・・・プリンタ８５４内の画像処理部８５９で印刷用の画像処理を行う（ＪＰＥＧファイル等）。
の３つの種類を想定している。
【０１７６】
同一設定で印刷を行った場合、代理サーバ８５３内のプリンタドライバ５０の印刷用の画像処理を使った印刷処理２の方が、プリンタ８５４内の画像処理部８５９の印刷用の画像処理を使ったダイレクト印刷より高品位な印刷結果を得ることができる。しかし、印刷速度は代理サーバ８５３からプリンタ８５４へ送信されるデータ量が少ないダイレクト印刷の方が速い。
【０１７７】
図２６は代理サーバ８５３におけるプロキシサーバ機能の動作を表すフローチャートである。図２６において、代理サーバ８５３におけるプロキシサーバ機能が開始される（Ｓ２３０１）。代理サーバ８５３は、クライアントから送信されて代理サーバ８５３で受信したデータが有る場合（Ｓ２３０２でＹＥＳ）、ステップ２３０３に進む。代理サーバ８５３は、データがＵＰｎＰのドライバレス印刷で送信されてきたＪＰＥＧ形式のファイルを含む印刷データである場合（Ｓ２３０３でＹＥＳ）、図２７で後述するＪＰＥＧ印刷を行い（Ｓ２３０７）、ステップＳ２３０２へ戻る。
【０１７８】
ステップＳ２３０２において受信データが無い場合は、代理サーバ８５３は、受信データが来るまで待機（ループ）する。
【０１７９】
ステップＳ２３０３において、データがＵＰｎＰのドライバレス印刷で送信されてきたＪＰＥＧ形式のファイルを含む印刷データではない場合（Ｓ２３０３でＮＯ）、代理サーバ８５３は、ステップＳ２３０４に進む。
【０１８０】
データがＵＰｎＰのドライバレス印刷で送信されてきたＸＨＴＭＬ（ＸＨＴＭＬ−ＰＲＩＮＴ）形式のファイルを含む印刷データである場合（Ｓ２３０４でＹＥＳ）、代理サーバ８５３は、ステップＳ２３０８に進む。
【０１８１】
代理サーバ８５３は、図１０で選択された印刷設定をもとにＤＥＶＭＯＤＥ構造体等の印刷設定情報を作成し（Ｓ２３０８）、図２３のステップＳ５１０５へ進み、印刷を開始する。
【０１８２】
ステップＳ２３０４において、データがＵＰｎＰのドライバレス印刷で送信されてきたＸＨＴＭＬ（ＸＨＴＭＬ−ＰＲＩＮＴ）形式のファイルを含む印刷データではない場合、代理サーバ８５３は、ステップＳ２３０５に進む。
【０１８３】
ステップＳ２３０５において、データがＥＭＦファイルの場合、代理サーバ８５３は、図２３のステップＳ５１０７へ進む。そして、プリントプロセッサ３３にて前記印刷ジョブのＥＭＦファイルがリプレイされて印刷レイアウトの変更処理等が行われて、新たな描画命令が作成されてＧＤＩ３１に送られる。
【０１８４】
ステップＳ２３０５において、データがＥＭＦファイルではない場合、代理サーバ８５３は、データをＲＡＷデータとして扱い、受信したデータをそのままプリンタへ送信し（Ｓ２３０６）、ステップＳ２３０２へ戻る。
【０１８５】
そして、プリンタ８５２又は８５４は、このＲＡＷデータの印刷制御コマンドに従って印刷を行う。なお、クライアントから代理サーバ８５３にＥＭＦファイルが送信されて来るのは、クライアントがクライアントＰＣ８５１のようにＷｉｎｄｏｗｓ（登録商標）  ＸＰを搭載している場合である。クライアントがクライアントＰＣ８５７のようにＷｉｎｄｏｗｓ（登録商標）  ９８等のＷｉｎｄｏｗｓ（登録商標）  ＸＰ以外のＯＳを搭載している場合は、ＲＡＷデータが送信されて来る。これらはＯＳの仕様である。
【０１８６】
図２７は、代理サーバ８５３におけるＪＰＥＧ印刷の動作を表すフローチャートである。図２７において、図２６のステップＳ２３０７においてＪＰＥＧ印刷が開始されると（Ｓ２４０１）、代理サーバ８５３は、以下に示す処理を開始する。
【０１８７】
代理サーバ８５３は、ＵＰｎＰのプロトコル上での通信で得られた情報からクライアントの種類を確認し（Ｓ２４０２）、ＰＤＡ８６０のようなＰＤＡの場合（Ｓ２４０３）、代理サーバ８５３が制御しているプリンタの種類を確認（Ｓ２４０４）する。代理サーバ８５３は、プリンタ８５４のようなダイレクト印刷対応のプリンタである場合（Ｓ２４０５）、ＰｉｃｔＢｒｉｄｇｅのプロトコルに従ってダイレクト印刷用のデータを生成する（Ｓ２４０６）。代理サーバ８５３は、ダイレクト印刷用のデータをＰｉｃｔＢｒｉｄｇｅのプロトコルに従ってプリンタへ送信し（Ｓ２４０７）、リターンする（Ｓ２４０９）。
【０１８８】
ステップＳ２４０３においてＰＤＡでない場合、代理サーバ８５３は、ステップＳ２５０８に進む。代理サーバ８５３は、印刷品位が高品位の場合、図２６のステップＳ２３０８へ進み、印刷品位が高品位以外の場合、ステップＳ２４０４へ進む。また、ステップＳ２４０５において、プリンタ８５２のような通常のノーマル印刷だけに対応しているプリンタである場合、代理サーバ８５３は、図２６のステップＳ２３０８へ進む。
【０１８９】
プリンタが通常のノーマル印刷だけに対応しているプリンタか、ダイレクト印刷にも対応しているプリンタかの判別には、Ｄｅｖｉｃｅ  ＩＤに含まれるプリンタのモデル名、サポートしている印刷制御コマンドに関する情報等を利用する。なお、この判別方法はこの方法に限られることなく、確実に判別することができるような他の任意の方法でよい。
【０１９０】
代理サーバ８５３は、図２６、図２７の各処理における判別処理等において、必要に応じて図２５のテーブルを参照する。
【０１９１】
このように、クライアントから送られて来る印刷データの種類、印刷品位、代理サーバ８５３が制御しているプリンタの種類に応じて、印刷用の画像処理や、ノーマル印刷とダイレクト印刷とを切り換える。よって、印刷速度、印刷品位が最適化された操作性に優れた印刷ネットワークシステム（周辺装置制御システム）を実現することができる。
【０１９２】
クライアントがＰＣやＰＤＡの場合で、クライアント内のプリンタドライバを使って印刷が行われた場合は、図２５の印刷処理１が適用されて従来通りの印刷が行われるので、ユーザは今まで通りの操作感覚で印刷できるので、操作性に優れる。
【０１９３】
クライアントが任意の端末の場合（本実施の形態においてはＰＣやＰＤＡの場合）で、図１０のようなプレゼンテーションページを開いて、ＸＨＴＭＬ形式のファイルを選択してドライバレス印刷が行われた場合（ＸＨＴＭＬ−ＰＲＩＮＴの場合）。代理サーバ８５３がプリンタドライバ５０を使って、ユーザの選択した印刷設定に合わせて最適な印刷用の画像処理を行うので、高品位な印刷結果を得ることができる。
【０１９４】
クライアントが任意の端末の場合（本実施の形態においてはＰＣやＰＤＡの場合）で、図１０のようなプレゼンテーションページを開いて、ＪＰＥＧ形式のファイルを選択してドライバレス印刷が行われた場合。通常ＰＤＡでは高解像度かつ高品位のＪＰＥＧファイルを扱うことができないことに着目して、クライアントがＰＤＡの場合は、ユーザが選択した印刷品位にかかわらずダイレクト印刷を優先して高速に印刷するように最適化している。
【０１９５】
クライアントがＰＣの場合は、ユーザが選択した印刷品位を重要視し、高品位が選択されている場合は印刷処理２にて印刷することにより高品位な印刷結果が得られるように最適化している。また、高品位以外の品位（標準、ドラフト）が選択されている場合はダイレクト印刷を優先して高速に印刷するように最適化している。このような最適化は本システムの環境における一例であり、クライアントやプリンタの性能や使用環境に合わせて、より最適な組み合わせ及び判別ロジックを組み込むことで、より一層良い効果を得ることができる。
【０１９６】
更に、図２５のようなテーブルを書き換えられるようなユーザインタフェースを例えばプリンタドライバ等のユーザインタフェースに装備して、ユーザが任意にテーブルの内容を書き換えることができるようにしている。よって、ユーザが自分の使用環境や好みに合わせて印刷の種類をカスタマイズすることができるようになり、よりユーザの意図を反映させた操作性に優れた印刷ネットワークシステムを実現することができる。
【０１９７】
なお、本実施の形態においては、データの種類と印刷品位からノーマル印刷を行うか、ダイレクト印刷を行うかを決定した。しかしながら、更にクライアントから送られて来るデータに含まれている他の印刷設定や、ファイル（例えばＪＰＥＧファイル）の解像度、カラー情報、その他の様々な等も考慮してもよい。これらの情報に応じて、最適な印刷用画像処理を決定することで、その印刷環境により最適化させた印刷結果を得ることができる。
【０１９８】
以下、図２８に示すメモリマップを参照して、本実施形態に係る情報処理装置及び周辺装置からなる印刷ネットワークシステムで読み出し可能なデータ処理プログラムの構成について説明する。
【０１９９】
図２８は、本実施形態に係る印刷ネットワークシステムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを示す図である。なお、図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報、作成者等もこの記憶媒体に記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０２００】
図２７中、６４は記憶媒体であり、ここではハードディスクで構成されているものとする。６５はディレクトリ情報管理部であり、各種プログラムに従属するデータがこのディレクトリ情報管理部６５で管理されている。６６はプログラム格納部であり、各種プログラムを情報処理装置にインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に解凍するためのプログラム等も記憶される場合がある。
【０２０１】
図５、図１１、図１２、図２６、図２７、図２０、図２３、図２４にそれぞれ示す各フローチャートの実行によって実現できる各機能が、外部からインストールされるプログラムによって、情報処理装置等によって実現されるようにしてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやフレキシブルディスク等の記録媒体により、或いはネットワークを介して外部の記録媒体から、プログラムを含む情報群が情報処理装置や周辺装置に供給される場合でも、本実施形態は適用されるものである。
【０２０２】
なお、記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ等を用いることができる。
【０２０３】
上述したように、本実施形態によれば、次のような効果が得られる。
（１）印刷速度、印刷品位が最適化された操作性に優れた印刷ネットワークシステム（周辺装置制御システム）を実現することができる。
（２）クライアント内のプリンタドライバを使って印刷が行われた場合、従来通りの印刷が行われるので、ユーザは今まで通りの操作感覚で印刷できるので、操作性に優れる。
（３）ＸＨＴＭＬ形式のファイルを選択してドライバレス印刷が行われた場合（ＸＨＴＭＬ−ＰＲＩＮＴの場合）、ユーザの選択した印刷設定に合わせて最適な印刷用の画像処理を行うので、高品位な印刷結果を得ることができる。
（４）ＪＰＥＧ形式のファイルを選択してドライバレス印刷が行われた場合、クライアントがＰＤＡの場合は、ダイレクト印刷を優先して高速に印刷することができる。
（５）（４）において、クライアントがＰＣの場合は、ユーザが選択した印刷品位を重要視し、高品位が選択されている場合は高品位な印刷結果が得ることができる。また、高品位以外の品位（標準、ドラフト）が選択されている場合はダイレクト印刷を優先して高速に印刷することができる。
（６）ユーザインタフェースを装備することで、ユーザが自分の使用環境や好みに合わせて印刷の種類をカスタマイズすることができるようになり、よりユーザの意図を反映させた操作性に優れた印刷ネットワークシステムを実現することができる。
（７）ＰＣやＰＤＡ上のＷｅｂブラウザを介して周辺装置を制御するので、任意の端末において周辺装置の制御を容易に実現することができる。
（８）ＵＰｎＰ等の標準化された規格を利用することで、より汎用的なシステムを容易に実現することができる。
【０２０４】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０２０５】
【図１】情報処理装置及び周辺装置からなる印刷ネットワークシステム（周辺装置制御システム）の一実施形態における情報処理装置の構成部分を示すブロック図である。
【図２】クライアントＰＣ８５１、８５７のハードウェア構成の一例を示すブロック図である。
【図３】印刷ネットワークシステムの前記実施形態における第１の構成部分を示すブロック図である。
【図４】印刷ネットワークシステム（周辺装置制御システム）の前記実施形態における第２の構成部分を示すブロック図である。
【図５】Ｗｉｎｄｏｗｓ（登録商標）  ＸＰをＯＳとして搭載したクライアントＰＣ８５１において実行されるＵＰｎＰ対応デバイス検出処理の手順を示すフローチャートである。
【図６】クライアントＰＣ８５１の表示装置に表示されたＭｙ  Ｎｅｔｗｏｒｋ  Ｐｌａｃｅｓフォルダの一例を示す図である。
【図７】クライアントＰＣ８５１から発行されるＨＴＴＰリクエストの一例を示す図である。
【図８】クライアントＰＣ８５１に返信されるＨＴＴＰレスポンスの一例を示す図である。
【図９】プリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容の基本的な一例を示す図である。
【図１０】プリンタ８５５が公開しているプレゼンテーションページをクライアントＰＣ８５１上で表示した場合の画面を示す図である。
【図１１】図１０に示すプレゼンテーションページを用いてドライバレス印刷を行うときにクライアントＰＣ８５１又はクライアントＰＣ８５７で実行される印刷処理の手順を示すフローチャートである。
【図１２】ドライバレス印刷が行われたときのプリンタ８５５で行われる状態検出処理の手順と、クライアントＰＣ８５１又はクライアントＰＣ８５７で行われるプリンタ８５５の状態表示処理の手順とを示すフローチャートである。
【図１３】クライアントＰＣ８５１の表示装置に表示されるＰｒｉｎｔｅｒｓ  ａｎｄ  Ｆａｘｅｓフォルダを示す図である。
【図１４】代理サーバ８５３におけるプリンタドライバの構成を示すブロック図である。
【図１５】クライアントＰＣ８５１のＷｉｎｄｏｗｓ（登録商標）  ＸＰ  ＯＳに標準のアプリケーションとして組み込まれているテキストエディタ、ＮｏｔｅｐａｄによってクライアントＰＣ８５１の表示装置に表示される画面の一例を示す図である。
【図１６】本実施形態におけるプリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容を示す図（その１）である。
【図１７】本実施形態におけるプリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｄｅｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容を示す図（その２）である。
【図１８】本実施形態におけるプリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｓｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容を表す図（その３）である。
【図１９】本実施形態におけるプリンタ８５５がサポートしているＵＰｎＰデバイスのＸＭＬ  Ｓｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎの記述内容を表す図（その４）である。
【図２０】図１に示す印刷ネットワークシステムにおけるクライアントＰＣ８５１で実行されるＵＰｎＰ対応デバイス検出処理の手順を示すフローチャートである。
【図２１】本実施形態に係るＵＩモジュール３５の内部構成を示すブロック図である。
【図２２】クライアントＰＣ８５１の表示装置に表示された、プリンタ８５５が公開している印刷設定ＵＩのプレゼンテーションページを示す図である。
【図２３】図１に示す印刷ネットワークシステムにおいて、クライアントＰＣ８５１内のアプリケーションでの印刷指令に従ってプリンタ８５５にて印刷が実行されるまでの処理の手順を示すフローチャート（その１）である。
【図２４】図１に示す印刷ネットワークシステムにおいて、クライアントＰＣ８５１内のアプリケーションでの印刷指令に従ってプリンタ８５５にて印刷が実行されるまでの処理の手順を示すフローチャート（その２）である。
【図２５】クライアント、データ／印刷品位、プリンタから印刷用の画像処理に使う印刷の種類を決定する為のテーブルの一例を示す図である。
【図２６】代理サーバ８５３におけるプロキシサーバ機能の動作を表すフローチャートである。
【図２７】代理サーバ８５３におけるＪＰＥＧ印刷の動作を表すフローチャートである。
【図２８】本実施形態に係る印刷ネットワークシステムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを示す図である。
【符号の説明】
【０２０６】
８５１    クライアントＰＣ
８５３    代理サーバ
８５４    プリンタ
８５７    クライアントＰＣ
１２０１  ＲＡＭ
１２０２  ＨＤＤ
１２０３  ＫＢＤ
１２０４  ＣＰＵ
１２０５  ＬＣＤ
１２０８  ＮＢ
【図１】
2007156994.tif 000003
【図２】
2007156994.tif 000004
【図３】
2007156994.tif 000005
【図４】
2007156994.tif 000006
【図５】
2007156994.tif 000007
【図６】
2007156994.tif 000008
【図７】
2007156994.tif 000009
【図８】
2007156994.tif 000010
【図９】
2007156994.tif 000011
【図１０】
2007156994.tif 000012
【図１１】
2007156994.tif 000013
【図１２】
2007156994.tif 000014
【図１３】
2007156994.tif 000015
【図１４】
2007156994.tif 000016
【図１５】
2007156994.tif 000017
【図１６】
2007156994.tif 000018
【図１７】
2007156994.tif 000019
【図１８】
2007156994.tif 000020
【図１９】
2007156994.tif 000021
【図２０】
2007156994.tif 000022
【図２１】
2007156994.tif 000023
【図２２】
2007156994.tif 000024
【図２３】
2007156994.tif 000025
【図２４】
2007156994.tif 000026
【図２５】
2007156994.tif 000027
【図２６】
2007156994.tif 000028
【図２７】
2007156994.tif 000029
【図２８】
2007156994.tif 000030