(57)【要約】【課題】プリンタユーティリティがプリンタドライバとは別体の印刷システムで、印刷中のプリンタのインクやバッテリの残量等を確認する。【解決手段】プリンタユーティリティ０６は、インク残量表示の指示を受けると、選択されたプリンタとのインターフェースがビジーか判定する。ビジーでなければそのインターフェースを用いてステータスを取得し、そこに含まれるインク残量を表示する。ビジーであれば、プリンタステータス格納部０５に、当該プリンタの直近のステータスが保存されていればそれを読んで、インク残量を表示する。保存されていなければ、プリンタユーティリティ情報格納部０７に、当該プリンタの直近のインク残量が保存されていればそれを読んで表示する。【選択図】図１
2008015948.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置からのステータスを取得できるプリンタドライバが稼働する情報処理装置に設けられた、前記印刷装置からのステータスを取得する機能を備えたプリンタユーティリティ手段による制御方法であって、
前記印刷装置からステータスを取得するためのインタフェースの状態を判定する判定工程と、
前記判定工程において前記インタフェースの状態が占有状態でなければ、前記インタフェースを介して前記印刷装置のステータスを取得し、
前記判定工程において前記インタフェースの状態が占有状態であれば、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得する取得工程とを有することを特徴とする制御方法。
【請求項２】
前記取得工程は、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得できない場合に、自身により以前に取得し格納した前記印刷装置のステータスを取得することを特徴とする請求項１に記載の制御方法。
【請求項３】
前記判定工程において前記インタフェースの状態が占有状態である場合、前記取得工程は、インタフェースの種類に従い、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得するか否かを切り分けることを特徴とする請求項１又は２に記載の制御方法。
【請求項４】
前記取得工程は、ネットワークインタフェースの場合には前記印刷装置からのステータスを取得し、ローカルインタフェースの場合には、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得することを特徴とする請求項３に記載の制御方法。
【請求項５】
前記プリンタドライバは、インタフェースを一意に特定可能なインタフェース識別子と印刷装置から取得したステータスとを対応付けて格納し、前記取得工程は、前記インタフェース識別子に基づき、格納されたステータスを検索することを特徴とする請求項１乃至４の何れかに記載の制御方法。
【請求項６】
印刷装置からのステータスを取得できるプリンタドライバが稼働する情報処理装置であって、
前記印刷装置からステータスを取得するためのインタフェースの状態を判定する判定手段と、
前記判定手段において前記インタフェースの状態が占有状態でなければ、前記インタフェースを介して前記印刷装置のステータスを取得し、
前記判定手段において前記インタフェースの状態が占有状態であれば、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得する取得手段を有することを特徴とする情報処理装置。
【請求項７】
前記取得手段は、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得できない場合に、自身により以前に取得し格納した前記印刷装置のステータスを取得することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記判定手段において前記インタフェースの状態が占有状態である場合、前記取得手段は、インタフェースの種類に従い、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得するか否かを切り分けることを特徴とする請求項６又は７に記載の情報処理装置。
【請求項９】
前記取得手段は、ネットワークインタフェースの場合には前記印刷装置からのステータスを取得し、ローカルインタフェースの場合には、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記プリンタドライバは、インタフェースを一意に特定可能なインタフェース識別子と印刷装置から取得したステータスとを対応付けて格納し、前記取得手段は、前記インタフェース識別子に基づき、格納されたステータスを検索することを特徴とする請求項６乃至９の何れかに記載の情報処理装置。
【請求項１１】
請求項６乃至１０のいずれか１項に記載の情報処理装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷システムに関し、特に印刷装置の状態を取得する仕組みに関する。
【背景技術】
【０００２】
従来、ホストコンピュータ上に、印刷を制御するプリンタドライバと、プリンタのメンテナンスを制御するプリンタユーティリティとを組み込んだ印刷システムが知られている。このような印刷システムでは、ユーザはプリンタドライバによって印刷データを生成してプリンタに送信をする。一方、例えばインクジェットプリンタのヘッドのクリーニングや位置の調整などのメンテナンスをしたり、搭載されたインクやバッテリの残量、プリンタの動作モードなどプリンタの各種状態を確認する、プリンタユーティリティが知られている（特許文献１）。プリンタユーティリティはホストコンピュータで実行される。
【０００３】
このようなプリンタドライバとプリンタユーティリティを備えた印刷システムでは、プリンタユーティリティがプリンタドライバと連動して組み込まれる場合とそうでない場合とがある。例えば、Ｍａｃｉｎｔｏｓｈ（登録商標）等の、特定のオペレーティングシステムでは、プリンタユーティリティとプリンタドライバとが別の単体のモジュールとしてホストコンピュータ上に組み込まれている。この場合には、ユーザがプリンタユーティリティを起動して所望の機能を選択すると、プリンタユーティリティはプリンタと直接データの送受信を行い、各種処理を実行する。
【特許文献１】特開平１０−３０１７２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
プリンタユーティリティとプリンタドライバとが別のモジュールとしてホストコンピュータに組み込まれる場合、プリンタドライバが印刷処理を開始するとプリンタのインタフェースをオープンしてプリンタとデータの送受信を行う。印刷処理が完了するとインタフェースをクローズする。インタフェースがオープンされてからクローズされるまでの間、インタフェースはプリンタドライバによって占有された状態になり、他のプロセスがプリンタにアクセスすることはできない。よって、プリンタドライバが印刷処理を実行しているときにプリンタユーティリティはプリンタの状態を取得できない。このため、ユーザは印刷中にプリンタに搭載されたインクやバッテリの残量、プリンタの動作モードを確認できない。
【０００５】
本発明は上記問題点に鑑みてなされたもので、プリンタドライバが印刷処理を実行しているときでも、プリンタユーティリティ手段によってプリンタの状態をより確実に確認できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために本発明は以下のような構成を備える。すなわち、印刷装置からのステータスを取得できるプリンタドライバが稼働する情報処理装置に設けられた、前記印刷装置からのステータスを取得する機能を備えたプリンタユーティリティ手段による制御方法であって、
前記印刷装置からステータスを取得するためのインタフェースの状態を判定する判定工程と、
前記判定工程において前記インタフェースの状態が占有状態でなければ、前記インタフェースを介して前記印刷装置のステータスを取得し、
前記判定工程において前記インタフェースの状態が占有状態であれば、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得する取得工程とを有する。
【発明の効果】
【０００７】
本発明によれば、プリンタドライバが印刷中のときでも、プリンタユーティリティによってプリンタの状態をより確実に確認できる。
【発明を実施するための最良の形態】
【０００８】
［第１実施形態］
本発明を実現する第１の実施形態を図に従って詳細に説明する。図１は、本発明の実施の一形態に係る印刷システムの構成を示す図である。図１において、データ処理装置０１はプリンタの制御を行う。ここではパーソナルコンピュータ（以下、ＰＣと略す）であり、オペレーティングシステムとしてＭａｃＯＳ（登録商標）Ｘを想定している。オペレーティングシステムは図１には示していないが、ＰＣ０１の資源、たとえばＰＣ０１内の各ブロックはオペレーティングシステムにより管理されている。ここで、ＰＣ０１は一般的な情報処理装置が備えるハードウェア構成を有している。具体的には、所謂、ＣＰＵ、ＲＯＭ、ハードディスク、ＲＡＭ，各種デバイスコントローラを備える。ＣＰＵは、ＲＯＭのプログラム用ＲＯＭに記憶された、或いはハードディスクからＲＡＭにロードされたＯＳやアプリケーション等のプログラムを実行する。後述する各フローチャートの処理はこのプログラムの実行により実現できる。また、ＲＡＭは、ＣＰＵの主メモリ、ワークエリア等としても機能する。また、キーボードや、ＣＲＴディスプレイや、各種データを記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）等におけるデータアクセスを制御するディスクコントローラ（ＤＫＣ）等も備える。また、接続されたプリンタとの間の信号の交換を制御する通信制御部等も備える。
【０００９】
ＰＣ０１は、アプリケーション０２、プリンタドライバ０３、Ｉ／Ｆ（インタフェース）制御部０４、プリンタステータス格納部０５、プリンタユーティリティ０６、プリンタユーティリティ情報格納部０７によって構成される。ユーザがアプリケーションで作成したデータの印刷を要求すると、プリンタドライバはアプリケーションで作成されたデータを受け取り、印刷データに変換した後、Ｉ／Ｆ制御部を経てプリンタに送信する。その後、プリンタが印刷処理を完了するまでプリンタの状態を監視する。この間、プリンタドライバ０３はＩ／Ｆ制御部０４を経てプリンタから取得したステータスを、プリンタステータス格納部０５に定期的に保存する。一方、プリンタユーティリティ０６はユーザからの要求に応じて、制御コマンドをＩ／Ｆ制御部０４を経てプリンタに送信する。またプリンタユーティリティ０６は、Ｉ／Ｆ制御部０４を経てプリンタから取得したステータスに基づきプリンタの状態を表示する。プリンタユーティリティ０６は必要に応じて各種処理の実行後にプリンタから取得したステータスに基づく情報を自身が管理するプリンタユーティリティ情報格納部０７に保存する。
【００１０】
ＰＣ０１はコンピュータであるから、ＣＰＵ、メモリ、ファイルストレージ、ディスプレイ及びキーボード等のヒューマンインターフェースを備えている。プリンタドライバ０３やプリンタユーティリティ０６は、いずれもファイルストレージに格納され、メモリに展開されてＣＰＵにより実行されるプログラムである。
【００１１】
図１中の通信インタフェース１０、１１、１２、１３は、各々ＰＣ０１とプリンタ２０、２５，３０、３５とを接続する。ここでは、通信インタフェース１０，１１，１２はローカルインタフェースであるところのＵＳＢ（Ｕｎｉｖｅｒｓａｌ Ｓｅｒｉａｌ Ｂｕｓ）を想定している。また、通信インタフェース１３はイーサネット（登録商標）等のネットワークインタフェースも想定している。また、無線通信としてＩＥＥＥ８０２．１１等も想定している。またＦｉｒｅＷｉｒｅ（登録商標）も利用できる。また、プリンタの種類及び接続台数については特に問わない。ここでは同じモデル名称のインクジェットプリンタが２台ずつあり、プリンタＡは２台ともＵＳＢで、プリンタＢは各々ＵＳＢとイーサネット（登録商標）でＰＣに接続された環境を想定している。個々のプリンタはＩ／Ｆ制御部２１、印刷制御部２２、印刷部２３によって構成される。プリンタはＩ／Ｆ制御部２１を経て、印刷データ及び制御コマンドの受信やプリンタのステータスの送信などを行う。印刷制御部２２は、ＰＣ０１から送信された印刷データ及び制御コマンドに基づき印刷部２３を制御する。
【００１２】
＜プリンタドライバによる印刷処理＞
図２は、印刷時のプリンタドライバ０３の処理の流れを示す。Ｓ１０１にて、印刷を行わせるプリンタとのインタフェースのオープンを試みる。
【００１３】
Ｓ１０２において、インタフェースがビジー状態でオープン処理を失敗したか否かを判定する。ビジー状態でオープンできなかったと判定すると、一定時間待機した後（Ｓ１０３）、Ｓ１０１に戻りインタフェースのオープンをリトライする。Ｓ１０２において、インタフェースがビジー状態でなく、オープンできたと判断すると、Ｓ１０４に進む。
【００１４】
インタフェースがオープンされると、クローズされるまでそのインターフェースはプリンタドライバ０３による占有状態になり、他のソフトウエアはオープンすることはできない。例えば、この専有状態で他のプロセスが当該インタフェースのオープンを試みると、インターフェースがビジー状態であることを示す値が返却される。
【００１５】
Ｓ１０４では、プリンタに対して返却ステータスを指定するコマンドを送信する。次にＳ１０５で、アプリケーション０２が印刷を要求したデータをオペレーティングシステムから取得する。そして、Ｓ１０６において、印刷要求データがあると判断すると、取得したデータに基づき印刷データを生成する（Ｓ１０７）。そして、プリンタに送信すると（Ｓ１０８）、Ｓ１０９に進む。一方Ｓ１０６において印刷要求データが無いと判断するとＳ１０９に進む。
【００１６】
Ｓ１０９では、プリンタからステータスを取得する。Ｓ１１０では前回プリンタから取得して保存しておいたステータスを、プリンタステータス格納部０５から検索する。プリンタドライバ０３は、プリンタのモデル名称、通信インタフェース、プリンタ固有の値（シリアル番号等）に基づき、プリンタステータス格納部０５の中から、検索条件（キー）に該当するステータスを検索する。検索条件とは、ステータスに関連づけて保存されているプリンタのモデル名称、通信インタフェース、プリンタ固有の値が、ステップＳ１０１でオープンしたインターフェースにより接続されたプリンタのそれら値と一致することである。検索方法の詳細については後述する。
【００１７】
Ｓ１１１において、検索条件に該当するステータス（後述のステータス保存ファイル）があると判断すると、ステータスと共に保存されている保存日時を取得し（Ｓ１１２）、その保存日時と現在の日時とを比較（Ｓ１１３）する。Ｓ１１４において前回ステータスを保存してから５秒以上経過しているか否かを判定する。前回ステータスを保存してから５秒以上経過していると判断すると、Ｓ１０９で取得したステータスをプリンタステータス格納部０５に保存して（Ｓ１１５）、Ｓ１１６に進む。取得したステータスは、プリンタのモデル名称と、通信インタフェースと、プリンタ固有の値と、保存日時として現在の日時と対応付けたステータス保存ファイルとして保存される。ここでは、プリンタ固有の値として、通信インタフェースがＵＳＢの場合はシリアル番号、イーサネット（登録商標）の場合はＭＡＣアドレス、ＩＥＥＥ１３９４の場合はＧＵＩＤと対応付けて保存する。そしてこれらのインタフェース識別子によりインタフェースを一意に特定することができる。つまりインタフェース識別子はインタフェースを一意に特定可能にするキーの役割をする。ここでＧＵＩＤとは、Ｇｌｏｂａｌ  Ｕｎｉｑｕｅ  ＩＤの略である。ステータス保存ファイルのデータ構成については後述する。また、Ｓ１０９で取得したステータスに係るプリンタに係るステータス保存ファイルが、プリンタステータス格納部０５に既に保存されている場合、そのステータス保存ファイルは、新たなステータス保存ファイルで上書きされる。すなわち、同じプリンタのモデル名称、通信インタフェース、プリンタ固有の値に対応したステータスが保存されている場合は、そのステータス及び保存日時を上書き保存する。
【００１８】
一方Ｓ１１４において５秒以上経過していないと判断すると、Ｓ１０９で取得したステータスを保存することなくＳ１１６に進む。本実施形態では取得したステータスを保存するか否かを前回ステータスを保存してからの経過時間が５秒以上か否かによって判断しているが、判断する基準となる時間は５秒でなくとも、たとえば適当な所定の時間を基準としても構わない。また経過時間に関わらず、プリンタからステータスを取得したときは常にステータスを保存することとしても良い。その場合にはＳ１１４の判定は常に「ＹＥＳ」である。また、ステータスを保存した日時とそこからの経過時間に基づきステータスを保存するのではなく、前回保存したステータスとプリンタから取得したステータスを比較し、ステータスが変化しているときにステータスを保存しても良い。保存されるステータスには、インク残量情報が含まれている。
【００１９】
さてＳ１１１において該当する保存ステータスが無いと判断すると取得したステータスを保存して（Ｓ１１５）、Ｓ１１６に進む。Ｓ１１６において、プリンタから取得したステータスに基づき、印刷処理が終了していないと判断するとＳ１０５に戻る。印刷処理が終了したと判断するとＳ１１７に進み、インタフェースをクローズして、終了する。
【００２０】
＜プリンタユーティリティ＞
図３は、プリンタユーティリティ０６が起動して各種機能を実行するための画面を表示するまでの処理の流れを示す。ユーザがプリンタユーティリティ０６を起動するとプリンタ選択画面を表示する（Ｓ２０１）。本画面には、ＰＣ０１に接続されたプリンタが通信インタフェースごとに列挙され、この画面でユーザによる通信インタフェース及び操作対象となるプリンタの選択を、プリンタユーティリティ０６は受け付ける（Ｓ２０２）。本画面の詳細については後述する。次にＳ２０３に進み、プリンタユーティリティの各種機能を実行するための画面を表示すると、起動処理を終了する（Ｓ２０４）。本画面において、ユーザはクリーニングやヘッド位置調整を実行することや、プリンタに搭載されたインクタンクの状態を表示させて、そのインク残量を確認することができる。プリンタユーティリティ０６は、ユーザによる実行する機能の選択をその画面において受け付ける。本画面の詳細については後述する。
【００２１】
図４は、図３のＳ２０１において表示するプリンタ選択画面である。プリンタ選択画面５０は、通信インタフェース選択ポップアップメニュー５１、プリンタリスト表示部５２、キャンセルボタン５３、ＯＫボタン５４によって構成される。通信インタフェース選択ポップアップメニュー５１によって、使用するインタフェースを、ＵＳＢ、Ｆｉｒｅｗｉｒｅ、ネットワークの中から選択することができる。プリンタリスト表示部５２には、通信インタフェース選択ポップアップメニュー５１で指定された通信インタフェースによってＰＣに接続されているプリンタが表示される。ユーザは、表示されたプリンタの中から、使用するプリンタとして何れか一つを選択することができる。
【００２２】
本実施形態ではインターフェースとしてＵＳＢを選択すると、ＵＳＢケーブルによってＰＣ０１に接続された２台のプリンタＡと１台のプリンタＢが、プリンタリスト表示部５２に表示される。インターフェースとしてネットワークを選択すると、イーサネット（登録商標）ケーブルによってＰＣ０１に接続された一台のプリンタＢがプリンタリスト表示部５２に表示される。
【００２３】
キャンセルボタン５３が押されるとプリンタユーティリティ０６を終了する。ＯＫボタン５４が押されると、選択されているプリンタに基づき、プリンタユーティリティ０６の各種機能を実行するための画面が表示される。本画面の詳細については後述する。ＯＫボタン５４は、プリンタリスト表示部５２においてプリンタが選択されていないときは選択できない。
【００２４】
図５は、図３のＳ２０３において表示されるプリンタユーティリティ０６の各種機能を実行するための実行機能選択画面６０である。実行機能選択画面６０は、終了ボタン６１、クリーニング実行ボタン６２、強力クリーニング実行ボタン６３、ノズルチェックパターン印刷実行ボタン６４、ヘッド位置調整実行ボタン６５、インク残量の確認実行ボタン６６によって構成される。終了ボタン６１が押されると、プリンタユーティリティ０６を終了する。クリーニング実行ボタン６２が押されると、プリンタユーティリティ０６は、プリンタに対してノズルのクリーニングを指示する。強力クリーニング実行ボタン６３が押されると、プリンタユーティリティ０６は、プリンタに対してクリーニングより強力なノズルのクリーニングを指示する。ノズルチェックパターン印刷実行ボタン６４が押されると、プリンタユーティリティ０６は、プリンタに対してノズルの状態をユーザがチェックするためのパターンの印刷を指示する。ヘッド位置調整実行ボタン６５が押されると、プリンタユーティリティ０６は、プリンタに対してプリントヘッドの取り付け位置の誤差を補正するためのパターンの印刷を指示する。インク残量の確認実行ボタンが６６押されると、プリンタユーティリティ０６は、プリンタが搭載するインクの残量を表示するための画面を表示する。本画面の詳細については後述する。
【００２５】
図６は、図５に示す実行機能選択画面６０でインク残量の確認実行ボタン６６が押されたときに表示される、インクの残量を表示するためのインク残量表示画面である。インク残量表示画面７０は、閉じるボタン７１、更新ボタン７２、インク残量表示部７３によって構成される。閉じるボタン７１が押されると、プリンタユーティリティ０６は、本画面を閉じて、図５に示す画面に戻る。更新ボタン７２が押されると、プリンタユーティリティ０６は、プリンタからインクの残量を示すステータスを取得し、そのステータスに基づいたインクの残量を再度インク残量表示部７３に表示する。また、確認実行ボタン６６が押されてインク残量表示画面７０を表示するときも、更新ボタン７２が押されたときと同様に、プリンタユーティリティ０６は、プリンタから取得したステータスに基づいたインクの残量をインク残量表示部７３に表示する。
【００２６】
＜メンテナンス処理＞
図７は、プリンタユーティリティ０６においてメンテナンス機能を実行したときの処理の流れを示す。すなわち、図５に示す実行機能選択画面６０において、クリーニングや強力クリーニング、ノズルチェックパターン印刷、ヘッド位置調整機能を実行したときの処理の流れを示す。
【００２７】
Ｓ３０１にて、ユーザによる所望のメンテナンス機能の実行指示を受けつける。実行指示があるとＳ３０２に進む。Ｓ３０２では、図２のＳ２０２で選択されているインターフェースのオープンを試みる。本実施形態では、プリンタドライバがあるインターフェースを用いて印刷中のとき、当該インタフェースをオープンできない。インタフェースはプリンタドライバ０３の処理を実行するプロセスによって占有状態になっており、ビジー状態になる。Ｓ３０３において、インタフェースがビジー状態でオープン処理を失敗したか否かを判定する。インタフェースがビジー状態でなく、オープンできたと判断すると、Ｓ３０４に進む。
【００２８】
Ｓ３０４では、選択されているプリンタに対して返却ステータスを指定するコマンドを送信する。Ｓ３０５では、プリンタに対してＳ３０１で指示されたメンテナンス機能の実行を指示する制御コマンドを送信する。
【００２９】
次に、プリンタのステータスを取得して（Ｓ３０６）、取得したステータスに含まれるプリンタの動作状態を示す情報に基づきメンテナンス処理の終了を監視する（Ｓ３０７）。そして、Ｓ３０８において、メンテナンスが終了したと判断すると、インタフェースをクローズして（Ｓ３０９）、終了する。Ｓ３０８において、メンテナンスが終了していないと判断すると、Ｓ３０６に戻る。
【００３０】
Ｓ３０３においてインタフェースがビジー状態でオープンできなかったと判断すると、Ｓ３１１に進む。そして、印刷中のためメンテナンス機能を実行できない旨をたとえば表示によってユーザに通知した後に、終了する。
【００３１】
＜インク残量確認処理＞
図８は、プリンタユーティリティにおいてプリンタの状態を確認する機能を実行したときの処理の流れを示す。すなわち、図５に示す実行機能選択画面において、インク残量の確認実行ボタン６６が押されて、インク残量表示機能を実行したときの処理の流れを示す。
【００３２】
Ｓ４０１にて、インク残量表示機能の実行の指示を受け付けると、Ｓ４０２に進む。Ｓ４０２では、選択されているインタフェースのオープンを試みる。Ｓ４０３において、インタフェースがビジー状態でオープン処理を失敗したか否かを判定する。ここでインタフェースがビジー状態である場合とは、図４を介してユーティリティに選択されたプリンタとプリンタドライバにより利用されているプリンタが一致し、利用対象のインタフェースも一致する場合である。インタフェースがビジー状態でなく、オープンできたと判定するとＳ４０４に進む。Ｓ４０４では、プリンタに対して返却ステータスを指定するコマンドを送信する。次に、プリンタのステータスを取得して（Ｓ４０５）、インタフェースをクローズする（Ｓ４０６）。
【００３３】
そして、Ｓ４０７において、取得したステータスに含まれるインク残量を示す情報を取得し、その情報をプリンタユーティリティ情報格納部０７に保存する（Ｓ４０８）。取得したインク残量情報は、ステータス情報の送信元のプリンタのモデル名称、通信インタフェース、プリンタ固有の値と対応付けた残量保存ファイルとして保存される。ここでは、プリンタ固有の値として、通信インタフェースがＵＳＢの場合はシリアル番号、イーサネット（登録商標）の場合はＭＡＣアドレス、ＩＥＥＥ１３９４の場合はＧＵＩＤと対応付けて保存する。残量保存ファイルのデータ構成については後述する。また、Ｓ４０５で取得したステータスに係るプリンタに係る残量保存ファイルが、プリンタユーティリティ情報格納部０６に既に保存されている場合、その残量保存ファイルは、新たな残量保存ファイルで上書きされる。すなわち、既に同じプリンタのモデル名称、通信インタフェース、プリンタ固有の値に対応したインク残量情報が保存されている場合は、そのインク残量情報及び保存日時を上書き保存する。
【００３４】
Ｓ４０９に進むと、取得したインク残量を示す情報に基づいて、図６に示す画面を表示する。そして処理を終了する。
【００３５】
一方、Ｓ４０３において、インタフェースがビジー状態でオープンできなかったと判断すると、Ｓ４１０に進む。Ｓ４１０では、図３のＳ２０２で選択された通信インタフェースの仕様（種類）に基づいて、ビジー状態でプリンタのステータスが取得可能か否かを判定する。このＳ４１０の判定により後述のＳ４１２及びＳ４１３の処理を切り分けることができる。本実施形態では、通信インタフェースがＵＳＢ又はＩＥＥＥ１３９４等のローカルインタフェースのときビジー状態でプリンタのステータスが取得できないと判定する。また、イーサネット（登録商標）等のネットワークインタフェースのとき取得できると判定する。ビジー状態でのイーサネット（登録商標）によるステータスの取得は、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）チャンネルによって行う（Ｓ４１２）。ビジー状態でないときは、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）チャンネルによって行う（Ｓ４０５）。ＴＣＰ／ＩＰによるステータス取得のほうが、プリンタからの応答がより保証されているので、この方式を用いるほうが望ましい。また、インタフェースの仕様（種類）がＦｉｒｅＷｉｒｅ等であった場合には、Ｓ６１２でＮｏと判定する。なお、後述の図１０、図１１には、ＦｉｒｅＷｉｒｅ（登録商標）について、ステータスの保存様子が詳しく記載されていない。しかし、ＵＳＢ等の場合と同様に、プリンタモデル、通信インターフェースの種類、インタフェースシリアル番号等がステータスと対応付けられて記憶されている。
【００３６】
Ｓ４１１において、ステータスが取得できると判断すると、上に説明したＵＤＰの方式によりプリンタからステータスを取得する（Ｓ４１２）。Ｓ４０７に進む。Ｓ４１１において、ステータスが取得できないと判断すると、プリンタドライバ０３が保存したステータスをプリンタステータス格納部０５から検索する（Ｓ４１３）。ここで、プリンタユーティリティ０６は、図３のＳ２０２で選択されたプリンタのモデル名称、通信インタフェース、プリンタ固有、インタフェースシリアル番号の値を検索条件とする。そして、検索条件を元にプリンタステータス格納部０５の中から該当するステータスを検索する。例えば、現在選択されているインタフェースがＵＳＢインタフェースの場合、まず、図４の５１の選択で図１１のＫｅｙ３０３が決定され、更に、図４の５２で選択されたプリンタによってＫｅｙ３０５が決定される。ここで、Ｋｅｙ３０３及びＫｅｙ３０５とＫｅｙ２０３及びＫｅｙ２０５は、図４を介してユーティリティに選択されたプリンタとプリンタドライバにより利用されているプリンタが一致する場合に対応する。従って、Ｓ４０３でビジー状態と判定された場合に、ユーティリティはインタフェース識別子であるところのＫｙｅ（シリアル番号）に基づいて、プリンタドライバが保持するステータス（図１０）から適切なステータスを検索することができる。なお更なる検索方法の詳細については後述する。
【００３７】
Ｓ４１４において、プリンタドライバ０５が保存した、該当するステータス保存ファイルがあると判断すると、それに含まれるステータスを取得する（Ｓ４１５）。そして、Ｓ４０７に進む。一方、Ｓ４１４において、プリンタドライバが保存したステータスが無いと判断すると、Ｓ４１６に進む。Ｓ４１６において、プリンタユーティリティ０６が前回保存したインクの残量情報を検索する。プリンタユーティリティ０６は、選択されているプリンタのモデル名称、通信インタフェース、プリンタ固有の値を検索条件（キー）として、プリンタユーティリティ情報格納部０７の中から該当するインクの残量情報を検索する。検索方法の詳細については後述する。Ｓ４１７において、前回保存した情報があると判断すると、情報を取得して（Ｓ４１８）、Ｓ４０９に進む。前回保存した情報が無いと判断すると、印刷中のためプリンタからインクの残量情報を取得できない旨を通知して（Ｓ４１９）、終了する。
【００３８】
図９は、図７のＳ３１１又は図８のＳ４１９において、印刷中のためプリンタユーティリティの各種機能を実行できないことをユーザに通知するためのエラー通知画面である。エラー通知画面１００は、メッセージ表示部１０１とＯＫボタン１０２によって構成される。メッセージ表示部１０１には、ユーザに通知する内容が表示される。ＯＫボタン１０２が押されると、図５に示す画面に戻る。
【００３９】
このように図４のフローチャートにより、プリンタドライバとプリンタユーティリティの使用インタフェースが競合し得るような環境下でも、ユーティリティはより適確なプリンタステータスを取得することができる。また、Ｓ４１１の処理でインタフェースの種類に従い、プリンタドライバにより取得及び格納された印刷装置ステータスを取得するか否かを切り分けるので、可能な限りプリンタのリアルタイムなステータスを取得できる。また、Ｓ４１８で、プリンタドライバがプリンタステータス格納部０５に格納するステータスを取得できない場合にもステータス取得できるので、例えば、プリンタドライバをインストールしなおした場合にもステータス取得を行える。また、Ｓ４１３でインタフェースシリアル番号に基づき必要なステータスを検索しているので、同じＰＣに設けられた２つのＵＳＢインタフェースに同モデルのプリンタが接続されていても適確なステータスを取得することができる。
【００４０】
＜ステータス保存ファイル＞
図１０は、図２のＳ１１５で、プリンタステータス格納部０５に保存するステータス保存ファイルのデータ構成の一例を示す。データは特定の情報にアクセスするためのキー（Ｋｅｙ）と情報を格納する値（Ｖａｌｕｅ）とによって構成される。格納される各々の情報には固有なＫｅｙが割り当てられ、Ｋｅｙに基づいてＶａｌｕｅを参照することによって必要な情報を取得することができる。Ｖａｌｕｅは、さらにその中に、より低階層のＫｅｙとＶａｌｕｅととの関連づけを含む。これにより、複数のキーを用いて、各キーの値に該当するＶａｌｕｅを階層的に検索可能となっている。
【００４１】
ステータス保存ファイル１００１は、第１階層のＫｅｙ２０１（プリンタのモデル名称）と、Ｋｅｙ２０１の値（モデル名称）ごとに対応したＶａｌｕｅ２０２（モデル名称ごとに対応した情報）で構成される。Ｖａｌｕｅ２０２（モデル名称ごとに対応した情報）は、Ｋｅｙ２０３（通信インタフェース）とＶａｌｕｅ２０４（通信インタフェースごとに対応した情報）で構成される。Ｖａｌｕｅ２０４（通信インタフェースごとに対応した情報）は、Ｋｅｙ２０５（プリンタ固有の値（インタフェースシリアル番号））とＶａｌｕｅ２０６（プリンタ固有の値毎に対応した特定の情報）で構成される。プリンタ固有の値として、ＵＳＢではシリアル番号、ＩＥＥＥ１３９４ではＧＵＩＤ、イーサネット（登録商標）ではＭＡＣアドレスが格納される。また、本実施形態では、プリンタ固有値に対応した情報は、情報の属性を示す識別情報と、その属性ごとの値とで構成される。情報の属性は、ここではプリンタのステータスとその保存時間であり、これら属性を識別情報がＫｅｙ２０７となる。また対応するＶａｌｕｅ２０７は、属性ごとに対応する値（ステータスおよび保存時間）が格納される。
【００４２】
プリンタドライバ０３及びプリンタユーティリティ０６は、まず選択された、あるいは使用しているプリンタのモデル名称をＫｅｙ２０１として指定し、プリンタステータス格納部０５のファイルの中から、該当するモデルに対応する情報２０２を取得する。次に取得した情報２０２に対して、選択された、あるいは使用している通信インタフェースをＫｅｙ２０３として指定し、対応該当する通信インタフェースに対応する情報２０４を取得する。更に取得した情報２０４に対して、プリンタ固有の値をＫｅｙ２０５として指定し、該当する情報２０６を取得する。情報２０６には、操作対象のプリンタのステータス及びその保存時間が、それぞれの属性識別情報に対応付けられて保存されている。そこで、操作対象のプリンタのステータス及びその保存時間を読み取って取得する。このように、プリンタドライバ０３及びプリンタユーティリティ０６は、モデル名称、通信インタフェース、プリンタ固有の値、情報の属性値をＫｅｙとして順に用いる。こうすることで、階層的に情報が格納されたステータス保存ファイルの中から、操作対象のプリンタのステータス及びその保存時間を取得する。図２のＳ１１０、図８のＳ４１３では、このようにして保存されたステータス情報を取得する。また、図２のＳ１１５では図１０の形式でステータス情報を保存する。
【００４３】
＜インク残量保存ファイル＞
図１１は、プリンタユーティリティ情報格納部０７に保存するインク残量保存ファイルのデータ構成の一例を示す。プリンタステータス格納部０５に保存するファイルと同様に、データは特定の情報にアクセスするためのＫｅｙと情報を格納するＶａｌｕｅによって構成される。データは、プリンタのモデル名称とモデル名称に対応した複数の情報を格納するＫｅｙ３０１とＶａｌｕｅ３０２で構成される。モデル名称に対応した各情報は、通信インタフェースと通信インタフェースに対応した複数の情報を格納するＫｅｙ３０３とＶａｌｕｅ３０４で構成される。更に各情報は、プリンタ固有の値とそのプリンタの特定の情報を格納するＫｅｙ３０５（インタフェースシリアル番号）とＶａｌｕｅ３０６で構成される。本実施形態では、特定の情報として、インクの色とその残量レベルを示す複数のＫｅｙ―Ｖａｌｕｅのセット（Ｋｅｙ３０７、Ｖａｌｕｅ３０８）が格納される。プリンタユーティリティは、モデル名称、通信インタフェース、プリンタ固有の値、インクの色をＫｅｙとして順に用いて、階層的に情報が格納されたデータの中から操作対象のプリンタが搭載する各色のインク残量レベルを取得する。
【００４４】
図１１のインク残量保存ファイルの構成は、図１０のステータス保存ファイルと、Ｖａｌｕｅ３０６の内容において相違しているが、その他の構造は同じである。Ｖａｌｕｅ３０６には、情報の属性としてインクの色が、各属性値に対応する残量として満量に対するパーセンテージが保存されている。したがって、キーを用いた検索の方法は同じである。
【００４５】
以上の構成及び手順により、本実施形態の印刷システムによれば、ドライバとユーティリティとが互いに独立したプログラムモジュールであっても、現在印刷に使用されているプリンタのインク残量を、プリンタユーティリティにより表示することができる。表示されるインク残量は、使用中のプリンタから得られた最新の情報に基づいているために、実用上十分な信頼性がある。
【００４６】
また、本実施形態ではインク残量の監視を行っているが、たとえば用紙やトナー、電池の残量、ライセンスされた複製数の残量など、その他の消耗品など数量に制約のあるものの残量監視にも本発明を適用できる。
【００４７】
なお、印刷装置からステータスを取得するためのインタフェースの状態を判定する判定工程（判定手段）はステップＳ４０３，Ｓ５０３に相当する。
【００４８】
前記判定工程（手段）において前記インタフェースの状態が占有状態でなければ、前記インタフェースを介して前記印刷装置のステータスを取得する工程（手段）は、ステップＳ４０５に相当する。
【００４９】
前記判定工程（手段）において前記インタフェースの状態が占有状態であれば、前記プリンタドライバにより取得及び格納された前記印刷装置のステータスを取得する取得工程（取得手段）は、ステップＳ４１３−Ｓ４１５に相当する。
【００５０】
［第２実施形態］
本発明を実現する第２の実施形態を図に従って詳細に説明する。本発明の第１の実施形態では、プリンタユーティリティにおいてインク残量表示機能を実行したときにプリンタからステータスを取得できない場合、プリンタドライバが保存したステータスを検索する。そしてプリンタドライバが保存したステータスがないときは、プリンタユーティリティが前回保存した情報からインク残量を表示するための情報を取得していた。第２の実施形態では、プリンタドライバが保存したステータスがないとき、又はプリンタドライバが保存したステータスを取得できるがその情報が古いときは、プリンタドライバが新たなステータスを保存するまで待機する。待機後にその新たなステータスからインク残量を表示するための情報を取得する。
【００５１】
印刷システムの構成、プリンタユーティリティにおいて表示する各種画面、プリンタステータス格納部０５に保存するファイルのデータ構成については、第１の実施形態と同様である。また、インク残量表示機能を実行したときの処理の流れを除く、プリンタドライバ及びプリンタユーティリティの各種処理の流れについても、第１の実施形態と同様である。
【００５２】
図１２は、プリンタユーティリティにおいてプリンタの状態を確認する機能を実行したときの処理の流れを示す。すなわち、図５に示す実行機能選択画面６０において、インク残量の確認ボタン６６が押されてインク残量表示機能を実行したときの処理の流れを示す。なお、図１２に示される各ステップの処理は、Ｓ５１５乃至５１７、Ｓ５１９を除き、基本的には、図８で説明した各ステップと同様のものとする。
【００５３】
Ｓ５０１にて、インク残量表示機能の実行指示を受け付けると、Ｓ５０２に進む。Ｓ５０２では、選択されているインタフェースのオープンを試みる。Ｓ５０３において、インタフェースがビジー状態でオープン処理を失敗したか否かを確認する。インタフェースがビジー状態でなく、オープンできたと判断すると、Ｓ５０４に進む。Ｓ５０４では、プリンタに対して返却ステータスを指定するコマンドを送信する。次に、プリンタのステータスを取得して（Ｓ５０５）、インタフェースをクローズする（Ｓ５０６）。そして、Ｓ５０７において、取得したステータスに含まれるインク残量を示す情報を取得し、その情報に基づいて図６に示す画面を表示すると、終了する。
【００５４】
Ｓ５０３において、インタフェースがビジー状態でオープンできなかったと判断すると、Ｓ５１０に進む。Ｓ５１０では、図３のＳ２０２で選択された通信インタフェースの仕様に基づいて、ビジー状態でプリンタのステータスが取得可能か否かを判定する。本実施形態では、通信インタフェースがＵＳＢ又はＩＥＥＥ１３９４のときビジー状態でプリンタのステータスが取得できないと判定し、イーサネット（登録商標）のとき取得できると判定する。ビジー状態でのイーサネット（登録商標）によるステータスの取得は、ＵＤＰ（Ｕｓｅｒ Ｄａｔａｇｒａｍ Ｐｒｏｔｏｃｏｌ）チャンネルによって行う。ビジー状態でないときは、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ Ｃｏｎｔｒｏｌ Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ Ｐｒｏｔｏｃｏｌ）チャンネルによって行う。
【００５５】
Ｓ５１１において、ステータスが取得できると判断すると、プリンタからステータスを取得して（Ｓ５１２）、Ｓ５０７に進む。Ｓ５１１において、ステータスが取得できないと判断すると、選択されているプリンタ及びインターフェースに該当する、プリンタドライバが保存したステータスをプリンタステータス格納部０５から検索する（Ｓ５１３）。検索処理につていは、第１の実施形態と同様である。Ｓ５１４において、プリンタドライバが保存した、検索条件に該当するステータスが無いと判断すると、Ｓ５１９に進む。そして、プリンタドライバがステータスを保存するまで待機した後にＳ５０２に戻る。本実施形態では、プリンタドライバがステータスを保存するまでの待機時間の一例として１秒間待機することとしているが、待機時間は他の値でも構わない。
【００５６】
Ｓ５１４において、プリンタドライバが保存した該当するステータスがあると判断すると、Ｓ５１５に進む。Ｓ５１５において、プリンタドライバがステータスを保存した日時を取得し、ステータスの保存日時と現在の日時を比較する（Ｓ５１６）。Ｓ５１７において、ステータスが保存された日時から現在までの経過時間が一定時間未満であり、ステータスに含まれる情報が、ほぼ現在のプリンタの状態を示すものと判断すれば、そのステータスを取得して（Ｓ５１８）、Ｓ５０７に進む。Ｓ５１７において、ステータスが保存された日時から現在までの経過時間が一定時間以上であれば、プリンタドライバがステータスを保存するまで待機し（Ｓ５１９）、Ｓ５０２に戻る。本実施形態では、ステータスの情報が現在のプリンタの状態を示すものか否かを判断するための基準となる経過時間の一例として、ステータスが保存されてからの経過時間が３秒以上か否かによって判断する。しかし、判断するための基準となる時間は任意の値で構わない。
【００５７】
以上の構成及び手順により、本実施形態の印刷システムによれば、ドライバとユーティリティとが互いに独立したプログラムモジュールであっても、現在印刷に使用されているプリンタのインク残量を、プリンタユーティリティにより表示することができる。さらに表示されるインク残量情報が、現在時刻から一定時間以内に得られたものであることが保証されているために、インク残量の信頼性が高い。また、プリンタドライバによりプリンタとのインターフェースが専有されている場合であっても、プリンタドライバにより最新のステータスが取得されるまで待機するために、確実に信頼性の高いインク残量情報を取得できる。
【００５８】
［第３実施形態］
本発明を実現する第３の実施形態を図に従って詳細に説明する。本発明の第１の実施形態では、プリンタユーティリティにおいてメンテナンス機能を実行したときにプリンタドライバが印刷中でインタフェースがビジー状態だった場合、印刷中のためメンテナンス機能を実行できない旨を通知して処理を終了していた。第３の実施形態では、インタフェースがビジー状態であっても、印刷処理が一定時間内に終了すると判断できるときは、印刷が終了するまで待機し、その後メンテナンス機能の実行をリトライする。
【００５９】
印刷システムの構成、プリンタユーティリティにおいて表示する各種画面、プリンタステータス格納部０５及びプリンタユーティリティ情報格納部０７に保存するファイルのデータ構成については、本発明の第１の実施形態と同様である。また、メンテナンス機能を実行したときの処理の流れを除く、プリンタドライバ０３及びプリンタユーティリティ０６の各種処理の流れについても、本発明の第１の実施形態と同様である。
【００６０】
図１３は、プリンタユーティリティにおいてメンテナンス機能を実行したときの処理の流れを示す。すなわち、図５に示す実行機能選択画面６０において、クリーニングや強力クリーニング、ノズルチェックパターン印刷、ヘッド位置調整機能を実行したときの処理の流れを示す。なお、図１３に示される各ステップの処理は、Ｓ６１６、Ｓ６１９乃至Ｓ６２１を除き、基本的には、図８で説明した各ステップと同様のものとする。
【００６１】
Ｓ６０１にて所望のメンテナンス機能の実行を指示すると、Ｓ６０２に進む。Ｓ６０２では、インタフェースのオープンを試みる。Ｓ６０３において、インタフェースがビジー状態でオープン処理を失敗したか否かを確認する。インタフェースがビジー状態でなく、オープンできたと判断すると、Ｓ６０４に進む。
【００６２】
Ｓ６０４では、プリンタに対して返却ステータスを指定するコマンドを送信し、Ｓ６０５では、プリンタに対してＳ６０１で指示されたメンテナンス機能の実行を指示する制御コマンドを送信する。次に、プリンタのステータスを取得して（Ｓ６０６）、取得したステータスに含まれるプリンタの動作状態を示す情報に基づきメンテナンス処理の終了を監視する（Ｓ６０７）。そして、Ｓ６０８において、メンテナンスが終了したと判断すると、インタフェースをクローズして（Ｓ６０９）、終了する。Ｓ６０８において、メンテナンスが終了していないと判断すると、Ｓ６０６に戻る。
【００６３】
一方、Ｓ６０３においてインタフェースがビジー状態で、オープンできなかったと判断すると、Ｓ６１１に進む。Ｓ６１１では、図３のＳ２０２で選択された通信インタフェースの仕様に基づいて、ビジー状態でプリンタのステータスが取得可能か否かを判定する。本実施形態では、通信インタフェースがＵＳＢ又はＩＥＥＥ１３９４のときビジー状態でプリンタのステータスが取得できないと判定し、イーサネット（登録商標）のとき取得できると判定する。ビジー状態でのイーサネット（登録商標）によるステータスの取得は、ＵＤＰ（Ｕｓｅｒ Ｄａｔａｇｒａｍ Ｐｒｏｔｏｃｏｌ）チャンネルによって行う。ビジー状態でないときは、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ Ｃｏｎｔｒｏｌ Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ Ｐｒｏｔｏｃｏｌ）チャンネルによって行う。
【００６４】
Ｓ６１２において、ステータスが取得できないと判断すると、選択されているプリンタおよびインターフェースに該当する、プリンタドライバ０３が保存したステータスを、プリンタステータス格納部０５から検索する（Ｓ６１４）。検索処理につていは、本発明の第１の実施形態と同様である。Ｓ６１５において、プリンタドライバが保存した検索条件に該当するステータスが無いと判断すると、Ｓ６２１に進む。そして、プリンタドライバがステータスを保存するまで待機した後にＳ６０２に戻る。本実施形態では、プリンタドライバがステータスを保存するまでの待機時間の一例として１秒間待機することとしているが、待機時間は任意の値で構わない。
【００６５】
Ｓ６１５において、プリンタドライバが保存した、検索条件に該当するステータスがあると判断すると、ステータスの保存時間を取得し（Ｓ６１６）、プリンタドライバが保存したステータスを取得して（Ｓ６１７）、Ｓ６１８に進む。Ｓ６１２において、ステータスが取得できると判断すると、プリンタからステータスを取得して（Ｓ６１３）、Ｓ６１８に進む。
【００６６】
Ｓ６１８では、取得したステータスに含まれる総印刷ページ数や処理中のページ番号等の印刷状況を示す各種情報に基づき、印刷終了までの時間を算出する。プリンタドライバ０３が保存したステータスに基づき印刷終了までの時間を算出する場合は、ステータスの保存日時も考慮して算出する。たとえば、保存されたステータスに基づいて印刷終了までの所要時間を算出する。その所要時間から、ステータスの保存日時と現在時刻との時間差を差し引いた値を、印刷終了までの時間とする。
【００６７】
Ｓ６１９において、印刷終了までの時間が一定時間以上であれば、印刷中のためメンテナンス機能を実行できない旨を通知し（Ｓ６２０）、終了する。Ｓ６１９において、印刷終了までの時間が一定時間未満であれば、Ｓ６２２に進み、印刷終了までの時間待機した後、Ｓ６０２に戻る。本実施形態では、印刷終了まで待機するか否かを判断するための基準となる時間の一例として、印刷終了までの時間が１分未満か否かによって判断することとしているが、判断するための基準となる時間は任意の値で構わない。
【００６８】
以上の構成及び手順により、プリンタドライバがインターフェースを専有しているプリンタを対象とするユーティリティが、ドライバによる専有が終了するまで待機することで、使用中のプリンタのメンテナンスが行いやすい。このため、メンテナンスしないままプリンタを放置することで、プリンタに障害が生ずる可能性を低減することができる。
【００６９】
以上、本発明の実施形態では、印刷システムの構成要素の一つであるプリンタとしてインクジェットプリンタを想定したが、この例に限られることなく、ファクシミリ装置や複写機を含む任意の印刷装置であってもよい。また電子写真方式を採用したプリンタに適用することもできる。
【００７０】
更にまた、本発明の実施形態における印刷システムとは、単体の装置ではなく、ＰＣとプリンタとが特定のインタフェースを介して接続された構成をとっている。しかし、この例に限られることなく、このようなＰＣとプリンタの機能が一体となった装置一体型の印刷システムであってもよい。
【００７１】
なお本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。また本発明の目的は、前述の実施形態の機能を実現するプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータが記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体およびプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７２】
また、本発明には、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた場合についても、本発明は適用される。その場合、書き込まれたプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００７３】
【図１】本実施形態の一形態に係る印刷システムの構成を示す図である。
【図２】印刷時のプリンタドライバの処理の流れを示す図である。
【図３】プリンタユーティリティが起動して実行機能選択画面を表示するまでの処理の流れを示す図である。
【図４】プリンタユーティリティのプリンタ選択画面を示す図である。
【図５】プリンタユーティリティの実行機能選択画面を示す図である。
【図６】プリンタユーティリティのインク残量表示画面を示す図である。
【図７】プリンタユーティリティのメンテナンス機能を実行したときの処理の流れを示す図である。
【図８】プリンタユーティリティのインク残量表示機能を実行したときの処理の流れを示す図である。
【図９】エラー通知画面を示す図である。
【図１０】プリンタドライバ用のステータス保存ファイルのデータ構成を示す図である。
【図１１】プリンタユーティリティ用の情報保存ファイルのデータ構成を示す図である。
【図１２】プリンタユーティリティのインク残量表示機能を実行したときの処理の流れを示す図である。
【図１３】プリンタユーティリティのメンテナンス機能を実行したときの処理の流れを示す図である。
【符号の説明】
【００７４】
０１  データ処理装置（ＰＣ）
０２  アプリケーション
０３  プリンタドライバ
０４  Ｉ／Ｆ制御部
０５  プリンタステータス格納部
０６  プリンタユーティリティ
０７  プリンタユーティリティ情報格納部
１０  通信インタフェース（ＵＳＢ）
１１  通信インタフェース（ＵＳＢ）
１２  通信インタフェース（ＵＳＢ）
１３  通信インタフェース（イーサネット（登録商標））
２０  プリンタ
２１  Ｉ／Ｆ制御部
２２  印刷制御部
２３  印刷部
２５  プリンタ
３０  プリンタ
３５  プリンタ
【図１】
2008015948.tif 000003
【図２】
2008015948.tif 000004
【図３】
2008015948.tif 000005
【図４】
2008015948.tif 000006
【図５】
2008015948.tif 000007
【図６】
2008015948.tif 000008
【図７】
2008015948.tif 000009
【図８】
2008015948.tif 000010
【図９】
2008015948.tif 000011
【図１０】
2008015948.tif 000012
【図１１】
2008015948.tif 000013
【図１２】
2008015948.tif 000014
【図１３】
2008015948.tif 000015
【手続補正書】
【提出日】平成19年10月16日(2007.10.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項５
【補正方法】変更
【補正の内容】
【請求項５】
前記プリンタドライバは、インタフェースを一意に特定可能なインタフェース識別子と印刷装置から取得したステータスとを対応付けて格納し、前記取得工程は、前記インタフェース識別子に基づき、格納されたステータスを検索することを特徴とする請求項１乃至４の何れか１項に記載の制御方法。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１０
【補正方法】変更
【補正の内容】
【請求項１０】
前記プリンタドライバは、インタフェースを一意に特定可能なインタフェース識別子と印刷装置から取得したステータスとを対応付けて格納し、前記取得手段は、前記インタフェース識別子に基づき、格納されたステータスを検索することを特徴とする請求項６乃至９の何れか１項に記載の情報処理装置。