(57)【要約】【課題】  情報処理装置が、印刷装置の機器情報のキャッシュと最新機器情報とに整合性がなくても、印刷装置からの機器情報の取得にかかる時間を短縮できるようにする。【解決手段】  コンピュータ（情報処理装置）は、プリンタ（印刷装置）の機器情報のキャッシュ２４を構成する機器情報と機器情報に関する符号値を保存するＨＤＤを備え、プリンタドライバ３０の機器情報管理部３３が、双方向通信モジュール２３によりプリンタから符号値を受信すると、ＨＤＤ内符号値と比較し、一致しない場合、プリンタから所望の機器情報（最新機器情報の一部）を受信してＨＤＤ内機器情報に反映させ、反映機器情報に関する符号値を算出する。その符号値をＨＤＤ内符号値と比較し、一致しない場合、プリンタから所望の機器情報（最新機器情報の他の部分）を受信して再びＨＤＤ内機器情報に反映させ、反映機器情報に関する符号値を算出してＨＤＤ内符号値と再比較する。【選択図】        図４
2011039948.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置と印刷装置とを備え、前記情報処理装置と前記印刷装置とがネットワークを介して双方向通信を行う印刷システムであって、
前記情報処理装置に、
前記印刷装置の機器情報および該機器情報に関する符号値を記憶する記憶手段と、
前記印刷装置から符号値を受信する符号値受信手段と、
該符号値受信手段によって受信した符号値と前記記憶手段に記憶されている符号値とを比較する比較手段と、
該比較手段による比較の結果、前記符号値受信手段によって受信した符号値と前記記憶手段に記憶されている符号値とが一致しない場合に、前記印刷装置から所望の機器情報を受信する機器情報受信手段と、
該機器情報受信手段によって受信した所望の機器情報を前記記憶手段に記憶されている機器情報に反映させる反映手段と、
該反映手段によって反映された機器情報に関する符号値を算出する符号値算出手段とを設け、
前記比較手段は、前記符号値算出手段によって算出された符号値と前記記憶手段に記憶されている符号値とを比較する手段を有し、
前記機器情報受信手段は、前記比較手段による比較の結果、前記符号値算出手段によって算出された符号値と前記記憶手段に記憶されている符号値とが一致しない場合にも、前記印刷装置から所望の機器情報を受信する手段であり、
前記印刷装置に、
当該印刷装置の機器情報を記憶する記憶手段と、
前記機器情報に関する符号値を算出する符号値算出手段と、
該符号値算出手段によって算出された符号値を前記情報処理装置へ送信する符号値送信手段と、
前記情報処理装置が所望する機器情報を送信する機器情報送信手段とを設けたことを特徴とする印刷システム。
【請求項２】
請求項１に記載の印刷システムにおいて、
前記情報処理装置に、前記印刷装置から機器情報および該機器情報に関する符号値を受信する機器情報・符号値受信手段と、
該機器情報・符号値受信手段によって受信した前記印刷装置の機器情報および該機器情報に関する符号値が前記記憶手段に記憶される際、あるいは前記反映手段によって前記所望の機器情報が前記記憶手段に記憶されている機器情報に反映される際に、該機器情報の有効期限を生成する有効期限生成手段とを設け、
前記情報処理装置の前記機器情報・符号値受信手段は、前記有効期限が切れた場合に、前記印刷装置から機器情報および該機器情報に関する符号値を受信することを特徴とする印刷システム。
【請求項３】
前記情報処理装置の前記機器情報受信手段は、前記印刷装置から前記所望の機器情報を１項目のみ受信することを特徴とする請求項１又は２に記載の印刷システム。
【請求項４】
前記情報処理装置および前記印刷装置の前記符号値算出手段は、チェックサムのアルゴリズムを用いて、前記機器情報から前記符号値を算出する手段であることを特徴とする請求項１乃至３のいずれか一項に記載の印刷システム。
【請求項５】
印刷装置の機器情報および該機器情報に関する符号値を記憶する記憶手段を有する情報処理装置を制御するコンピュータに、前記印刷装置との間で双方向通信を行うことによって該印刷装置に印刷を実行させるプリンタドライバであって、
前記コンピュータに、
前記印刷装置から符号値を受信する符号値受信機能と、
該符号値受信機能によって受信した符号値と前記記憶手段に記憶されている符号値とを比較する比較機能と、
該比較機能による比較の結果、前記符号値受信機能によって受信した符号値と前記記憶手段に記憶されている符号値とが一致しない場合に、前記印刷装置から所望の機器情報を受信する機器情報受信機能と、
該機器情報受信機能によって受信した所望の機器情報を前記記憶手段に記憶されている機器情報に反映させる反映機能と、
該反映機能によって反映された機器情報に関する符号値を算出する符号値算出機能とを実現させるためのプリンタドライバであり、
前記比較機能は、前記符号値算出機能によって算出された符号値と前記記憶手段に記憶されている符号値とを比較する機能を有し、
前記機器情報受信機能は、前記比較機能による比較の結果、前記符号値算出機能によって算出された符号値と前記記憶手段に記憶されている符号値とが一致しない場合にも、前記印刷装置から所望の機器情報を受信する機能であることを特徴とするプリンタドライバ。
【請求項６】
請求項５に記載のプリンタドライバにおいて、
前記コンピュータに、前記印刷装置から機器情報および該機器情報に関する符号値を受信する機器情報・符号値受信機能と、
該機器情報・符号値受信機能によって受信した前記印刷装置の機器情報および該機器情報に関する符号値が前記記憶手段に記憶される際、あるいは前記反映機能によって前記所望の機器情報が前記記憶手段に記憶されている機器情報に反映される際に、該機器情報の有効期限を生成する有効期限生成機能をも実現させるためのプリンタドライバであり、
前記情報処理装置の前記機器情報・符号値受信機能は、前記有効期限が切れた場合に、前記印刷装置から機器情報および該機器情報に関する符号値を受信することを特徴とするプリンタドライバ。
【請求項７】
前記機器情報受信機能は、前記印刷装置から前記所望の機器情報を１項目のみ受信することを特徴とする請求項５又は６に記載のプリンタドライバ。
【請求項８】
前記符号値算出機能は、チェックサムのアルゴリズムを用いて、前記機器情報から前記符号値を算出することを特徴とする請求項５乃至７のいずれか一項に記載のプリンタドライバ。
【請求項９】
情報処理装置との間で双方向通信を行うことによって印刷を実行する印刷装置であって、
当該印刷装置の機器情報を記憶する記憶手段と、
前記機器情報に関する符号値を算出する符号値算出手段と、
該符号値算出手段によって算出された符号値を前記情報処理装置へ送信する符号値送信手段と、
前記情報処理装置が所望する機器情報を送信する機器情報送信手段とを設けたことを特徴とする印刷装置。
【請求項１０】
前記符号値算出手段は、チェックサムのアルゴリズムを用いて、前記機器情報から前記符号値を算出することを特徴とする請求項９に記載の印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プリンタ，デジタル複写機，デジタル複合機，ファクシミリ装置等の印刷装置（画像形成装置）とパーソナルコンピュータ等の情報処理装置とからなる印刷システム、上記情報処理装置を制御するコンピュータ（ＣＰＵ）に必要な機能（この発明に係わる機能）を実現させるためのプリンタドライバ、上記印刷装置に関する。
【背景技術】
【０００２】
上記のような情報処理装置がプリンタドライバを用いて印刷データをプリンタ等の印刷装置へ送信して印刷を行わせる印刷システムにおいて、情報処理装置が印刷装置との間で双方向通信を行い、印刷装置（機器）のオプション構成やステータス情報等の機器情報をプリンタドライバによって取得する際に、機器情報のキャッシュを利用することで双方向通信の時間を短縮する方法が既に知られている。
【０００３】
しかし、今までの機器情報のキャッシュを利用する方法では、そのキャッシュと最新の機器情報との間に整合性がないと判断した場合には、必要な機器情報全てを再取得しており、双方向通信時間を短縮できないという問題があった。
そこで、特許文献１に開示されている技術を利用することが考えられる。
特許文献１には、双方向通信の通信時間短縮の目的で、キャッシュを用いて双方向通信時間を短縮する構成が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載のものでも、上述した機器情報のキャッシュと最新の機器情報との間に整合性がないと判断した場合に、双方向通信時間を短縮できないという欠点は解消できていない。
この発明は、上記の点に鑑みてなされたものであり、情報処理装置が、印刷装置の機器情報のキャッシュと印刷装置の最新の機器情報との間に整合性がない場合でも、印刷装置からの機器情報の取得にかかる時間を短縮できるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
この発明は、上記の目的を達成するため、以下に示す印刷システム、それを構成する情報処理装置を制御するコンピュータに実行させるプリンタドライバ、上記印刷システムを構成する印刷装置を提供する。
この発明による印刷システムは、情報処理装置と印刷装置とを備え、上記情報処理装置と上記印刷装置とがネットワークを介して双方向通信を行う印刷システムであって、以下に示すようにしたことを特徴とする。
【０００６】
すなわち、上記情報処理装置に、上記印刷装置の機器情報および該機器情報に関する符号値を記憶する記憶手段と、上記印刷装置から符号値を受信する符号値受信手段と、該符号値受信手段によって受信した符号値と上記記憶手段に記憶されている符号値とを比較する比較手段と、該比較手段による比較の結果、上記符号値受信手段によって受信した符号値と上記記憶手段に記憶されている符号値とが一致しない場合に、上記印刷装置から所望の機器情報を受信する機器情報受信手段と、該機器情報受信手段によって受信した所望の機器情報を上記記憶手段に記憶されている機器情報に反映させる反映手段と、該反映手段によって反映された機器情報に関する符号値を算出する符号値算出手段とを設け、上記比較手段に、上記符号値算出手段によって算出された符号値と上記記憶手段に記憶されている符号値とを比較する手段を備え、上記機器情報受信手段を、上記比較手段による比較の結果、上記符号値算出手段によって算出された符号値と上記記憶手段に記憶されている符号値とが一致しない場合にも、上記印刷装置から所望の機器情報を受信する手段とし、上記印刷装置に、当該印刷装置の機器情報を記憶する記憶手段と、上記機器情報に関する符号値を算出する符号値算出手段と、該符号値算出手段によって算出された符号値を上記情報処理装置へ送信する符号値送信手段と、上記情報処理装置が所望する機器情報を送信する機器情報送信手段とを設けたものである。
【０００７】
なお、上記情報処理装置に、上記印刷装置から機器情報および該機器情報に関する符号値を受信する機器情報・符号値受信手段と、該機器情報・符号値受信手段によって受信した上記印刷装置の機器情報および該機器情報に関する符号値が上記記憶手段に記憶される際、あるいは上記反映手段によって上記所望の機器情報が上記記憶手段に記憶されている機器情報に反映される際に、該機器情報の有効期限を生成する有効期限生成手段とを設け、上記情報処理装置の上記機器情報・符号値受信手段が、上記有効期限が切れた場合に、上記印刷装置から機器情報および該機器情報に関する符号値を受信するとよい。
【０００８】
また、上記情報処理装置の上記機器情報受信手段が、上記印刷装置から上記所望の機器情報を１項目のみ受信するとよい。
さらに、上記情報処理装置および上記印刷装置の上記符号値算出手段を、チェックサムのアルゴリズムを用いて、上記機器情報から上記符号値を算出する手段とすればよい。
【０００９】
この発明によるプリンタドライバは、印刷装置の機器情報および該機器情報に関する符号値を記憶する記憶手段を有する情報処理装置を制御するコンピュータに、上記印刷装置との間で双方向通信を行うことによって該印刷装置に印刷を実行させるプリンタドライバであって、以下に示すようにしたことを特徴とする。
【００１０】
すなわち、上記コンピュータに、上記印刷装置から符号値を受信する符号値受信機能と、該符号値受信機能によって受信した符号値と上記記憶手段に記憶されている符号値とを比較する比較機能と、該比較機能による比較の結果、上記符号値受信機能によって受信した符号値と上記記憶手段に記憶されている符号値とが一致しない場合に、上記印刷装置から所望の機器情報を受信する機器情報受信機能と、該機器情報受信機能によって受信した所望の機器情報を上記記憶手段に記憶されている機器情報に反映させる反映機能と、該反映機能によって反映された機器情報に関する符号値を算出する符号値算出機能とを実現させるためのプリンタドライバであり、上記比較機能に、上記符号値算出機能によって算出された符号値と上記記憶手段に記憶されている符号値とを比較する機能を備え、上記機器情報受信機能を、上記比較機能による比較の結果、上記符号値算出機能によって算出された符号値と上記記憶手段に記憶されている符号値とが一致しない場合にも、上記印刷装置から所望の機器情報を受信する機能としたものである。
【００１１】
なお、上記コンピュータに、上記印刷装置から機器情報および該機器情報に関する符号値を受信する機器情報・符号値受信機能と、該機器情報・符号値受信機能によって受信した上記印刷装置の機器情報および該機器情報に関する符号値が上記記憶手段に記憶される際、あるいは上記反映機能によって上記所望の機器情報が上記記憶手段に記憶されている機器情報に反映される際に、該機器情報の有効期限を生成する有効期限生成機能をも実現させるためのプリンタドライバとし、上記情報処理装置の上記機器情報・符号値受信機能が、上記有効期限が切れた場合に、上記印刷装置から機器情報および該機器情報に関する符号値を受信すると良い。
【００１２】
また、上記機器情報受信機能が、上記印刷装置から上記所望の機器情報を１項目のみ受信するとよい。
さらに、上記符号値算出機能が、チェックサムのアルゴリズムを用いて、上記機器情報から上記符号値を算出するとよい。
【００１３】
この発明による印刷装置は、情報処理装置との間で双方向通信を行うことによって印刷を実行する印刷装置であって、当該印刷装置の機器情報を記憶する記憶手段と、上記機器情報に関する符号値を算出する符号値算出手段と、該符号値算出手段によって算出された符号値を上記情報処理装置へ送信する符号値送信手段と、上記情報処理装置が所望する機器情報を送信する機器情報送信手段とを設けたものである。
なお、上記符号値算出手段が、チェックサムのアルゴリズムを用いて、上記機器情報から上記符号値を算出するとよい。
【００１４】
この発明によれば、情報処理装置が、印刷装置の機器情報および該機器情報に関する符号値を記憶する記憶手段を備え、印刷装置から符号値を受信すると、その受信した符号値と記憶手段に記憶されている符号値とを比較し、その両符号値が一致しない場合に、印刷装置から所望の機器情報（最新の機器情報の一部分）を受信し、その受信した所望の機器情報を記憶手段に記憶されている機器情報に反映させ、その反映された機器情報に関する符号値を算出する。
【００１５】
その後、その算出した符号値と記憶手段に記憶されている符号値とを比較し、その両符号値が一致しない場合にも、印刷装置から所望の機器情報（最新の機器情報の他の部分）を受信することにより、再び印刷装置から受信した所望の機器情報を記憶手段に記憶されている機器情報に反映させ、その反映された機器情報に関する符号値を算出する。そして、その算出した符号値と記憶手段に記憶されている符号値とを再び比較し、その両符号値が一致しない場合には、その両符号値が一致するまで上述と同様の処理を繰り返し行う。
【００１６】
一方、上記印刷装置は、当該印刷装置の機器情報を記憶する記憶手段を備え、上記機器情報に関する符号値を算出し、その算出した符号値を情報処理装置へ送信したり、情報処理装置が所望する機器情報を送信したりする。
【発明の効果】
【００１７】
この発明によれば、情報処理装置が、印刷装置の機器情報のキャッシュ（記憶手段に記憶されている印刷装置の機器情報およびその機器情報に関する符号値に相当する）と印刷装置の最新の機器情報との間に整合性がない（両機器情報に関する符号値が一致しない）場合でも、印刷装置からの機器情報の取得にかかる時間を短縮することができる。
【図面の簡単な説明】
【００１８】
【図１】この発明の一実施形態であるプリンタシステムの構成例を示す図である。
【図２】同じくプリンタシステムの他の構成例を示す図である。
【図３】図１，図２のコンピュータのハードウェア構成例を示すブロック図である。
【図４】同じくコンピュータのソフトウェア構成例を示すブロック図である。
【図５】図１，図２のプリンタのハードウェア構成例を示すブロック図である。
【００１９】
【図６】図４のプリンタドライバにおいて実行する双方向通信を含む機器情報設定処理の一例を示すフロー図である。
【図７】図５に示したプリンタ１，２における誤り検出符号値生成処理の一例を示すフロー図である。
【図８】図６のステップＳ１２又は図７のステップＳ２２で実行される機器情報から誤り検出符号値を生成するアルゴリズムの一例を示すフロー図である。
【図９】機器情報のキャッシュとして保存されるデータのデータ構造の一例を示す図である。
【図１０】誤り検出符号値生成の対象とする機器情報の項目の一例を示す図である。
【００２０】
【図１１】機器情報のキャッシュとして保存されるデータの具体例を示す図である。
【図１２】図８に示したアルゴリズムと図１１に示した機器情報データのプリンタの機器情報を基に誤り検出符号値を生成する具体例を示す図である。
【図１３】図４のＵＩ部によって図３の表示部上に表示されるユーザが誤り検出符号値生成に用いる機器情報を選択する際に使用するドライバＵＩ画面の一例を示す図である。
【図１４】図６のステップＳ８，Ｓ１５において実行する機器情報の有効期限生成処理のサブルーチンの一例を示すフロー図である。
【図１５】機器情報の有効期限を生成する際のルールの一例を示す図である。
【００２１】
【図１６】誤り検出符号値生成に用いる機器情報の項目の情報と機器情報のキャッシュの有効期限の設定に関する値と有効期限の値との関係の一例を示す図である。
【図１７】図４のＵＩ部によって図３の表示部上に表示されるユーザが機器情報のキャッシュの有効期限を設定する際に使用するドライバＵＩ画面の一例を示す図である。
【図１８】図４のプリンタドライバにおいて実行する機器情報更新処理の一例を示すフロー図である。
【発明を実施するための形態】
【００２２】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
まず、この発明による情報処理装置および印刷装置を備えた印刷システムの実施形態であるプリンタシステムの異なる構成について、図１，図２を参照して説明する。
図１は、この発明による印刷システムの一実施形態であるプリンタシステムの構成例を示す図である。
【００２３】
このプリンタシステムにおいて、各コンピュータ１０，２０は、それぞれプリンタ１，２とＬＡＮ（ローカル・エリア・ネットワーク）等のネットワーク７を介して双方向通信可能に接続できる。この各コンピュータ１０，２０は、それぞれアプリケーションプログラム（以下「アプリケーションソフトウェア」，「アプリケーション」，又は「アプリ」ともいう）からプリンタドライバを通して接続されているプリンタ１又は２を印刷ジョブ（印刷データ）の出力先として選択し、その出力先へ印刷ジョブを送って印刷を行わせることができる。また、後述する機器情報を提供するプリンタ１，２からそれぞれ機器情報を取得することもできる。
【００２４】
この各コンピュータ１０，２０は、いずれもＰＣ（パーソナルコンピュータ）やワークステーション等の情報処理装置（上位装置）であり、クライアントコンピュータやプリントサーバであってもよい。また、プリントサーバシステムの形態の場合、クライアントコンピュータがプリントサーバのＷｅｂクライアント（ＷｅｂサーバやＷｅｂブラウザ等）であってもよい。
【００２５】
各プリンタ１，２はいずれも、コンピュータ１０又は２０からの印刷ジョブの印刷データを可視画像として用紙（他の印刷媒体でもよい）上に印刷する印刷装置であり、レーザプリンタ，ＬＥＤプリンタ，インクジェットプリンタ等のプリント機能のみを有するものである。なお、プリンタ１，２に代えて、プリント機能の他にコピー機能等の他の機能も有するデジタル複写機，デジタル複合機，ファクシミリ装置等の印刷装置（画像形成装置）を使用してもよい。また、各プリンタ１，２にプリントサーバの機能を備えてもよい。
【００２６】
図２は、この発明による印刷システムの一実施形態であるプリンタシステムの他の構成例を示す図であり、図１と対応する部分には同一符号を付している。
このプリンタシステムにおいては、コンピュータ１０が、プリンタ１と直接通信可能に接続できる。
【００２７】
次に、図１，図２のコンピュータ１０，２０のハードウェア構成について、図３を参照して説明する。
図３は、そのコンピュータ１０，２０のハードウェア構成例を示すブロック図である。
このコンピュータ１０，２０はそれぞれ、Ｉ／Ｏポート１１，ＣＰＵ１２，ＲＯＭ１３，ＲＡＭ１４，表示部１５，ＨＤＤ（ハードディスク装置）１６，入力部１７，および記憶媒体ドライブ１８を備えている。
【００２８】
Ｉ／Ｏポート１１は、通信手段であり、外部装置であるプリンタ１，２とそれぞれネットワーク７経由で双方向通信するためのネットワーク・インタフェース（以下「インタフェース」を「Ｉ／Ｆ」ともいう）である。なお、図２に示すように、コンピュータ１０がプリンタ１と直接通信するような場合、Ｉ／Ｏポート１１はＵＳＢ規格，ＩＥＥＥ１３９４規格のインタフェース（直接インタフェース）となる。
【００２９】
ＣＰＵ１２は、このコンピュータ全体を管理および制御する中央処理装置である。
ＲＯＭ１３は、ＣＰＵ１２が実行するブートプログラムを含む固定のプログラムおよびデータを格納している読み出し専用の記憶手段（メモリ）である。
ＲＡＭ１４は、ＣＰＵ１２が実行するプログラムを展開し、各種処理を行う際の作業領域として使用する読み書き可能な記憶手段である。
【００３０】
表示部１５は、各種のデータや情報等の設定を行うための操作画面等を表示するＣＲＴディスプレイ又はＬＣＤディスプレイ等の表示手段である。この表示部１５の表面にタッチパネルを備えていてもよい。
ＨＤＤ１６は、各種プログラムや、この発明に関わるプリンタ１，２の機器情報およびその機器情報に関する符号値、各種の設定内容を含む各種データを記憶する大容量記憶手段である。
入力部１７は、各種の操作情報の入力を受け付けるための入力手段（外部操作手段）であり、キーボードやマウス等のポインティングデバイスも使用することができる。
【００３１】
記憶媒体ドライブ１８は、記憶媒体１９に対する記録又は再生を行う記録再生手段である。
記憶媒体１９は、コンピュータ本体に対して脱着可能なＭＯ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＤＶＤ＋Ｒ，ＤＶＤ＋ＲＷ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ−ＲＡＭ等のコンピュータ読み取り可能な記録媒体であり、制御を実行するプログラム（ソフトウェア）が記録される。
なお、ＨＤＤ１６又は記憶媒体１９以外の記憶手段、例えば図示しないフラッシュＲＯＭやＥＥＰＲＯＭ等の不揮発性メモリを備え、そこにプリンタ１，２の機器情報およびその機器情報に関する符号値等の各種データを記憶することもできる。
【００３２】
このように構成されたコンピュータ１０，２０において、ＣＰＵ１２は、操作者（ユーザ）による入力部１７の操作により、記憶媒体ドライブ１８を介して記憶媒体１９からプログラムを読み出し、ＨＤＤ１６にインストールすることができる。
そして、電源投入時に、ＲＯＭ１３内のブートローダ（ブートプログラム）に従い、ＨＤＤ１６内のＯＳ（オペレーションシステム），アプリケーション，プリンタドライバ，およびユーザインタフェースを含む各種プログラムを読み出し、ＲＡＭ１４にインストールした後、その各種プログラムに従って動作し（各種プログラムを必要に応じて選択的に実行し）、表示部１５を含む装置を制御することにより、この発明に関わる符号値受信手段，比較手段，機器情報受信手段，反映手段，符号値算出手段，機器情報・符号値受信手段，および有効期限生成手段としての機能を実現することができる。
【００３３】
次に、図１，図２のコンピュータ１０，２０のソフトウェア構成について、図４を参照して説明する。なお、ソフトウェアを構成する各プログラムによる処理や制御は、実際には図３のＣＰＵ１２がプログラムに従って動作することによって実行するが、説明の都合上、プログラムが処理を実行するものとする。以後も、プログラムが何らかの処理や制御を行うものとして説明を行う場合には、同様とする。
【００３４】
図４は、図１，図２のコンピュータ１０，２０のソフトウェア構成例を示すブロック図である。但し、この図４ではＯＳ（オペレーティングシステム）の図示は省略している。
コンピュータ１０，２０では、ＯＳ、例えばマイクロソフト社のＷｉｎｄｏｗｓ（登録商標）が動作しており、必要に応じてアプリケーション２１，プリンタドライバ３０，スプーラ２２，又は双方向通信モジュール２３が動作する。
【００３５】
ここで、印刷制御は以下のようになる。
アプリケーション２１からＯＳに対して、例えば描画データを含む印刷指示（描画指示）が送られる。
ＯＳは、その印刷指示により、プリンタ１，２の中から選択された印刷に使用するプリンタに合わせてプリンタドライバ３０を選択し、例えば描画データを含む印刷コマンド（描画命令）を描画部３１へ渡す。
【００３６】
描画部３１は、その印刷コマンドを受け取ると、それを印刷に使用するプリンタに合わせたプリンタ記述言語（ＰＤＬ）に変換してスプーラ２２へ渡す。
スプーラ２２は、そのＰＤＬに変換された印刷データを受け取ると、それをネットワーク７経由で印刷に使用するプリンタへ送信する。
そのプリンタは、コンピュータ１０又は２０から送られてくる印刷データを受信すると、その印刷データ（ＰＤＬ）を解釈して画像データに変換し、可視画像として用紙に印刷する。
【００３７】
プリンタドライバ３０の設定は以下のようになる。
アプリケーション２１からＯＳに対して印刷設定指示が送られる。
ＯＳは、印刷設定（印刷条件の設定）をさせるために、プリンタドライバ３０のＵＩ（ユーザインタフェース）部３２を起動させる。
それによって、プリンタドライバ３０のＵＩ部３２は、表示部１５上に印刷設定のためのドライバＵＩ画面を表示する。
【００３８】
ユーザにより、そのドライバＵＩ画面を用いて設定された値は、ＯＳを介して描画部３１へ渡され、印刷制御時に設定された値によって動作する。
なお、印刷データは印刷先用の画像データ（ビットマップ状の印刷描画データ）を生成するためのＰＤＬ（プリンタ記述言語）以外に、テキストデータやイメージデータ等がある。
【００３９】
一方、コンピュータ１０，２０では、プリンタドライバ３０の動作中に、アプリケーション２１からプリンタドライバ３０内のＵＩ部３２に対して、プリンタ１，２の機器情報１０１を取得するための機器情報取得要求が発行される。
その機器情報取得要求を受けたＵＩ部３２は、機器情報管理部３３へ機器情報取得要求を渡す。
【００４０】
その機器情報取得要求を受けた機器情報管理部３３は、この発明の特徴となる処理である後述する誤り検出符号値の取得，比較，再生成を行う。また、機器情報取得要求を双方向通信モジュール２３へ渡す。
その機器情報取得要求を受けた双方向通信モジュール２３は、機器情報取得要求をネットワーク７経由でプリンタ１，２へ順次（同時でもよい）送信することにより、その各プリンタ１，２からそれぞれ送信される機器情報を取得（受信）し、それらをプリンタドライバ３０内の機器情報管理部３３へ渡す。
【００４１】
機器情報管理部３３は、双方向通信モジュール２３により取得した機器情報をＵＩ部３２へ渡すと共に、機器情報のキャッシュ２４としてＨＤＤ１６に記憶保存する。機器情報のキャッシュ２４には、機器情報以外に機器情報の誤り検出符号値やキャッシュの有効期限も含まれる。
【００４２】
次に、図１，図２のプリンタ１，２のハードウェア構成例について、図５を参照して具体的に説明する。
図５は、そのプリンタ１，２のハードウェア構成例を示すブロック図である。
【００４３】
プリンタ１，２（以下「機器」ともいう）はそれぞれ、オペレーションパネル５１，ＣＰＵ５２，ＡＳＩＣ（Application Specific Integrated Circuit）５３，ＲＡＭ５４，ＲＯＭ５５，ネットワークＩ／Ｆ５６，ＨＤＤ５７，およびエンジン部５８を備えている。
オペレーションパネル５１は、エンジン部５８や外部機器に対する動作要求（印刷要求，送信要求等）をユーザ操作によって入力するための各種の操作キー（操作スイッチ又は操作ボタンともいう）およびＬＣＤ又はＣＲＴ等の表示器を有する操作部である。
【００４４】
ＣＰＵ５２は、機器全体を管理および制御する中央処理装置である。
ＡＳＩＣ５３は、ＣＰＵ５２，ＲＡＭ５４，ＲＯＭ５５，ネットワークＩ／Ｆ５６，オペレーションパネル５１をそれぞれ接続するための複数のＩ／Ｆ等からなる多機能デバイスボードであり、ＣＰＵ５２の制御対象となるデバイスの共有化を図り、アーキテクチャの面からアプリケーション等の開発の高効率化を支援するＩＣである。このＡＳＩＣ５３は、ここでは画像処理用のハードウェア要素を備えている。
【００４５】
ＲＡＭ５４は、ＣＰＵ５２が実行するプログラムを展開し、各種処理を行う際の作業領域や、印刷データ（ＰＤＬ）をエンジン部５８によって用紙に可視画像を印刷するためのビットマップ状の印刷描画データ（ラスタ画像データ）に展開する際に使用する印刷描画メモリ等として使用する読み書き可能なメモリ（記憶手段）である。
ＲＯＭ５５は、ブートプログラムを含む固定のプログラムおよびデータなどを格納している読み出し専用の記憶手段である。
【００４６】
ネットワークＩ／Ｆ５６は、外部装置であるコンピュータ１０，２０とそれぞれネットワーク７経由で双方向通信するための通信手段である。
ＨＤＤ５７は、各種プログラムや、この発明に関わる当該プリンタの機器情報、各種の設定内容を含む各種データを記憶する大容量記憶手段である。
エンジン部５８は、印刷描画データを可視画像として用紙上に印刷する印刷機構部（画像形成手段）である。
なお、ＨＤＤ５７以外の記憶手段、例えば図示しないフラッシュＲＯＭやＥＥＰＲＯＭ等の不揮発性メモリを備え、そこに当該プリンタの機器情報等の各種データを記憶することもできる。
【００４７】
このように構成されたプリンタ１，２において、ＣＰＵ５２は、電源投入時に、自己にＡＳＩＣ５３を介して接続されているＲＯＭ５５内のブートローダに従い、ＨＤＤ５７内のＯＳおよびアプリケーションを含む各種プログラムを読み出し、ＲＡＭ５４にインストールした後、自己にＡＳＩＣ５３を介して接続されている各種デバイスの入出力を制御したり、エンジン部５８による印刷処理を実現するためのプリンタアプリを実行することもできる。このＣＰＵ５２はまた、各種プログラムを必要に応じて選択的に実行し、機器を制御することにより、この発明に関わる符号値算出手段，符号値送信手段，および機器情報送信手段としての機能を果たすこともできる。
【００４８】
次に、この実施形態のプリンタシステムにおけるこの発明に関わる制御の概要について簡単に説明する。
図３に示したコンピュータ１０，２０はそれぞれ、図４のプリンタドライバ３０で双方向通信によりプリンタ１の機器情報を取得する際に、まずプリンタ１において生成される機器情報の誤り検出符号値のみをプリンタ１から取得し、その誤り検出符号値とそれ以前にプリンタ１から取得して保存していた機器情報のキャッシュの誤り検出符号値とを比較する。
【００４９】
そして、その比較の結果、両誤り検出符号値が等しい場合には、機器情報が変更されていないと判断して、プリンタ１から機器情報を取得せずに、保存していた機器情報のキャッシュを用いる。
ここで、誤り検出符号とは、ＭＤ（Message Digest Algorithm）５，ＳＨＡ１等のハッシュ値やＣＲＣ（巡回冗長検査）チェックサムなど、データの変化を検出するものに相当する。
【００５０】
一方、上記比較の結果、両誤り検出符号値が異なる場合には、機器情報が変更されたと判断するが、その場合でも、プリンタ１から全ての機器情報を取得することはしない。必要な機器情報のみ取得する。このとき、取得する必要のある機器情報が複数項目ある場合には、その機器情報を１項目ずつ取得し、その取得毎に機器情報の誤り検出符号値を再計算する。
そして、再計算した誤り検出符号値とプリンタ１から取得した誤り検出符号値とを再比較し、その両誤り検出符号値が等しい場合には、それ以上機器情報を取得せずに、保存していた機器情報のキャッシュを用いる。
【００５１】
次に、図３に示したコンピュータ１０，２０内の図４のプリンタドライバ３０において実行する双方向通信を含む機器情報設定処理について、図６を参照して説明する。なお、説明の都合上、プリンタ１との双方向通信を含む機器情報設定処理についてのみ説明するが、プリンタ２との双方向通信を含む機器情報設定処理も同様である。
図６は、図４のプリンタドライバ３０において実行する双方向通信を含む機器情報設定処理の一例を示すフローチャートである。
【００５２】
プリンタドライバ３０内の機器情報管理部３３は、ＵＩ部３２から機器情報取得要求を受けると、図６に示す処理ルーチンをスタートし、まずステップＳ１で既にプリンタ１の機器情報のキャッシュがＨＤＤ１６に保存されているかどうかを判断する。
そして、その判断の結果、プリンタ１の機器情報のキャッシュがＨＤＤ１６に保存されていない場合には、ステップＳ７へ進む。
【００５３】
ステップＳ７では、機器情報取得要求を双方向通信モジュール２３へ渡すことにより、プリンタ１からその機器情報およびその機器情報の誤り検出符号値を取得する。このとき、機器情報取得要求を受けた双方向通信モジュール２３が、機器情報取得要求をネットワーク７経由でプリンタ１へ送信することにより、そのプリンタ１から送信される機器情報およびその機器情報の誤り検出符号値を取得し、それをプリンタドライバ３０内の機器情報管理部３３へ渡す。
機器情報管理部３３は、次のステップＳ８において、取得した機器情報の有効期限を生成し、ステップＳ９へ進む。
【００５４】
ステップＳ９では、取得した機器情報およびその機器情報の誤り検出符号値と、その機器情報の有効期限とをプリンタ１の機器情報のキャッシュとしてＨＤＤ１６に保存し、ステップＳ６へ進む。なお、機器情報の有効期限は、機器情報のキャッシュの有効期限となる。
ステップＳ６では、取得した機器情報を要求元に渡す。ここで要求元とは、プリンタドライバ３０やアプリケーション２１を指す。
【００５５】
ステップＳ１での判断の結果、プリンタ１の機器情報のキャッシュ（機器情報，その機器情報の誤り検出符号値，キャッシュの有効期限からなる）がＨＤＤ１６に保存されている場合には、ステップＳ２へ進み、そのキャッシュが有効期限内か否かを調べる。
そして、ＨＤＤ１６に保存されている機器情報のキャッシュが有効期限内でない場合、つまりそのキャッシュの有効期限が切れている場合には、ステップＳ７へ進んで上述と同様の処理を行う。
ＨＤＤ１６に保存されている機器情報のキャッシュが有効期限内である場合、つまりそのキャッシュの有効期限が切れていない場合には、ステップＳ３へ進む。
【００５６】
ステップＳ３では、機器情報の誤り検出符号値の取得要求（以下「誤り検出符号値取得要求」ともいう）を双方向通信モジュール２３へ渡すことにより、プリンタ１からその機器情報の誤り検出符号値のみを取得する。このとき、誤り検出符号値取得要求を受けた双方向通信モジュール２３が、誤り検出符号値取得要求をネットワーク７経由でプリンタ１へ送信することにより、そのプリンタ１から送信される機器情報の誤り検出符号値を取得し、それをプリンタドライバ３０内の機器情報管理部３３へ渡す。
【００５７】
次のステップＳ４では、今回取得したプリンタ１の機器情報の誤り検出符号値とＨＤＤ１６に保存されているプリンタ１の機器情報のキャッシュ内の機器情報の誤り検出符号値とを比較し、ステップＳ５へ進む。
ステップＳ５では、ステップＳ４での２つの誤り検出符号値の比較の結果、その各誤り検出符号値が同一であればキャッシュが有効であるとみなしてステップＳ６へ進むが、同一でなければステップＳ１０へ進む。
【００５８】
ステップＳ１０では、機器情報の１項目（最初は複数項目のうちの第１項目）の取得要求を示す機器情報取得要求を双方向通信モジュール２３へ渡すことにより、プリンタ１の機器情報の１項目のみを取得して、プリンタ１の機器情報のキャッシュに反映させる。つまり、取得したプリンタ１の機器情報の１項目を対応するキャッシュ内の機器情報の対応する項目に上書きする。このとき、機器情報取得要求を受けた双方向通信モジュール２３が、機器情報取得要求（機器情報の１項目の取得要求）をネットワーク７経由でプリンタ１へ送信することにより、そのプリンタ１から送信される機器情報の１項目を取得し、それをプリンタドライバ３０内の機器情報管理部３３へ渡す。
【００５９】
次のステップＳ１１では、必要な機器情報の全項目（全て）を取得したか否かを判断し、全項目を取得すればステップＳ６へ進むが、全項目を取得していなければステップＳ１２へ進む。
ステップＳ１２では、機器情報の誤り検出符号値の生成処理を行う。つまり、プリンタ１の機器情報のキャッシュから機器情報の誤り検出符号値を生成し直す（計算する）。
【００６０】
次のステップＳ１３では、生成し直した誤り検出符号値とプリンタ１の機器情報のキャッシュ内の機器情報の誤り検出符号値とを比較し、ステップＳ１４へ進む。
ステップＳ１４では、ステップＳ１３での２つの誤り検出符号値の比較の結果、その各誤り検出符号値が同一であればキャッシュが有効であるとみなしてステップＳ１５へ進むが、同一でなければステップＳ１０へ戻る。
【００６１】
ステップＳ１０へ戻ると、再び機器情報の１項目（複数項目のうちの第２項目）の取得要求を示す機器情報取得要求を双方向通信モジュール２３へ渡すことにより、プリンタ１の機器情報の１項目のみを取得して、プリンタ１の機器情報のキャッシュに反映させ、ステップＳ１１へ移行する。
ステップＳ１５では、プリンタ１の機器情報のキャッシュから機器情報の有効期限を生成し直し、ステップＳ６へ移行する。
【００６２】
次に、図５に示したプリンタ１，２における誤り検出符号値生成処理について、図７を参照して説明する。
図７は、その誤り検出符号値生成処理の一例を示すフローチャートである。
【００６３】
プリンタ１，２では、コンピュータ１０又は２０から図６のステップＳ３で送信された機器情報取得要求を受けた場合、あるいは図６のステップＳ７で送信された誤り検出符号値取得要求を受けた場合に、図７に示す処理ルーチンをスタートする。
そしてまず、ステップＳ２１では、コンピュータ１０又は２０から送られてくる機器情報取得要求又は誤り検出符号値取得要求を構成する誤り検出符号値生成の対象とする機器情報の項目を受信する。
【００６４】
次のステップＳ２２では、受信した機器情報の項目に基づいて、当該プリンタの機器情報の値から機器情報の誤り検出符号値を生成する。
次のステップＳ２３では、誤り検出符号値のみではなく、機器情報の取得要求もあるかないかを判断し、その取得要求もあればステップＳ２４へ進み、その取得要求がなければステップＳ２５へ進む。
【００６５】
ステップＳ２４では、生成した誤り検出符号値と当該プリンタの機器情報を要求元のコンピュータ１０又は２０へ送信する。
ステップＳ２５では、生成した誤り検出符号値のみを要求元のコンピュータ１０又は２０へ送信する。
【００６６】
次に、図６のステップＳ１２又は図７のステップＳ２２で実行される機器情報から誤り検出符号値を生成するアルゴリズムについて、図８を参照して説明する。
図８は、その誤り検出符号値を生成するアルゴリズムの一例を示すフローチャートである。この例では、チェックサムのアルゴリズムを用いる。
【００６７】
コンピュータ１０，２０およびプリンタ１，２ではそれぞれ、まずステップＳ３１で入力データとして機器情報をバイト配列（入力データ列）として用意する。
次のステップＳ３２では、出力結果のＸをゼロで初期化する。
次のステップＳ３３では、入力データ列が空でないかどうか確認（判断）する。
そして、その確認の結果、入力データ列が空でない場合には、ステップＳ３４で入力データ列から１バイト（Ｂｙｔｅ）読み込み、Ｙに代入する。
次のステップＳ３５では、ＸにＹを加算する（Ｘ＝Ｘ＋Ｙ）。
【００６８】
その後、ステップＳ３３に戻り、上記の加算処理を含むステップＳ３３〜Ｓ３５の処理を入力データ列が空になるまで繰り返す。
そして、ステップＳ３３での確認の結果、入力データ列が空になったら、ステップＳ３６へ移行し、Ｘを誤り検出符号の生成結果である誤り検出符号値とする。
ここでは、例としてチェックサムを用いた誤り検出符号値生成のアルゴリズムを示したが、他のアルゴリズムとして、ＣＲＣチェックサムや、ＭＤ５，ＳＨＡ１などのハッシュ関数を用いることもできる。また、誤り検出符号値以外の符号値を用いることもできる。
【００６９】
図９は、機器情報のキャッシュとして保存されるデータのデータ構造の一例を示す図である。
図３のＨＤＤ１６に保存される機器情報のキャッシュは、図６のステップＳ１の判定にも用いられる。この機器情報のキャッシュは、図４にキャッシュ２４として示したが、具体的には図９に示すように、プリンタを識別する識別情報であるプリンタＩＤと、機器情報と、キャッシュの有効期限と、機器情報の誤り検出符号値とによって構成されている。
【００７０】
図１０は、誤り検出符号値生成の対象とする機器情報の項目の一例を示す図である。
この機器情報は、図７のステップＳ２１でコンピュータ１０又は２０から送られる機器情報取得要求又は誤り検出符号値取得要求を構成する誤り検出符号値生成の対象とするプリンタ１，２別の機器情報の複数項目からなる。その機器情報の項目としては、例えば図１０に示すように、メモリサイズ，ＩＰアドレス，システムバージョンの他、給紙トレイＡの用紙サイズ，紙種，用紙残量、給紙トレイＢの用紙サイズ，紙種，用紙残量、およびオプション機器（フィニッシャ等）Ａ，Ｂがある。この例では、機器情報の○が付いている項目のみ誤り検出符号値生成に用いられる。
【００７１】
図１１は、機器情報のキャッシュとして保存されるデータの具体例を示す図である。
この例では、プリンタＩＤとして、プリンタ名（プリンタ１，２）が記載されている。
機器情報としては、プリンタ１，２のトレイ情報やオプション情報が記載されている。
キャッシュ（機器情報）の有効期限としては、時間単位の値が記載されている。
誤り検出符号値は、機器情報の値と、図１０に示した誤り検出符号値生成の対象とする機器情報の項目とを基に、図８に示したアルゴリズムを用いて生成される値である。
【００７２】
図１２は、図８に示したアルゴリズムと図１１に示した機器情報データのプリンタ１の機器情報を基に誤り検出符号値を生成する具体例を示す図である。
誤り検出符号値を生成する場合、プリンタ１の機器情報を表の上から順にバイト配列に代入していく。これによって得られたバイト配列の値を全て加算した値が誤り検出符号値となる。
【００７３】
図１２の例では、（ａ）に示すバイト配列の文字をアスキーコードの数値で表すと、（ｂ）に示す配列となる。
そして、そのバイト配列を入力データとして、図８に示したアルゴリズムによって計算を行うと、誤り検出符号値Ｘは、
Ｘ＝５０＋５３＋５４＋４９＋５７＋・・・＋４９＋５０＋４８
＝３６３９
となる。
【００７４】
次に、図４のＵＩ部３２によって図３の表示部１５上に表示されるユーザが誤り検出符号値生成に用いる機器情報を選択する際に使用するドライバＵＩ画面について、図１３を参照して説明する。
【００７５】
図１３は、その誤り検出符号値生成に用いる機器情報を選択する際に使用するドライバＵＩ画面の一例を示す図である。
このドライバＵＩ画面は、ユーザが誤り検出符号値生成に用いる機器情報を選択する際に使用する画面であり、機器情報項目選択部２０１に対するユーザ操作により、誤り検出符号値生成の対象とする機器情報項目を変更可能に選択することができる。
【００７６】
次に、図６のステップＳ８，Ｓ１５において実行する機器情報の有効期限（機器情報のキャッシュの有効期限）の生成処理について、図１４を参照して説明する。
図１４は、その機器情報の有効期限生成処理のサブルーチンの一例を示すフローチャートである。
【００７７】
プリンタドライバ３０内の機器情報管理部３３は、まずステップＳ４１で有効期限の設定が「する」になっているか「しない」になっているかを調べ、「する」になっていればステップＳ４２へ、「しない」になっていればステップＳ４４へそれぞれ進む。
ステップＳ４２では、有効期限の設定方法を調べ、その設定方法が「Ａｕｔｏ（自動）」になっていればステップＳ４３へ、そうでなければステップＳ４５へそれぞれ進む。
【００７８】
ステップＳ４３では、誤り検出符号値生成に用いる機器情報の項目の情報と、有効期限生成のルールとに従い、有効期限を生成する。
ステップＳ４４では、有効期限を「なし」に設定する。
ステップＳ４５では、有効期限としてユーザ操作（Ｍａｎｕａｌ）によって設定された有効期限を機器情報の有効期限とする。
【００７９】
図１５は、機器情報の有効期限を生成する際のルールの一例を示す図である。
機器情報管理部３３は、有効期限設定方法が「Ａｕｔｏ」の場合に、図１４のステップＳ４３で図１５に示したルールを基に有効期限を生成する。このとき、ルールをＮｏ．１から順に調べていき、誤り検出符号値生成の対象となる機器情報の項目がルールと一致すれば、そのルールに対応する有効期限を使用する。
【００８０】
図１６は、誤り検出符号値生成に用いる機器情報の項目の情報と、機器情報のキャッシュの有効期限の設定に関する値と、有効期限の値との関係の一例を示す図である。なお、ここでは、ネットワーク７には、プリンタ１，２の他に、図示しないプリンタ３，４，５が接続されているものとする。
【００８１】
機器情報管理部３３は、誤り検出符号値生成の対象となる項目と有効期限設定方法の値とを基に、有効期限を決定する。例えば、プリンタ３では有効期限設定方法が「しない」となっているので、図１４のフローチャートに従い、ステップＳ４４で有効期限を「なし」に設定する。また、プリンタ４では、有効期限設定方法が「Ａｕｔｏ」となっているので、ステップＳ４３で機器情報の項目の値（情報）と、図１５に示したルールとを基に、有効期限を「２４時間」に設定する。
【００８２】
次に、図４のＵＩ部３２によって図３の表示部１５上に表示されるユーザが機器情報のキャッシュの有効期限を設定する際に使用するドライバＵＩ画面について、図１７を参照して説明する。
図１７は、その機器情報のキャッシュの有効期限を設定する際に使用するドライバＵＩ画面の一例を示す図である。
【００８３】
このドライバＵＩ画面は、ユーザが機器情報のキャッシュの有効期限を設定する際に使用する画面であり、有効期限設定状態選択部３０１に対するユーザ操作により、有効期限の設定を「する」か「しない」かの選択を行う。そして、有効期限の設定を「する」にした場合には、更に有効期限設定方法選択部３０２に対するユーザ操作により、有効期限の設定方法を「自動」か「手動」かの選択を行う。「手動」を選択した場合は、更に有効期限入力部３０３に対するユーザ操作により、有効期限となる時間を入力設定する。
【００８４】
次に、図３に示したコンピュータ１０，２０内の図４のプリンタドライバ３０において実行するプリンタ１との双方向通信を含む機器情報更新処理について、図１８を参照して説明する。なお、説明の都合上、プリンタ１との双方向通信を含む機器情報更新処理についてのみ説明するが、プリンタ２との双方向通信を含む機器情報更新処理も同様である。
図１８は、図４のプリンタドライバ３０において実行する機器情報更新処理の一例を示すフローチャートである。
【００８５】
プリンタドライバ３０内の機器情報管理部３３は、ＵＩ部３２から機器情報更新要求を受けると、図１８に示す処理ルーチンをスタートし、まずステップＳ５１でユーザが印刷設定を変更するためのドライバＵＩ画面を表示部１５上に表示する。このドライバＵＩ画面に対するユーザ操作により、印刷設定を変更する際に、選択された項目のみ機器情報を更新することができる。
【００８６】
ここで、機器情報を全てプリンタ１から取得することをせずに、ステップＳ５２で既にプリンタ１の機器情報のキャッシュがＨＤＤ１６に保存されているかどうかを判断する。
そして、その判断の結果、機器情報のキャッシュがＨＤＤ１６に保存していない場合には、ステップＳ５６でプリンタ１からその機器情報およびその機器情報の誤り検出符号値を取得する。この取得方法は、図６のステップＳ７と同様である。
次のステップＳ５７では、取得した機器情報およびその機器情報の誤り検出符号値をプリンタ１の機器情報のキャッシュとしてＨＤＤ１６に保存する。
【００８７】
ステップＳ５２での判断の結果、プリンタ１の機器情報のキャッシュがＨＤＤ１６に保存されている場合には、ステップＳ５３へ進む。
ステップＳ５３では、プリンタ１からその機器情報の誤り検出符号値のみを取得する。この取得方法は、図６のステップＳ３と同様である。
次のステップＳ５４で、今回取得したプリンタ１の機器情報の誤り検出符号値とＨＤＤ１６に保存されているプリンタ１の機器情報のキャッシュ内の機器情報の誤り検出符号値とを比較し、ステップＳ５５へ進む。
【００８８】
ステップＳ５５では、ステップＳ５４での２つの誤り検出符号値の比較の結果、その各誤り検出符号値が同一であれば、キャッシュを更新しなくてもよいので、そのまま処理を終了する。２つの誤り検出符号値が異なる場合には、ステップＳ５８へ移行する。
ステップＳ５８では、ドライバＵＩ画面に対するユーザ操作により、機器情報の項目を選択する。
【００８９】
次のステップＳ５９では、機器情報の項目が選択されると、プリンタ１からユーザ操作によって選択した項目の機器情報のみを取得する。
そして、ステップＳ６０でその取得した機器情報で対応するキャッシュを更新する。つまり、取得したプリンタ１の機器情報（選択項目）を対応するキャッシュ内の機器情報の対応する項目に上書きする。
【００９０】
このように、コンピュータ（情報処理装置）が、プリンタ（印刷装置）の機器情報のキャッシュを構成する機器情報およびその機器情報に関する符号値を保存する記憶手段（ＨＤＤ等）を備え、プリンタから符号値を受信すると、その受信した符号値と記憶手段に記憶されている符号値とを比較し、その両符号値が一致しない場合に、プリンタから所望の機器情報（最新の機器情報の一部分）を受信し、その受信した所望の機器情報を記憶手段に記憶されている機器情報に反映させ、その反映された機器情報に関する符号値を算出する。
【００９１】
その後、その算出した符号値と記憶手段に記憶されている符号値とを比較し、その両符号値が一致しない場合にも、プリンタから所望の機器情報（最新の機器情報の他の部分）を受信することにより、再びプリンタから受信した所望の機器情報を記憶手段に記憶されている機器情報に反映させ、その反映された機器情報に関する符号値を算出する。そして、その算出した符号値と記憶手段に記憶されている符号値とを再び比較し、その両符号値が一致しない場合には、その両符号値が一致するまで上述と同様の処理を繰り返し行う。
【００９２】
一方、プリンタは、自己の機器情報を記憶する記憶手段（ＨＤＤ等）を備え、その機器情報に関する符号値を算出し、その算出した符号値をコンピュータへ送信したり、コンピュータが所望する機器情報を送信したりする。
したがって、コンピュータが、プリンタの機器情報のキャッシュ（記憶手段に記憶されている印刷装置の機器情報およびその機器情報に関する符号値に相当する）とプリンタの最新の機器情報との間に整合性がない（両機器情報に関する符号値が一致しない）場合でも、プリンタからの機器情報の取得にかかる時間を短縮することができる。
【００９３】
また、コンピュータが、プリンタから機器情報およびその機器情報に関する符号値を受信し、その受信したプリンタの機器情報およびその機器情報に関する符号値を記憶手段に記憶する際、あるいは所望の機器情報を記憶手段に記憶されている機器情報に反映させる際に、その機器情報の有効期限を生成し、その生成した有効期限が切れた場合に、プリンタから機器情報およびその機器情報に関する符号値を再び受信することにより、いつでもプリンタに印刷データを送って印刷を行わせることができる。
【００９４】
さらに、コンピュータが、プリンタから所望の機器情報を１項目のみ受信することにより、プリンタからの機器情報の取得にかかる時間を更に短縮することができる。
さらにまた、コンピュータおよびプリンタが、チェックサムのアルゴリズムを用いて機器情報から符号値の算出を行うことにより、その算出を容易に行うことができる。
【００９５】
〔この発明に関わるプログラム〕
このプログラムは、情報処理装置を制御するコンピュータ（ＣＰＵ）に、この発明に関わる符号値受信手段，比較手段，機器情報受信手段，反映手段，符号値算出手段，機器情報・符号値受信手段，および有効期限生成手段としての機能を実現させるためのプログラム（プリンタドライバ）と、印刷装置を制御するＣＰＵに、この発明に関わる符号値算出手段，符号値送信手段，および機器情報送信手段としての機能を実現させるためのプログラムとからなり、このようなプログラムをＣＰＵに実行させることにより、上述したような作用効果を得ることができる。
【００９６】
このようなプログラムは、はじめから情報処理装置および印刷装置に備えるＲＯＭ、あるいは不揮発性メモリ（フラッシュＲＯＭ，ＥＥＰＲＯＭ等）、あるいはＨＤＤ（ハードディスク装置）などの記憶手段に格納しておいてもよいが、記録媒体であるＣＤ−ＲＯＭ、あるいはメモリカード，フレキシブルディスク，ＭＯ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＤＶＤ＋Ｒ，ＤＶＤ＋ＲＷ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，又はＤＶＤ−ＲＡＭ等の不揮発性記録媒体（メモリ）に記録して提供することもできる。それらの記録媒体に記録されたプログラムを情報処理装置および印刷装置にインストールしてＣＰＵに実行させるか、ＣＰＵにそれらの記録媒体からこのプログラムを読み出して実行させることにより、上述した各手順を実行させることができる。
さらに、ネットワークに接続され、プログラムを記録した記録媒体を備える外部機器あるいはプログラムを記憶手段に記憶した外部機器からダウンロードして実行させることも可能である。
【産業上の利用可能性】
【００９７】
以上の説明から明らかなように、この発明によれば、情報処理装置が、印刷装置の機器情報のキャッシュと印刷装置の最新の機器情報との間に整合性がない場合でも、印刷装置からの機器情報の取得にかかる時間を短縮することができる。したがって、低通信コストの情報処理装置，印刷装置，および印刷システムを提供することができる。
【符号の説明】
【００９８】
１〜５：プリンタ    ７：ネットワーク    １０，２０：コンピュータ
１１：Ｉ／Ｏポート    １２：ＣＰＵ    １３：ＲＯＭ    １４：ＲＡＭ
１５：表示部    １６：ＨＤＤ    １７：入力部    １８：記憶媒体ドライブ
１９：記憶媒体    ２１：アプリケーション    ２２：：スプーラ
２３：双方向通信モジュール    ２４：機器情報のキャッシュ
３０：プリンタドライバ    ３１：描画部    ３２：ＵＩ部    ３３：機器情報管理部
１０１：機器情報
【先行技術文献】
【特許文献】
【００９９】
【特許文献１】特開２００２−１２０４１７号公報
【図１】
2011039948.tif 000003
【図２】
2011039948.tif 000004
【図３】
2011039948.tif 000005
【図４】
2011039948.tif 000006
【図５】
2011039948.tif 000007
【図６】
2011039948.tif 000008
【図７】
2011039948.tif 000009
【図８】
2011039948.tif 000010
【図９】
2011039948.tif 000011
【図１０】
2011039948.tif 000012
【図１１】
2011039948.tif 000013
【図１２】
2011039948.tif 000014
【図１３】
2011039948.tif 000015
【図１４】
2011039948.tif 000016
【図１５】
2011039948.tif 000017
【図１６】
2011039948.tif 000018
【図１７】
2011039948.tif 000019
【図１８】
2011039948.tif 000020