(57)【要約】【課題】プリンタにサーバ経由で印刷情報を送信するクライアントに、プリンタに関する情報を取得させることを可能とすること。【解決手段】プリンタドライバプログラムがクライアントＰＣで実行されると、ネットワークプリンタのネットワークアドレスを要求するためのアドレス要求コマンドとクライアントＰＣのネットワークアドレスとが、サーバＰＣ経由でネットワークプリンタに送信される（Ｓ０８）。これにより、ネットワークプリンタからクライアントＰＣにネットワークを介して接続することが可能となる。そして、ネットワークを介してネットワークプリンタからネットワークプリンタのＩＰアドレスが受信される（Ｓ０９）。これにより、受信されたＩＰアドレスを用いて、クライアントＰＣをネットワークプリンタとネットワークを介して接続することが可能となる。【選択図】        図３
2004302562.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置に接続されたサーバにネットワークを介して接続されるクライアントで実行される制御プログラムであって、
前記印刷装置のネットワークアドレスを要求するためのアドレス要求コマンドと前記クライアントのネットワークアドレスとを、前記サーバ経由で前記印刷装置に送信するステップと、
前記アドレス要求コマンドの送信に応答して、前記ネットワークを介して前記印刷装置から送られてくる前記印刷装置のネットワークアドレスを受信するステップとを含む、制御プログラム。
【請求項２】
前記送信ステップは、前記制御プログラムを特定するためのポート番号をさらに送信する、請求項１に記載の制御プログラム。
【請求項３】
前記アドレス要求コマンドを送信する指示の入力をユーザに促すための指示画面を出力するステップをさらに含み、
前記送信ステップは、前記送信指示が入力されたことを条件に送信する、請求項２に記載の制御プログラム。
【請求項４】
ネットワークに接続され、サーバにより前記ネットワーク環境に提供される印刷装置であって、
前記ネットワーク上で前記印刷装置に割当てられたネットワークアドレスを記憶する記憶手段と、
前記サーバからデータを入力する入力手段と、
前記入力されたデータが、印刷ジョブであるか否かを判定する判定手段と、
前記判定手段により印刷ジョブでないと判定された場合、前記データに含まれるネットワークアドレスで特定されるクライアントに前記印刷装置のネットワークアドレスを前記ネットワークを介して送信する送信手段とを備えた、印刷装置。
【請求項５】
前記判定手段により印刷ジョブでないと判定されたときに、前記入力されたデータの印刷を禁止する禁止手段をさらに含む、請求項４に記載の印刷装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は制御プログラムおよび印刷装置に関し、特に、印刷装置にサーバ経由で印刷ジョブを送信するクライアントで実行される制御プログラムおよびその印刷装置に関する。
【０００２】
【従来の技術】
複数のコンピュータでプリンタを共有するために、ネットワークが利用される。複数のコンピュータをネットワークに接続し、その複数のコンピュータの１つをサーバとして、そのサーバにプリンタが接続される接続形態が利用される。プリンタとサーバとの接続は、ネットワークを介して接続される場合、パラレルまたはシリアルインターフェイスで直接接続される場合がある。サーバを除くコンピュータをクライアントと呼ぶ。この接続形態では、クライアントにより生成された印刷ジョブがサーバに送信される。サーバで受信された印刷ジョブは、受信した順にプリンタに出力されて、プリンタで印刷される。
【０００３】
クライアントは、サーバに対して印刷ジョブを送信するため、クライアントとプリンタとは直接通信しない。このため、クライアントは、プリンタのネットワークアドレスを記憶しておく必要がない。クライアントでは、取得可能なプリンタに関する情報は、印刷プロトコルに規定されたサーバから得られる情報のみである。
【０００４】
特開２０００−２９６５３号公報には、プリンタで印刷ジョブの実行で生じた不具合を、その印刷ジョブの発信元のクライアントに通知する情報処理システムが記載されている。この情報処理システムは、コンピュータからネットワークに接続されたプリンタに対して、印刷ジョブを発行する際、印刷ジョブ中のジョブヘッダに送信元を示す唯一の識別番号を付加し、プリンタ側でその識別番号を解析して保持するものである。そして、プリンタでジョブ処理中に何らかの問題が発生した場合、識別番号を使用してジョブ送信元へメッセージを送出する。
【０００５】
【特許文献１】
特開２０００−２９６５３号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、特開２０００−２０６５３号公報に記載の情報処理システムは、コンピュータが送信した印刷ジョブに関連する不具合の情報を受信することができるが、その他の情報をプリンタから取得することはできないといった問題がある。
【０００７】
クライアントとプリンタとを直接接続することにより、クライアントにおいてプリンタから直接情報を受信することも可能であるが、このためには、クライアントのユーザが、プリンタのＩＰアドレスを知っている必要がある。プリンタのＩＰアドレスを取得しようとするためには、そのユーザがプリンタのネットワークアドレスを独自に調査して取得したり、ネットワーク管理者に問合せて取得する必要があり、容易に取得することはできない。
【０００８】
この発明は上述の問題点を解決するためになされたもので、この発明の目的の１つは、印刷装置にサーバ経由で印刷ジョブを送信するクライアントに、印刷装置に関する情報を取得させることを可能とする制御プログラムおよび印刷装置を提供することである。
【０００９】
【課題を解決するための手段】
上述の目的を達成するためにこの発明のある局面によれば、制御プログラムは、印刷装置に接続されたサーバにネットワークを介して接続されるクライアントで実行される制御プログラムであって、印刷装置のネットワークアドレスを要求するためのアドレス要求コマンドとクライアントのネットワークアドレスとを、サーバ経由で印刷装置に送信するステップと、アドレス要求コマンドの送信に応答して、ネットワークを介して印刷装置から送られてくる印刷装置のネットワークアドレスを受信するステップとを含む。
【００１０】
この発明に従えば、制御プログラムがクライアントで実行されると、印刷装置のネットワークアドレスを要求するためのアドレス要求コマンドとクライアントのネットワークアドレスとが、サーバ経由で印刷装置に送信される。これにより印刷装置ではクライアントのネットワークアドレスが受信されるので、印刷装置からネットワークを介してクライアントに接続することが可能となる。そして、印刷装置からネットワークを介して送られてくる印刷装置のネットワークアドレスが受信される。このため、受信されたアドレスを用いて、クライアントを印刷装置とネットワークを介して接続することが可能となる。その結果、印刷装置にサーバ経由で印刷ジョブを送信するクライアントに、印刷装置に関する情報を取得させることを可能とする制御プログラムを提供することができる。
【００１１】
好ましくは、送信ステップは、制御プログラムを特定するためのポート番号をさらに送信する。
【００１２】
この発明に従えば、制御プログラムを特定するためのポート番号が送信されるので、アドレス要求コマンドを送信した先の印刷制御装置のネットワークアドレスを確実に受信することができる。
【００１３】
好ましくは、アドレス要求コマンドを送信する指示の入力をユーザに促すための指示画面を出力するステップをさらに含み、送信ステップは、送信指示が入力されたことを条件に送信する。
【００１４】
この発明に従えば、アドレス要求コマンドを送信する指示の入力をユーザに促すための画面が出力されるので、クライアントのユーザは必要なときに印刷装置のネットワークアドレスを知ることができる。
【００１５】
この発明の他の局面によれば、ネットワークに接続され、サーバによりネットワーク環境に提供される印刷装置であって、ネットワーク上で印刷装置に割当てられたネットワークアドレスを記憶する記憶手段と、サーバからデータを入力する入力手段と、入力されたデータが、印刷ジョブであるか否かを判定する判定手段と、判定手段により印刷ジョブでないと判定された場合、データに含まれるネットワークアドレスで特定されるクライアントに印刷装置のネットワークアドレスをネットワークを介して送信する送信手段とを備える。
【００１６】
この発明に従えば、ネットワーク上で印刷装置に割当てられたネットワークアドレスが記憶され、サーバから入力されたデータが、印刷ジョブでないと判定された場合、そのデータに含まれるネットワークアドレスで特定されるクライアントに印刷装置のネットワークアドレスがネットワークを介して送信される。このため、印刷装置のネットワークアドレスが送信されたクライアントでは、そのネットワークアドレスを用いて印刷装置とネットワークを介して接続することができる。その結果、印刷装置にサーバ経由で印刷ジョブを送信するクライアントに、印刷装置の情報をネットワークを介して直接送信することが可能な印刷装置を提供することができる。
【００１７】
好ましくは、判定手段により印刷ジョブでないと判定されたときに、入力されたデータの印刷を禁止する禁止手段をさらに含む。
【００１８】
この発明に従えば、印刷ジョブでないと判定されたときに、入力されたデータの印刷が禁止されるので、印刷ジョブでないデータが無駄に印刷されるのを防止することができる。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００２０】
図１は、本発明の実施の形態の１つにおける印刷システムの全体概要を示す図である。図１を参照して、印刷システムは、クライアントであるパーソナルコンピュータ（以下「クライアントＰＣ」という）１００と、サーバであるパーソナルコンピュータ（以下「サーバＰＣ」）１１０と、ネットワークプリンタ１２０とを含む。クライアントＰＣ１００、サーバＰＣ１１０およびネットワークプリンタ１２０は、それぞれがネットワーク１３０に接続されている。ネットワーク１３０は、ローカルエリアネットワーク（ＬＡＮ）である。このため、クライアントＰＣ１００、サーバＰＣ１１０およびネットワークプリンタ１２０は、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）に従って相互に通信が可能である。すなわち、相手方のＩＰアドレスを指定することにより、その相手方とネットワーク接続を確立することができる。
【００２１】
サーバＰＣ１１０とネットワークプリンタ１２０とは、シリアルインターフェイスまたはパラレルインターフェイスで直接接続されている。なお、この直接接続は必ずしも必要ではなく、サーバＰＣ１１０がネットワークプリンタ１２０と何らかの形で接続されれば、ネットワーク１３０を介して接続されてもよい。
【００２２】
ネットワークプリンタ１２０は、サーバＰＣ１１０により管理される。したがって、ネットワークプリンタ１２０は、通常はサーバＰＣ１１０から印刷ジョブを受信し、プリント出力する。
【００２３】
クライアントＰＣ１００では、ネットワークプリンタ１２０に印刷ジョブを送信するためのプリンタドライバソフトウェアが実行される。クライアントＰＣ１００は外部記憶装置を備え、記録媒体１０７に記録された制御プログラムであるプリンタドライバプログラムを読取り、クライアントＰＣ１００に内蔵された中央演算装置（ＣＰＵ）において読取ったプリンタドライバプログラムを実行する。一般的に、そのようなプリンタドライバプログラムは、記録媒体１０７に記録されて流通する。そして、クライアントＰＣ１００が備える外部記憶装置により読取られ、クライアントＰＣ１００が備えるハードディスクに不揮発的に記憶される。クライアントＰＣ１００では、ハードディスクに記憶されたプリンタドライバプログラムをランダムアクセスメモリ（ＲＡＭ）に読取り、ＣＰＵで実行する。これにより、クライアントＰＣ１００にプリンタドライバの機能が形成される。このような、クライアントＰＣ１００のハード構成および動作は周知であるので、ここではその詳細な説明は繰返さない。
【００２４】
なお、記録媒体１０７としては、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｃ）、ハードディスク、磁気テープ、カセットテープ、光ディスク（ＭＯ（Ｍａｇｎｅｔｉｃ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ）／ＭＤ（Ｍｉｎｉ  Ｄｉｓｃ）／ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ））、ＩＣカード（メモリカードを含む）、光カード、マスクＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュＲＯＭなどの半導体メモリを含む。
【００２５】
また、ここでいうプリンタドライバプログラムとは、クライアントＰＣ１００のＣＰＵにより直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む概念である。
【００２６】
なお、図１ではクライアントＰＣ１００が１台の例を示したが、ネットワーク１３０に接続されるコンピュータであれば、パーソナルコンピュータに限らず、ワークステーション等の複数のクライアントＰＣを含めることが可能である。
【００２７】
本実施の形態における印刷システムでは、クライアントＰＣ１００からネットワークプリンタ１２０に印刷ジョブを送信する際には、サーバＰＣ１１０を経由する。したがって、クライアントＰＣ１００は、ネットワークプリンタ１２０のネットワーク上のアドレスを記憶しておく必要がない。これは、ネットワークプリンタ１２０がサーバＰＣ１１０により管理されるため、クライアントＰＣ１００とネットワークプリンタ１２０とが直接通信を行なう必要がないからである。
【００２８】
本実施の形態における印刷システムにおいては、クライアントＰＣから印刷ジョブがサーバＰＣ１１０に送信される際のプロトコルを用いて、クライアントＰＣ１００からネットワークプリンタ１２０のネットワークアドレスを要求するアドレス要求コマンドを送信するようにしている。ネットワークプリンタ１２０では、アドレス要求コマンドを受信すると、そのアドレス要求コマンドを送信したクライアントＰＣ１００に対してネットワーク１３０を介して接続を確立し、ネットワークプリンタ１２０のネットワークアドレス（ＩＰアドレス）をクライアントＰＣ１００に送信する。
【００２９】
クライアントＰＣ１００で、ネットワークプリンタ１２０のネットワークアドレスを取得することにより、クライアントＰＣ１００とネットワークプリンタ１２０とが直接通信可能となる。これにより、クライアントＰＣでは、印刷プロトコルにより規定されている情報以外のネットワークプリンタ１２０に関する情報をネットワークプリンタ１２０から直接取得するこが可能となる。たとえば、クライアントＰＣ１００がネットワークプリンタ１２０の稼動状態を受信することにより、クライアントＰＣ１００で独自のネットワークプリンタ１２０を管理することができる。また、クライアントＰＣ１００がネットワークプリンタ１２０から直接取得する情報としては、稼動状態の他に、たとえば、ネットワークプリンタ１２０に装着されているオプション装備の状況、ネットワークプリンタ１２０にセットされている用紙サイズ、サイズ別の用紙の残量、トナー残量、ネットワークプリンタでの印刷枚数、ネットワークプリンタ１２０のネットワーク１３０における設定情報、印刷デフォルト設定に関する情報、ネットワークプリンタ１２０に割当てられているＩＰアドレス以外のネットワーク識別子（たとえばＭＡＣアドレス）などである。
【００３０】
図２は、クライアントＰＣ１００とネットワークプリンタ１２０との機能を示す機能ブロック図である。図２を参照して、クライアントＰＣ１００は、クライアントＰＣ１００で実行される処理の全体を制御するための全体制御部１０２と、ユーザインターフェイス（ＵＩ）部１０１と、クライアントＰＣ１００をネットワークに接続するためのインターフェイス（Ｉ／Ｆ）部１０３と、要求コマンド生成部１０４と、印刷ジョブ生成部１０５と、応答解析部１０６とを含む。全体制御部１０２、要求コマンド生成部１０４、印刷ジョブ生成部１０５、応答解析部１０６は、上述したプリンタドライバソフトウェアがＣＰＵで実行されることにより、実現される機能である。
【００３１】
ＵＩ部１０１は、液晶表示装置、プラズマディスプレイパネル、陰極線管（ＣＲＴ）等のディスプレイと、キーボードまたはマウス等の入力装置である。また、ＵＩ部１０１は、液晶表示装置と、透明な部材からなるタッチパネルとを組合せて構成してもよい。Ｉ／Ｆ部１０３は、クライアントＰＣ１００をネットワーク１３０に接続するためのインターフェイスである。
【００３２】
印刷ジョブ生成部１０５は、クライアントＰＣ１００で実行されるアプリケーションソフトウェアから出力されるデータに基づいて、ネットワークプリンタ１２０に対して出力するための印刷ジョブを生成する。全体制御部１０２では、印刷ジョブ生成部１０５で生成された印刷ジョブをネットワークプリンタ１２０に送信するために、Ｉ／Ｆ部１０３に印刷ジョブを出力する。この際、上述したようにクライアントＰＣ１００からは、印刷ジョブはサーバＰＣ１１０経由でネットワークプリンタ１２０へ送信されるため、Ｉ／Ｆ部１０３は印刷ジョブをサーバＰＣ１１０に出力する。
【００３３】
要求コマンド生成部１０４は、ＵＩ部１０１から入力されるユーザの操作に基づき、ネットワークプリンタ１２０に送信するためのアドレス要求コマンドを生成する。アドレス要求コマンドは、ネットワークプリンタ１２０にそのＩＰアドレスの送信を要求するコマンドである。
【００３４】
生成されたアドレス要求コマンドは、全体制御部１０２により送信される。全体制御部１０２では、生成されたアドレス要求コマンドと、クライアントＰＣのＩＰアドレスと、ポート番号とをサーバＰＣ１１０経由でネットワークプリンタ１２０に送信するために、Ｉ／Ｆ部１０３にそれらを出力する。クライアントＰＣのＩＰアドレスは、クライアントＰＣに予め割当てられたネットワーク１３０上のＩＰアドレスである。ポート番号は、受信したデータを渡すプログラムを特定するもので、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）またはＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）プロトコルにより使用される。ここでは、プリンタのＩＰアドレス取得を行うプログラム（例えば、プリンタドライバ）と特定する番号を設定すればよい。具体的な番号の設定は、通常は使用されていない空き番号を設定するようにすればよい。Ｉ／Ｆ部１０３から出力されるこれらのデータは、上述した印刷ジョブの送信プロトコルと同じプロトコルで送信される。このため、Ｉ／Ｆ部１０３はそれらのデータをサーバＰＣ１１０に送信する。
【００３５】
応答解析部１０６は、Ｉ／Ｆ部１０３で受信されたデータを解析する。Ｉ／Ｆ部１０３は、受信したデータのヘッダからポート番号を取得し、ポート番号に対応するプログラムにデータを渡す。プリンタ１２０からＩＰアドレスが送信されてきた場合は、ポート番号が判断され、データは応答解析部１０６に渡され、応答解析部１０６においてデータの内容の解析が行われる。そして、受信したデータに含まれるネットワークプリンタ１２０のネットワークアドレスをクライアントＰＣ１００が備えるＲＡＭ等に記憶する。
【００３６】
ネットワークプリンタ１２０は、ネットワークプリンタ１２０をネットワーク１３０に接続するためのインターフェース（Ｉ／Ｆ）部１２１と、Ｉ／Ｆ部１２１で受信されたデータを解析するためのデータ解析部１２２と、データ解析部１２２で解析されたデータが印刷ジョブである場合に、その印刷ジョブを処理するための印刷ジョブ処理部１２３と、データ解析部１２２で解析されたデータが印刷ジョブでない場合には、アドレス要求コマンドを処理するための要求コマンド処理部１２４と、ネットワークプリンタ１２０に割当てられたネットワーク１３０におけるネットワークアドレスを記憶するためのアドレス記憶部１２５とを含む。
【００３７】
なお、図示はしないが、ネットワークプリンタ１２０は、印刷ジョブ処理部１２３で印刷ジョブを処理することにより生成される印刷データ（ラスタデータ）に基づき画像を形成するための画像形成エンジンを備える。
【００３８】
データ解析部１２２において、Ｉ／Ｆ部１２１で受信されたデータが、印刷ジョブでない場合には、そのデータは要求コマンド処理部１２４に出力される。要求コマンド処理部１２４では、受信されたデータからアドレス要求コマンドが含まれる場合には、アドレス記憶部１２５からネットワークアドレスを読出す。また、受信されたデータに含まれるＩＰアドレスとポート番号とを取得して、そのＩＰアドレスとポート番号とを用いて、Ｉ／Ｆ部１２１にクライアントＰＣ１００とネットワーク接続を確立する指示を出力する。このクライアントＰＣ１００とのネットワーク接続を確立するためのプロトコルは、ＴＣＰ／ＩＰで定められており、このネットワーク接続の確立により、アドレス記憶部１２５に記憶されているＩＰアドレスがクライアントＰＣ１００に送信される。
【００３９】
図３は、本実施の形態における印刷システムで実行される処理の流れを示すフローチャートである。図３では、クライアントＰＣ１００、サーバＰＣ１１０およびネットワークプリンタ１２０それぞれで実行される処理を分けて記載している。また、クライアントＰＣ１００で実行される処理は、プリンタドライバプログラムを実行するクライアントＰＣ１００のＣＰＵが実行する処理である。
【００４０】
図３を参照して、クライアントＰＣ１００では、ＵＩ部１０１に設定画面が出力される（ステップＳ０１）。この設定画面は、印刷ジョブ生成部１０５で生成される印刷ジョブを出力する先を設定するための画面である。図４は、設定画面の一例を示す図である。図４を参照して、設定画面には、印刷ジョブを出力する先としての印刷ポートを指定する領域２０１と、「自動取得する」の文字が表わされた収得ボタン２０３と、「ＯＫ」の文字が付されたＯＫボタン２０４と、「ＣＡＮＣＥＬ」の文字が表わされたキャンセルボタン２０５と、プリンタのＩＰアドレスを表示するための領域２０２とを含む。
【００４１】
領域２０１は、印刷ジョブを出力する先を指定するための領域であり、ここでは、ＵＮＣ（Ｕｎｉｖｅｒｓａｌ  Ｎａｍｉｎｇ  Ｃｏｎｖｅｎｔｉｏｎ）が入力される。このＵＮＣは、サーバ名「Ｓｅｒｖｅｒ１」とプリンタ名「ｐｒｉｎｔｅｒ２」とを組合せて「￥￥Ｓｅｒｖｅｒ１￥ｐｒｉｎｔｅｒ２」のように構成される。サーバ名「Ｓｅｒｖｅｒ１」はサーバＰＣ１１０を示し、「ｐｒｉｎｔｅｒ２」はネットワークプリンタ１２０を示す。したがって、このＵＮＣにより、サーバＰＣ１１０に接続されたネットワークプリンタ１２０が特定されることになる。領域２０２は、ネットワークプリンタ１２０のＩＰアドレスを表示するための領域である。
【００４２】
収得ボタン２０３は、アドレス要求コマンドをネットワークプリンタ１２０に送信することを指示するためのボタンである。収得ボタン２０３は、ＵＩ部１０１をユーザが操作することにより指定される。
【００４３】
ユーザがＵＩ部１０１を操作することによりＯＫボタン２０４が指示されると、領域２０１に入力されたＵＮＣが、クライアントＰＣ１００の備えるハードディスク等に記憶され、それ以降印刷ジョブ生成部１０５で生成された印刷ジョブは、そのＵＮＣで特定される印刷先ポートに出力されることになる。
【００４４】
キャンセルボタン２０５は、領域２０１に入力されたＵＮＣをキャンセルする指示を入力するためのボタンである。キャンセルボタン２０５がユーザのＵＩ部１０１の操作により指示されると、設定画面がクリアされ、領域２０１に入力されたＵＮＣは破棄される。収得ボタン２０３がユーザのＵＩ部１０１の操作により指示されると、ネットワークプリンタ１２０のＩＰアドレスを取得するためのフラグが立てられる。
【００４５】
図３に戻って、ステップＳ０１において設定画面がＵＩ部１０１に出力された後、ユーザのＵＩ部１０１の操作によりＯＫボタン２０４が操作されると、ネットワークプリンタのＵＮＣの入力があったか否かが判断される（ステップＳ０２）。これは、上述した設定画面の領域２０１に印刷先ポートを指定するためのＵＮＣの入力があり、かつ、「ＯＫ」の文字が表されたＯＫボタン２０４が指示されたか否かにより判断される。ＵＮＣの入力があったと判断された場合にはステップＳ０３に進み、そうでない場合にはＳ０３をスキップしてステップＳ０４に進む。ステップＳ０３では、領域２０１に入力されたＵＮＣを印刷先ポートに設定する。
【００４６】
ステップＳ０４では、プリンタのＩＰアドレスの取得指示があったか否かが判断される。指示があった場合にはステップＳ０５に進み、そうでない場合には処理を終了する。この指示の有無は、上述した設定画面において収得ボタン２０３がユーザがＵＩ部１０１を操作することにより「自動取得する」の文字が表された収得ボタン２０３が指示され、上述したフラグが立てられているか否かにより判断されるものである。
【００４７】
そして、クライアントＰＣのＩＰアドレスが取得され（ステップＳ０５）、ポート番号が取得される（ステップＳ０６）。このポート番号は、後述するステップＳ０９において、ネットワーク１３０を介してクライアントＰＣ１００が情報を受信するために割当てられたポートを示す番号であり、予め定められている。なお、ポート番号を上述した設定画面を用いて、ユーザが設定することができるようにしてもよい。
【００４８】
そしてステップＳ０７では、アドレス要求コマンドが生成される。そして次のステップＳ０８では、ステップＳ０５で取得されたクライアントＰＣ１００のＩＰアドレスと、ステップＳ０６で取得されたポート番号と、ステップＳ０７で生成されたアドレス要求コマンドとが、ステップＳ０３で設定された印刷先ポートに出力される。
【００４９】
ステップＳ０３で設定された印刷先ポートは、通常印刷ジョブ生成部１０５で生成された印刷ジョブを出力する先のポートとして設定されたポートである。したがって、ステップＳ０８で出力されるデータは、印刷ジョブを送信するプロトコルに従って出力される。このため、出力される情報は、アドレス要求コマンドがそのヘッダに付されて出力される。これにより、そのデータを受信したネットワークプリンタ１２０では、受信したデータが印刷ジョブではなく、アドレス要求コマンドであることを判別することができる。
【００５０】
上述したように、ステップＳ０３で設定された印刷先ポートは、ＵＮＣで指定され、サーバＰＣ１１０を特定するための「Ｓｅｒｖｅｒ１」と、ネットワークプリンタ１２０を特定するための「ｐｒｉｎｔｅｒ２］とを含むものであった。このため、設定された印刷先ポートに出力されるデータは、ネットワーク１３０およびサーバＰＣ１１０を介してネットワークプリンタ１２０に送信されることになる。
【００５１】
ステップＳ０８の後、クライアントＰＣ１００は、ネットワークプリンタ１２０からデータが受信されるまで待機状態となる（ステップＳ０９）。
【００５２】
サーバＰＣ１１０では、データを受信したか否かが判断されており（ステップＳ２１）、データを受信した場合にステップＳ２２へ進む。ステップＳ２２では、受信したデータに含まれるＵＮＣから転送先を判別する。すなわち、本実施の形態においては、ＵＮＣとして「￥￥Ｓｅｒｖｅｒ１￥ｐｒｉｎｔｅｒ２」であったため、「Ｐｒｉｎｔｅｒ２」で特定されるネットワークプリンタ１２０が転送先に判別される。そして、判別された転送先であるネットワークプリンタ１２０に対して受信されたデータが出力される（ステップＳ２３）。
【００５３】
ネットワークプリンタ１２０では、サーバＰＣ１１０からデータを受信したか否かが判断されており（ステップＳ３１）、データが受信された場合にステップＳ３２に進む。ステップＳ３２では、受信されたデータのヘッダが解析され、そのデータがアドレス要求コマンドであるのかが判断される。そして、アドレス要求コマンドと判断された場合にはステップＳ３３へ進み、そうでない場合にはステップＳ３７へ進む。
【００５４】
ステップＳ３３では、受信したデータに含まれるクライアントＰＣのＩＰアドレスが取得される。そして次のステップＳ３４では、受信したデータに含まれるポート番号が取得される。これにより、ネットワークプリンタ１２０はクライアントＰＣ１００にネットワーク１３０を介してネットワーク接続を確立することが可能となる。
【００５５】
そして、ステップＳ３５では、ステップＳ３３で取得されたクライアントＰＣのＩＰアドレスとステップＳ３４で取得されたポート番号とを用いて、クライアントＰＣへネットワーク１３０を介してネットワーク接続が確立される。その後、ネットワークプリンタ１２０のＩＰアドレスがクライアントＰＣ１００に送信される（ステップＳ３６）。
【００５６】
一方、ネットワークプリンタ１２０では。ステップＳ３７において、ステップＳ３１で受信されたデータが印刷ジョブであるか否かが判断される。この判断は、受信されたデータのヘッダを解析することによりなされる。印刷ジョブと判断された場合にはステップＳ３８において印刷ジョブを用いた印刷処理が実行される。
【００５７】
このように、受信されたデータのヘッダが解析され、そのデータが印刷ジョブと判断された場合には印刷処理が実行されるが、印刷ジョブでないと判断された場合には印刷処理の実行が禁止され、受信されたアドレス要求コマンド、クライアントＰＣ１００のＩＰアドレスおよびポート番号のデータを用いた印刷処理は実行されない。これにより、アドレス要求コマンド、クライアントＰＣ１００のＩＰアドレスおよびポート番号がプリント出力されることがないので、無駄な印刷処理が実行されるのが防止される。
【００５８】
クライアントＰＣ１００では、ネットワークプリンタ１２０からデータが受信されたか否かが判断されている（ステップＳ０９）。データが受信された場合にはステップＳ１０に進む。この判断は、ステップＳ０６で設定されたポート番号宛てのデータ（パケット）のヘッダに基づく判断である。このようにすることで、ステップＳ０８でアドレス要求コマンドを送信したネットワークプリンタ１２０からのデータの受信であることを確実にすることができる。
【００５９】
次のステップＳ１０では、ステップＳ０９で受信されたデータからネットワークプリンタ１２０のＩＰアドレスを取得する。そして、取得したＩＰアドレスを、図４に示した領域２０２に表示する。これにより、クライアントＰＣ１００のユーザは、ネットワークプリンタ１２０のＩＰアドレスを知ることができる。
【００６０】
ユーザは、取得したＩＰアドレスを、たとえば、ウェブ（Ｗｅｂ）ブラウザのアドレス欄に入力することによって、ネットワークプリンタ１２０の動作状況を確認したり、設定を変更したりすることができる。
【００６１】
なお、本実施の形態においては、クライアントＰＣ１００およびネットワークプリンタ１２０のネットワーク１３０上のネットワークアドレスにＩＰアドレスを用いたが、ネットワーク１３０上でそれぞれを識別可能であれば、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス等の他のアドレスを用いることができる。
【００６２】
また、本実施の形態においては、クライアントＰＣ１００からポート番号を送信し、そのポート番号で特定されるポートによりデータが受信されるようにしたが、クライアントＰＣ１００でデータを受信するポート番号を予め定めておき、ネットワークプリンタ１２０からはそのポート番号で特定されるポートにプリンタのＩＰアドレスを送信するようにすれば、データの内容としてポート番号を送信する処理をなくすことができる。この場合には、ステップＳ０６の処理は不要となり、かつ、ステップＳ０８でポート番号を送信する必要がない。ネットワークプリンタ１２０における処理において、ステップＳ３４は不要となる。ネットワークプリンタ１２０が実行するステップＳ３６では、予め定められたポート番号を用いてクライアントＰＣ１００へＩＰアドレスが送信されることになる。
【００６３】
また、ネットワークプリンタ１２０とクライアントＰＣ１００とのネットワーク接続確立については、ＴＣＰ／ＩＰのプロトコルの規定によれば、ネットワークの接続が確立された時点（ステップＳ３５）で、接続確立要求を行なったネットワークプリンタ１２０のＩＰアドレスが、クライアントＰＣ１００に送信される。これは、パケットのＩＰヘッダに送信元のＩＰアドレスが含まれるからである。したがって、クライアントＰＣ１００では、ネットワークプリンタ１２０がクライアントＰＣ１００にネットワーク接続の要求を出し接続が完了した時点で、クライアントＰＣ１００でＩＰアドレスを取得するようにしてもよい。この場合には、ステップＳ３６の処理は不要となる。
【００６４】
また、本実施の形態においては、クライアントＰＣ１００が印刷ジョブを出力する印刷先ポートを、ＵＮＣを用いて指定するようにした。このＵＮＣは、サーバＰＣ１１０を特定する「Ｓｅｒｖｅｒ１」とそれに接続されたネットワークプリンタ１２０を特定する「ｐｒｉｎｔｅｒ２」とを組合せたものである。ネットワークプリンタ１２０を特定するためのデータとして、クライアントＰＣ１００からサーバＰＣ１１０に送信されるのは、「￥￥Ｓｅｒｖｅｒ１￥ｐｒｉｎｔｅｒ２」であってもよいし、「ｐｒｉｎｔｅｒ２」であってもよい。これは、プロトコルに依存する。いずれの場合であっても、ＵＮＣの「￥￥Ｓｅｒｖｅｒ１」を基にサーバＰＣ１１０のＩＰアドレスまたはＭＡＣアドレスが特定され、サーバＰＣ１１０にＵＮＣとして「￥￥Ｓｅｒｖｅｒ１￥ｐｒｉｎｔｅｒ２」または「ｐｒｉｎｔｅｒ２」が送信される。したがって、クライアントＰＣ１００からは、ＩＰアドレスまたはＭＡＣアドレスで特定されるサーバＰＣ１１０に対して、ネットワークプリンタ１２０を特定するためのＵＮＣ「￥￥Ｓｅｒｖｅｒ１￥ｐｒｉｎｔｅｒ２」または「ｐｒｉｎｔｅｒ２」と、クライアントＰＣ１００のＩＰアドレスおよびポート番号と、アドレス要求コマンドとが送信されることになる。なお、クライアントＰＣ１００からサーバＰＣ１１０に出力されるＵＮＣは、これらに限られるものではない。
【００６５】
以上説明したように、本実施の形態における印刷システムにおいては、クライアントＰＣ１００から出力されるアドレス要求コマンドは、印刷ジョブを出力する印刷ポートと同じ印刷ポートに出力されるため、印刷ジョブが送信される経路と同じ経路に送信される。このため、プリンタドライバプログラムの通信部分を改良する必要はない。
【００６６】
さらに、アドレス要求コマンドと共に、クライアントＰＣ１００のＩＰアドレスとポート番号とが送信されるため、ネットワークプリンタ１２０では、クライアントＰＣ１００のＩＰアドレスとポート番号が受信される。この結果、ネットワークプリンタ１２０からクライアントＰＣ１００との間でネットワーク接続を確立することが可能となる。そして、ネットワーク接続の確立により、ネットワークプリンタ１２０からクライアントＰＣ１００にネットワークプリンタ１２０のＩＰアドレスが送信されるため、クライアントＰＣ１００でネットワークプリンタ１２０のＩＰアドレスが取得される。その結果、クライアントＰＣ１００のユーザは、取得したネットワークプリンタ１２０のＩＰアドレスを用いて、クライアントＰＣ１００をネットワークプリンタ１２０とネットワーク接続を確立させることができ、ネットワークプリンタ１２０から種々の情報を取得することが可能となる。
【００６７】
また、クライアントＰＣ１００からはポート番号が出力され、そのポート番号でネットワークプリンタ１２０のＩＰアドレスを受信するため、ネットワークプリンタ１２０のＩＰアドレスを確実に受信することができる。
【００６８】
また、設定画面においてユーザがＵＩ部１０１を操作することにより、アドレス収得の実行を指示するための収得ボタン２０３を指示するだけで、ネットワークプリンタ１２０のＩＰアドレスが設定画面の領域２０２に表示されるため、ユーザは必要なときにネットワークプリンタのＩＰアドレスを知ることができる。
【００６９】
本発明は、次のように捉えることも可能である。
（１）  印刷装置に接続されたサーバにネットワークを介して接続されるクライアントで実行される制御プログラムであって、
前記印刷装置のネットワークアドレスを要求するためのアドレス要求コマンドと、前記クライアントのネットワークアドレスとを送信するためのデータを生成するステップと、
前記コマンドおよびデータと印刷ジョブとを前記サーバ経由で前記印刷装置に送信するステップと、
前記アドレス要求コマンドの送信に応答して、前記ネットワークを介して前記印刷装置から送られてくる前記印刷装置のネットワークアドレスを受信するステップとを含む、制御プログラム。
【００７０】
この発明に従えば、印刷ジョブを送信するのと同一経路でアドレス要求コマンドとクライアントのネットワークアドレスとが送信されるので、アドレス要求コマンドの送信に印刷ジョブを送信するステップを利用することができる。このため、制御プログラムの通信部分を改良する必要はない。
【００７１】
（２）  （１）の制御プログラムにおいて、前記ネットワークアドレスが取得されたことに応じて、前記取得されたネットワークアドレスを表示するステップをさらに含む。
【００７２】
この発明に従えば、ネットワークアドレスが取得されたことに応じて、取得されたネットワークアドレスが表示されるため、クライアントのユーザは、印刷装置のネットワークアドレスを容易に知ることができる。
【００７３】
（３）  （１）の制御プログラムにおいて、前記サーバ経由で前記印刷装置を特定するための識別情報（ＵＮＣ）を設定するステップをさらに含み、
前記送信ステップは、前記識別情報に基づいて前記サーバ経由で前記印刷装置に送信する。
【００７４】
（４）  ネットワークに接続され、サーバにより前記ネットワーク環境に提供される印刷装置であって
前記ネットワーク上で前記印刷装置に割当てられたネットワークアドレスを記憶する記憶手段と、
前記サーバからデータを入力する入力手段と、
前記入力されたデータが、印刷ジョブであるかアドレス要求コマンドであるかを判定する判定手段と、
前記判定手段によりアドレス要求コマンドと判定された場合、前記ネットワークを介して前記アドレス要求コマンドに含まれるネットワークアドレスで特定される装置との接続を確立する接続確立手段とを備え、
前記判定手段は、入力されたデータのヘッダ部に基づいて判定する、印刷装置。
【００７５】
（５）  請求項１の制御プログラムにおいて、
ネットワークアドレスはＩＰアドレスである。
【００７６】
（６）  ネットワークに接続されるコンピュータにおいて実行されるプリンタドライバプログラムであって、
サーバにより管理される印刷装置の指定を受付けるステップと、
当該コンピュータのＩＰアドレスを前記印刷装置宛で送信するステップと、
前記印刷装置から送信されてくるデータを受信し、受信したデータから印刷装置のＩＰアドレスを取得するステップとをコンピュータに実行させる、プリンタドライバプログラム。
【００７７】
（７）  （６）において、前記送信するステップは、当該プログラムを特定するポート番号をＩＰアドレスと一緒に送信する。
【００７８】
（８）  ネットワークに接続され、サーバによりネットワークに提供される印刷装置であって、
前記ネットワークにおいて印刷装置を特定するためのアドレスを記憶する記憶手段と、
前記サーバからのデータを受信する受信手段と、
受信したデータに印刷装置のアドレスの送信を要求するコマンドが含まれている場合に、受信データに含まれる送信元のアドレスを取得する取得手段と、
前記取得したアドレス宛に前記記憶手段に記憶されている印刷装置のアドレスを送信する送信手段とを備えた、印刷装置。
【００７９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図１】本発明の実施の形態の１つにおける印刷システムの全体概要を示す図である。
【図２】クライアントＰＣとネットワークプリンタとの機能を示す機能ブロック図である。
【図３】本実施の形態における印刷システムで実行される処理の流れを示すフローチャートである。
【図４】設定画面の一例を示す図である。
【符号の説明】
１００  クライアントＰＣ、１０１  ＵＩ部、１０２  全体制御部、１０３  Ｉ／Ｆ部、１０４  要求コマンド生成部、１０５  以降印刷ジョブ生成部、１０５  印刷ジョブ生成部、１０６  応答解析部、１０７  記録媒体、１１０  サーバＰＣ、１２０  ネットワークプリンタ、１２１  Ｉ／Ｆ部、１２２  データ解析部、１２３  印刷ジョブ処理部、１２４  要求コマンド処理部、１２５  アドレス記憶部、１３０  ネットワーク。
【図１】
2004302562.tif 000003
【図２】
2004302562.tif 000004
【図３】
2004302562.tif 000005
【図４】
2004302562.tif 000006