(57)【特許請求の範囲】
【請求項１】
周辺装置と通信可能な情報処理装置であって、
前記周辺装置でのエラーの発生を検出する検出手段と、
前記検出されたエラーの発生に応じた表示処理として第１および第２表示処理からいずれか１つの表示処理を実行する実行手段と、を備え、
前記第１および第２表示処理の両者が前記エラーに対応する情報を表示できる場合、前記実行手段は、前記第１および第２表示処理から前記第１表示処理を実行し、
前記第１表示処理に基づいて表示される第１通知ユーザインタフェースに含まれる情報は、前記第２表示処理に基づいて表示される第２通知ユーザインタフェースに含まれる情報とは異なると共にエラーの内容に関する情報を含み、
前記第１表示処理により表示された前記第１通知ユーザインタフェースが操作されることにより、前記第１通知ユーザインタフェースに対応付けられた第１アプリケーションの画面が表示され、前記第２表示処理により表示された前記第２通知ユーザインタフェースが操作されることにより、前記第２通知ユーザインタフェースに対応付けられた第２アプリケーションの画面が表示され、
前記第１アプリケーションの画面に表示される情報と、前記第２アプリケーションの画面に表示される情報は異なる、
ことを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、
印刷ジョブを前記周辺装置に送信するプリンタドライバと、
前記エラーの発生に対応する情報が前記プリンタドライバに設定されているか否かを判定する判定手段と、を更に備え、
前記エラーの発生に対応する情報が前記プリンタドライバに設定されていると判定された場合、前記実行手段は、前記第１および第２表示処理から前記第１表示処理を実行することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記判定手段は、前記プリンタドライバが設定ファイルを有するか否かを判定し、
前記プリンタドライバが前記設定ファイルを有すると判定された場合、前記検出されたエラーに関する情報が、前記設定ファイルに記述されているか否かを判定することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第１表示処理により表示された前記第１通知ユーザインタフェースには、前記第１表示処理に基づいて表示される情報として、用紙に関する情報およびインクに関する情報の少なくとも１つが表示されることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第２表示処理により表示された前記第２通知ユーザインタフェースが操作されることにより、オペレーティングシステムに付属するアプリケーションの画面が前記第２アプリケーションの画面として表示されることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第１表示処理により表示される前記第１通知ユーザインタフェースの表示時間は、エラーの種類によって異なることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記第１アプリケーションの画面には、複数色のインクのインク残量に関する情報が含まれることを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
周辺装置と通信可能な情報処理装置において実行される方法であって、
前記周辺装置でのエラーの発生を検出する検出工程と、
前記検出されたエラーの発生に応じた表示処理として第１および第２表示処理からいずれか１つの表示処理を実行する実行工程と、を有し、
前記第１および第２表示処理の両者が前記エラーに対応する情報を表示できる場合、前記実行工程は、前記第１および第２表示処理から前記第１表示処理を実行し、
前記第１表示処理に基づいて表示される第１通知ユーザインタフェースに含まれる情報は、前記第２表示処理に基づいて表示される第２通知ユーザインタフェースに含まれる情報とは異なると共にエラーの内容に関する情報を含み、
前記第１表示処理により表示された前記第１通知ユーザインタフェースが操作されることにより、前記第１通知ユーザインタフェースに対応付けられた第１アプリケーションの画面が表示され、前記第２表示処理により表示された前記第２通知ユーザインタフェースが操作されることにより、前記第２通知ユーザインタフェースに対応付けられた第２アプリケーションの画面が表示され、
前記第１アプリケーションの画面に表示される情報と、前記第２アプリケーションの画面に表示される情報は異なる、
ことを特徴とする方法。
【請求項９】
周辺装置でのエラーの発生を検出する検出手段と、
前記検出されたエラーの発生に応じた表示処理として第１および第２表示処理からいずれか１つの表示処理を実行する実行手段と、してコンピュータを機能させるためのプログラムであって、
前記第１および第２表示処理の両者が前記エラーに対応する情報を表示できる場合、前記実行手段は、前記第１および第２表示処理から前記第１表示処理を実行し、
前記第１表示処理に基づいて表示される第１通知ユーザインタフェースに含まれる情報は、前記第２表示処理に基づいて表示される第２通知ユーザインタフェースに含まれる情報とは異なると共にエラーの内容に関する情報を含み、
前記第１表示処理により表示された前記第１通知ユーザインタフェースが操作されることにより、前記第１通知ユーザインタフェースに対応付けられた第１アプリケーションの画面が表示され、前記第２表示処理により表示された前記第２通知ユーザインタフェースが操作されることにより、前記第２通知ユーザインタフェースに対応付けられた第２アプリケーションの画面が表示され、
前記第１アプリケーションの画面に表示される情報と、前記第２アプリケーションの画面に表示される情報は異なる、
ことを特徴とするプログラム。
【請求項１０】
印刷ジョブを前記周辺装置に送信するプリンタドライバと、
前記エラーの発生に対応する情報が前記プリンタドライバに設定されているか否かを判定する判定手段と、してコンピュータを更に機能させ、
前記エラーの発生に対応する情報が前記プリンタドライバに設定されていると判定された場合、前記実行手段は、前記第１および第２表示処理から前記第１表示処理を実行することを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記判定手段は、前記プリンタドライバが設定ファイルを有するか否かを判定し、
前記プリンタドライバが前記設定ファイルを有すると判定された場合、前記検出されたエラーに関する情報が、前記設定ファイルに記述されているか否かを判定することを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記第１表示処理により表示された前記第１通知ユーザインタフェースには、前記第１表示処理に基づいて表示される情報として、用紙に関する情報およびインクに関する情報の少なくとも１つが表示されることを特徴とする請求項９乃至１１のいずれか１項に記載のプログラム。
【請求項１３】
前記第２表示処理により表示された前記第２通知ユーザインタフェースが操作されることにより、オペレーティングシステムに付属するアプリケーションの画面が前記第２アプリケーションの画面として表示されることを特徴とする請求項９乃至１２のいずれか１項に記載のプログラム。
【請求項１４】
前記第１表示処理により表示される前記第１通知ユーザインタフェースの表示時間は、エラーの種類によって異なることを特徴とする請求項９乃至１３のいずれか１項に記載のプログラム。
【請求項１５】
前記第１アプリケーションの画面には、複数色のインクのインク残量に関する情報が含まれることを特徴とする請求項９乃至１４のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周辺装置に対応するドライバを有する情報処理装置、方法およびプログラムに関する。
【背景技術】
【０００２】
従来から、プリンタなどの周辺装置で発生したエラーなどのメッセージをユーザに通知する技術がある。特許文献１には、エラー発生時、固定のデータの表示に加えて、プリンタが利用されている環境に応じた特有のメッセージを通知する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−８６０９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
Ｗｉｎｄｏｗｓ（登録商標）８から、ｖ４プリンタドライバという新しい印刷アーキテクチャが導入されている。新しい印刷アーキテクチャでは、プリンタベンダは、設定ファイルに、紙無しエラーやカバーオープンなど検知したいプリンタのステータスを記述しておくことができる。プリンタが所定の状態になると、その所定の状態に対応したトーストと呼ばれる通知ＵＩがＯＳ画面に表示されて、ユーザに注意を促す。さらに、ユーザがトーストをクリックするとｖ４プリンタドライバに対応づけられたステータス表示用のアプリケーションが起動され、より詳細な情報をユーザに提供する。
【０００５】
しかしながら、ＯＳも上記トーストとは別に独自でトーストを表示することが可能である。ユーザがこのトーストをクリックすると、チャームとよばれるＯＳのアプリケーションが起動する。ＯＳのチャームは、プリンタの汎用的な情報を表示する。
【０００６】
つまり、１つのエラーに対して、（１）プリンタベンダのトースト、（２）ＯＳのトースト、の２種類のトーストが表示されることになり、ユーザに煩わしさを感じさせてしまう。また、ユーザがどちらのトーストをクリックするかによって、得られる情報に差がでてしまうこともある。
【０００７】
例えば（１）のトーストがクリックされると、ユーザは、印刷ジョブの送信先であるプリンタで発生している状態について詳細な情報を得ることができる。例えば、紙無しエラーが発生している場合、ユーザはそのエラーの対処方法を知ることが可能である。一方、（２）のトーストがクリックされると、ユーザは、エラーの発生自体は分かるものの、エラーの対処方法などの詳細情報を得ることができず、どのようにエラーに対処したらよいのかを知ることができない。特許文献１では、固定のエラーメッセージ表示に加えて、プリンタが利用されている環境に応じた追加のメッセージを表示することは記載されているが、ＯＳの表示するエラーメッセージとの切り替えについては記載されていない。
【０００８】
本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、周辺装置のエラーの発生に対応した処理の実行を適切に制御する情報処理装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明に係る情報処理装置は、周辺装置と通信可能な情報処理装置であって、前記周辺装置でのエラーの発生を検出する検出手段と、前記検出されたエラーの発生に応じた表示処理として第１および第２表示処理からいずれか１つの表示処理を実行する実行手段と、を備え、前記第１および第２表示処理の両者が前記エラーに対応する情報を表示できる場合、前記実行手段は、前記第１および第２表示処理から前記第１表示処理を実行し、前記第１表示処理に基づいて表示される第１通知ユーザインタフェースに含まれる情報は、前記第２表示処理に基づいて表示される第２通知ユーザインタフェースに含まれる情報とは異なると共にエラーの内容に関する情報を含み、前記第１表示処理により表示された前記第１通知ユーザインタフェースが操作されることにより、前記第１通知ユーザインタフェースに対応付けられた第１アプリケーションの画面が表示され、前記第２表示処理により表示された前記第２通知ユーザインタフェースが操作されることにより、前記第２通知ユーザインタフェースに対応付けられた第２アプリケーションの画面が表示され、前記第１アプリケーションの画面に表示される情報と、前記第２アプリケーションの画面に表示される情報は異なる、ことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、周辺装置のエラーの発生に対応した処理の実行を適切に制御することができる。
【図面の簡単な説明】
【００１１】
【図１】情報処理装置とプリンタのハードウェア構成を示す図である。
【図２】情報処理装置のソフトウェアのモジュール構成を示す図である。
【図３】ＯＳのトースト及びチャームの構成を示す図である。
【図４】プリンタベンダのトーストの表示を示す図である。
【図５】プリンタベンダのステータス表示アプリケーションの表示を示す図である。
【図６】設定ファイルの記述を示す図である。
【図７】メッセージＩＤとメッセージとの対応を示す図である。
【図８】トースト起動の制御の手順を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
【００１３】
図１は、システムの概略構成を示すブロック図である。図１に示すシステムにおいて、情報処理装置１００として、例えば一般的なＰＣが用いられる。情報処理装置１００は、ＲＡＭ１０１、外部記憶装置（ＨＤＤ）１０２、ポインティングデバイスやキーボード等の入力装置１０３、ＣＰＵ１０４、ネットワークボード（ＮＢ）１０５、表示用ディスプレイ（ＬＣＤ）１０６、インタフェース部１０８を含む。また、バス１０７は、上記の各ブロックを互いに通信可能に接続する。
【００１４】
ＲＡＭ１０１は、例えば、ＣＰＵ１０４のワークメモリとして用いられる。外部記憶装置１０２には、アプリケーションプログラム群とＯＳ、プリンタドライバやその他各種のデータやプログラムが記憶される。例えば、外部記憶装置１０２に記憶されているプログラムがＣＰＵ１０４によりＲＡＭ１０１に読み出されて実行されることにより、本実施形態の動作が実現される。
【００１５】
入力装置１０３は、データの入力あるいは装置の動作の指示のためのユーザ操作を受け付ける。表示用ディスプレイ１０６は、情報処理装置１００に接続されるプリンタ又は情報処理装置１００の状態の表示や、タッチパネル等による画面上でのユーザからの指示受付のために用いられる。ネットワークボード１０５は、ネットワークを介した通信を行い、ＬＡＮ等のネットワーク１０９と接続されている。なお、ネットワークは、有線／無線だけでなく、インタフェース部１０８を介するＵＳＢや赤外線等の通信経路であってもよい。
【００１６】
また、ＣＰＵ１０４は、表示用ディスプレイ１０６上に表示されたＧＵＩ上のカーソルや、入力装置１０３のキーボードでのキー入力に応じて、外部記憶装置１０２のプログラムを実行してウインドウを表示し、種々のデータ処理を実行する。ＣＰＵ１０４は、外部記憶装置１０２に記憶されているプログラムを実行することによって、図２に示されるような情報処理装置１００のソフトウェア構成及び後述するフローチャートの各処理を実現する。
【００１７】
周辺装置１１０は、例えばプリンタであり、ネットワークボード１１１、ＲＡＭ１１２、ＲＯＭ１１３、ＣＰＵ１１４、印刷エンジン１１５を含む。また、バス１１６は、上記の各ブロックを互いに通信可能に接続する。ネットワークボード１１１は、ネットワークボード１０５と同様に、ネットワーク１０９に接続される。ＲＯＭ１１３には、制御プログラムやデータなどが記憶されている。ＣＰＵ１１４は、ＲＯＭ１１３に記憶されている制御プログラムに従ってプリンタ１１０を制御する。ＲＡＭ１１２は、ＣＰＵ１１４のワークメモリとして用いられ、外部から受信したデータを一旦保持する受信バッファとしても用いられる。印刷エンジン１１５は、ＲＡＭ１１２に記憶されたデータに基づいて印刷を実行する。以下、周辺装置１１０をプリンタ１１０と呼ぶ。
【００１８】
本実施形態では、周辺装置１１０がプリンタであるとして説明するが、スキャン機能やＦＡＸ機能、送信機能等、複数の機能が一体化された多機能周辺装置（ＭＦＰ）であっても良い。
【００１９】
図２は、情報処理装置１００上で動作するＯＳ（オペレーティングシステム）２００、およびＯＳ２００上で動作するソフトウェアのモジュール構成を示す図である。本実施形態では、周辺装置１１０がプリンタである場合を説明するので、図２は、印刷処理に関係するモジュール構成を主に示している。周辺装置１１０が例えばスキャナである場合には、プリンタドライバの代わりに、スキャナドライバ等、スキャン処理に関係するモジュール構成となる。図２の各モジュールは、外部記憶装置１０２に記憶されている。図２に示す各モジュールは、必要に応じてＲＡＭ１０１にロードされ、情報処理装置１００のＣＰＵ１０４により実行される。
【００２０】
ポートモニタ２０１は、ネットワーク１０９を経由してプリンタ１１０へ印刷ジョブを送信したり、プリンタ１１０からプリンタ１１０のステータス情報（状態情報）を取得する。印刷サブシステム２０２は、ＯＳの印刷機能を実行する。ｖ４プリンタドライバ２０３は、Ｗｉｎｄｏｗｓ８以降のＯＳで使用されるプリンタドライバであり、設定ファイル２０４を含む。ｖ４プリンタドライバ２０３が作成した印刷ジョブは、印刷サブシステム２０２からポートモニタ２０１を経由してプリンタ１１０に送信される。
【００２１】
設定ファイル２０４は、プリンタ１１０の状態変化と、対応するアクションとが相互に関連付けられたファイルであり、例えば、トーストを表示する条件や表示するメッセージを識別するＩＤが記述されている。例えば、設定ファイル２０４として、ＢｉｄｉＥｘｔｅｎｓｉｏｎファイルには、各スキーマにどのプリンタのステータスを割り当てるかが対応付けられて記述されている。
【００２２】
トースト２０６及び２０７は、プリンタ１１０の状態をユーザに通知するトーストと呼ばれる通知ユーザインタフェース（ＵＩ）である。トースト２０６は、ＯＳ２００により提供される。一方、トースト２０７は、ｖ４プリンタドライバ用に表示される。トースト２０７の表示条件や表示内容は、設定ファイル２０４に記述されている。チャーム２０５は、トースト２０６がクリックされることで表示される、ＯＳ付属のアプリケーションである。ステータス表示アプリケーション２０８は、プリンタベンダのトースト２０７がクリックされることで表示される。ステータス表示アプリケーション２０８も、ｖ４プリンタドライバ用に用意される。
【００２３】
図３は、ＯＳ２００のデスクトップＵＩ３００に表示されるＯＳ２００のトースト２０６とチャーム２０５の一例を示す図である。表示項目３０１は、ＯＳ２００のトースト２０６である。ｖ４プリンタドライバ２０３を用いて送信された印刷ジョブの印刷中にプリンタ１１０でエラーが発生すると、印刷サブシステム２０２が表示項目３０１を表示する。表示項目３０１で表示されるメッセージは予め規定されており、プリンタベンダは、発生するエラーの種類に応じて最適なメッセージにカスタマイズすることはできない。
【００２４】
表示項目３０２は、表示項目３０１がユーザにより操作（クリック）されることで表示されるチャームと呼ばれるＯＳ付属のアプリケーションであり、図２のチャーム２０５に対応する。表示項目３０２では、表示項目３０１よりも詳細なエラーの内容が表示される。紙無しエラーなど、どのプリンタでも発生する可能性のある一般的なエラーについては、表示項目３０２で表示可能である。しかしながら、エラーの解除方法などはプリンタ毎に固有であるので、表示項目３０２には表示されない。また、特定用途のプリンタで発生する特殊なエラーについても、その内容は表示されることができない。
【００２５】
図４は、ＯＳ２００のデスクトップＵＩ３００に表示されるプリンタベンダのトースト２０７の一例を示す図である。表示項目４００は、プリンタベンダのトーストであり、ｖ４プリンタドライバ２０３を用いて送信された印刷ジョブの印刷中にプリンタ１１０でエラーが発生すると、印刷サブシステム２０２が表示項目４００を表示する。表示項目４００は、図２のトースト２０７に対応する。表示項目４００で表示されるメッセージでは、プリンタベンダは、プリンタに最適な内容のメッセージをエラーの種類ごとに割り当てることが可能である。発生したエラーと表示項目４００の表示内容の対応関係は、プリンタベンダにより規定される。これらの表示メッセージと表示条件は、設定ファイル２０４に記述されている。
【００２６】
図５は、ＯＳ２００のデスクトップＵＩ３００に表示されるステータス表示アプリケーションの一例を示す図である。ステータス表示アプリケーション５００は、表示項目４００が操作（例えばクリック）されると表示される。ステータス表示アプリケーション５００は、図２のステータス表示アプリケーション２０８に対応し、ｖ４プリンタドライバ用に用意される。ここで、ｖ４プリンタドライバとステータス表示アプリケーション５００の関係について説明する。本願で説明しているＯＳにより提供されるプリント環境には、いくつかの制約が設けられている。例えば、ｖ４プリンタドライバは、印刷設定画面等の画面を表示する処理が許可されていない。つまり、ｖ４プリンタドライバは、印刷設定画面等の画面を表示する処理が制限されている。そのため、印刷設定画面はＯＳにより提供される。また、ユーザが、ＯＳにより提供される印刷設定画面よりも詳細な印刷設定情報を設定する場合、ＯＳの印刷設定画面において詳細設定を指示する。この指示を受けると、選択されたｖ４プリンタドライバに対応するステータス表示アプリケーションが備える印刷設定画面が表示される。なお、ステータス表示アプリケーションの印刷設定画面は、ＯＳにより提供される印刷設定画面よりも詳細な印刷設定情報を選択可能である。例えば、ステータス表示アプリケーションの印刷設定画面は、ＯＳにより提供される印刷設定画面では設定できない設定項目についても印刷設定情報の設定を受け付ける。また、ステータス表示アプリケーションは、ｖ４プリンタドライバのインストールに連動して情報処理装置にインストールされる。そして、ｖ４プリンタドライバとステータス表示アプリケーションは、識別情報により関連づけられる。
【００２７】
図５の説明に戻る。表示項目５０１には、印刷ジョブの送信先である対象プリンタ１１０のステータスが表示される。つまり、図４の表示項目４００が表示されるきっかけとなったエラーステータス情報を送信したプリンタが、対象プリンタ１１０である。図５では、対象プリンタ１１０で発生しているエラーコードが表示されている。表示項目５０２では、エラーコードに対応したメッセージが表示されている。ユーザはこのメッセージを見ることで、発生しているエラーに対してどのように対処すればよいのかを知ることができる。表示項目５０３は、ユーザマニュアルへのリンクボタンであり、ユーザにより押下されると、エラーについて詳細に解説してあるマニュアルが表示される。マニュアルは、ＯＳ２００にローカルにインストールされているマニュアルデータを表示しても良いし、インターネット上にあるＷｅｂマニュアルデータをダウンロードして表示しても良い。
【００２８】
表示項目５０４は、印刷ジョブのリストであり、対象プリンタ１１０で実行されているジョブのリストが表示されている。表示項目５０５は、対象プリンタ１１０に搭載されているインク残量がグラフィカルに表示されている。例えば、図５では、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（ＢＫ）の各インク残量について示されている。インク無しエラーが発生している場合、ユーザは表示項目５０５を見ることによりどのインクが無くなっているのかを容易に判断することができる。
【００２９】
図６（ａ）は、設定ファイル２０４に記述される内容の一例を示す図である。図６（ａ）には、プリンタ１１０の状態を示すスキーマがどの値の時にトースト２０７が表示されるのかについての情報と、そのとき表示されるメッセージのメッセージＩＤとが対応付けられて記述されている。記述６０１では、スキーマ”￥Ｐｒｉｎｔｅｒ．Ｓｔａｔｕｓ．Ｓｕｍｍａｒｙ：ＳｔａｔｅＲｅａｓｏｎ”の値が、”ＵｓｅｒＡｃｔｉｏｎＲｅｑｕｉｒｅｄ”の場合にトースト２０７が表示されることが記述されている。記述６０２では、スキーマ”￥Ｐｒｉｎｔｅｒ．Ｓｔａｔｕｓ．Ｓｕｍｍａｒｙ：ＳｔａｔｅＲｅａｓｏｎ”の値が”ＭｅｄｉａＪａｍ”の場合にトースト２０７が表示されることが記述されている。記述６０３では、スキーマ”￥Ｐｒｉｎｔｅｒ．Ｓｔａｔｕｓ．Ｓｕｍｍａｒｙ：ＳｔａｔｅＲｅａｓｏｎ”の値が”ＭｅｄｉａＥｍｐｔｙ”の場合にトースト２０７が表示されることが記述されている。記述６０４では、スキーマ”￥Ｐｒｉｎｔｅｒ．Ｓｔａｔｕｓ．Ｓｕｍｍａｒｙ：ＳｔａｔｅＲｅａｓｏｎ”の値が”ＩｎｋＥｍｐｔｙ”の場合に、トースト２０７が表示されることが記述されている。
【００３０】
図６のそれぞれの条件において、トースト２０７に表示されるメッセージのメッセージＩＤはそれぞれ図７に示す”１０００”、”２０００”、”３０００”、”４０００”である。このＩＤにより、エラーの種類に応じて最適なメッセージが表示される。図７は、メッセージＩＤとメッセージとの対応を示す図である。図７に示すようにメッセージＩＤ毎に異なるメッセージが割り当てられており、エラーの種類に応じて最適なメッセージが定義される。
【００３１】
図６（ｂ）は、設定ファイル２０４に記述される内容の他の一例を示す図である。図６（ｂ）は、トースト２０７が表示される時間をＤｉｓｐｌａｙＴｉｍｅ＝”５”といった形式でトーストの種類毎にさらに指定している点で、図６（ａ）と異なる。記述６０５、６０６、６０７、６０８は、スキーマ”￥Ｐｒｉｎｔｅｒ．Ｓｔａｔｕｓ．Ｓｕｍｍａｒｙ：ＳｔａｔｅＲｅａｓｏｎ”の値により、トースト２０７がＯＳ２００のデスクトップＵＩ３００に表示される時間が異なることを記述している。例えば、トースト２０７の表示時間は、”ＵｓｅｒＡｃｔｉｏｎＲｅｑｕｉｒｅｄ”の場合は５秒である。また、”ＭｅｄｉａＪａｍ”の場合は１０秒である。また、”ＭｅｄｉａＥｍｐｔｙ”の場合は１０秒である。また、”ＩｎｋＥｍｐｔｙ”の場合は５秒である。
【００３２】
図８は、トースト起動の制御の手順を示すフローチャートである。図８のフローチャートの動作は、例えば、ＣＰＵ１０４がＯＳの印刷サブシステム２０２に関係するプログラムをメモリから読み出して実行することで実現される。しかしながら、ＯＳの他のモジュールにより実行されても良い。また、図８のフローチャートは、ｖ４プリンタドライバが印刷ジョブをプリンタ１１０に送信することで開始される。詳細には、プリンタ１１０に対応する情報処理装置のプリントキューに印刷ジョブが存在する間、図８の処理が継続的に実行されることになる。なお、プリントキューとは、プリンタドライバをインストールすることにより情報処理装置に作られる。プリンタドライバを用いて印刷する場合、印刷ジョブは、プリントキューを介してプリンタに送信される。
【００３３】
ＣＰＵ１０４は、プリンタ１１０のエラー検知処理を行う（Ｓ８０１）。例えば、上述した通り、ｖ４プリンタドライバが印刷ジョブをプリンタ１１０に送信する。この印刷ジョブを受信したプリンタ１１０が、印刷中に、用紙切れ、インク無し、またはその他のエラーによって印刷ジョブを正常に実行できなくなった場合、エラーが発生したことを示す情報を印刷ジョブの送信元に送信する。ＣＰＵ１０４が、エラーが発生したことを示す情報を受信したか否かを判定することでＳ８０１が実現される。ここでは、プリンタ１１０に固有のエラーコードによらなくても検知可能な範囲での一般的なエラー検知処理が行われる。例えば、プリンタ１１０がＵＳＢプリンタである場合、ＵＳＢプリンタクラス用に定義されているＧＥＴ＿ＰＯＲＴ＿ＳＴＡＴＵＳリクエストにより、紙無しエラーが発生しているかを検知することができる。
【００３４】
周辺装置１１０がＷＳＤ（Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  ｆｏｒ  Ｄｅｖｉｃｅｓ）プリンタの場合、ＷＳＤプリンタ用に定義されているＰｒｉｎｔｅｒＳｔａｔｕｓＣｏｎｄｉｔｉｏｎＥｖｅｎｔにより、紙無しエラーが発生しているかを検知することができる。ＰｒｉｎｔｅｒＳｔａｔｕｓＣｏｎｄｉｔｉｏｎＥｖｅｎｔは、プリンタの状態が変化したときにＷＳＤプリンタからＯＳに送信されるイベントであり、紙無しエラーの場合は、”ＭｅｄｉａＮｅｅｄｅｄ”の値がプリンタからＯＳへ送信される。従って、その値を検出することにより、エラーの発生が検知される。
【００３５】
このように、ＣＰＵ１０４は、プリンタ１１０に固有のエラーコードによらなくても、ＵＳＢプリンタクラスやＷＳＤプリンタ用に定義されている一般的な情報を用いて、プリンタ１１０のエラー検知処理を行うことができる。また、これらの方法以外にも印刷データをプリンタ１１０に書き込めるか否かによりエラーが発生しているかを判定する方法が用いられても良い。
【００３６】
Ｓ８０２において、ＣＰＵ１０４は、プリンタ１１０でエラーが発生しているか否かを判定する。ここで、エラーが発生していないと判定された場合、図８の処理を終了する。一方、エラーが発生していると判定された場合、Ｓ８０３に進み、ＣＰＵ１０４は、プリンタ１１０のスキーマを取得する。
【００３７】
プリンタ１１０のスキーマとは、図６で説明したようにプリンタ１１０の状態（ステータス）を表す情報である。スキーマを取得する処理として、例えば、ＣＰＵ１０４が、印刷サブシステム２０２を用いてプリンタ１１０の記憶領域に記憶されているエラー情報データを取得しても良い。エラー情報データは、プリンタの状態を示す識別情報を含む。
【００３８】
Ｓ８０４において、ＣＰＵ１０４は、設定ファイル２０４があるか否かを判定する。ここで、設定ファイル２０４がないと判定された場合、Ｓ８０８に進む。Ｓ８０８においては、ＣＰＵ１０４は、ＯＳ２００のトースト２０６の表示処理を実行する。一方、設定ファイル２０４があると判定された場合はＳ８０５に進む。なお、本願では、ＣＰＵ１０４が、ｖ４プリンタドライバに設定ファイル２０４が含まれるか否かを判定することでＳ８０４が実現される。しかしながら、その他の方法として、ＣＰＵ１０４が、ステータス表示アプリケーション２０８に設定ファイル２０４が含まれるか否かを判定することでＳ８０４が実現されても良い。
【００３９】
Ｓ８０５において、ＣＰＵ１０４は、設定ファイル２０４を参照する。そして、ＣＰＵ１０４は、Ｓ８０６において、Ｓ８０３で取得したスキーマと一致する記述が設定ファイルに含まれるか否かを判定する。ここで、一致する記述があると判定された場合、Ｓ８０７において、ＣＰＵ１０４は、その記述されている内容に従って、プリンタベンダのトースト２０７の表示処理を実行する。一方、一致する記述がないと判定された場合、Ｓ８０８において、ＣＰＵ１０４は、ＯＳのトースト２０６の表示処理を実行する。Ｓ８０７及びＳ８０８の処理後、図８の処理を終了する。なお、上述したように、プリントキューに印刷ジョブが存在する間は、図８の処理が繰り返し実行される。そして、印刷ジョブの送信が完了することでプリントキューから印刷ジョブが削除された場合、図８の処理が終了する。なお、プリントキューから印刷ジョブが削除されるタイミングとしては、例えば、プリンタ１１０から印刷完了通知を受信することでプリントキューから印刷ジョブが削除されても良い。
【００４０】
以上のように、本実施形態では、１つのエラーに対して、（１）プリンタベンダのトースト２０７によるトースト表示、（２）ＯＳ２００のトースト２０６によるトースト表示、のうち、いずれを実行するかが決定される。そして、決定されたいずれかの種類のトースト表示処理が実行される。その結果、複数のトーストが表示されることにより、ユーザに煩わしさを感じさせることを防ぐことができる。また、本実施形態では、プリンタベンダのトーストが、ＯＳのトーストに優先して表示されることを説明した。しかしながら、優先対象のドライバのトースト（例えば、プリンタドライバのトースト）が、そのドライバ以外の部分で設定されるトーストに優先されるのであれば、ＯＳのトーストに優先して表示される構成に限られない。例えば、異なるベンダーに各対応するドライバ間で優先順が決定されても良い。
【００４１】
また、本実施形態では、図８のフローチャートの処理は、ＣＰＵ１０４がＯＳの印刷サブシステム２０２に関係するプログラムをメモリから読み出して実行することで実現されると説明した。しかしながら、ＣＰＵ１０４がｖ４プリンタドライバ２０３をメモリから読み出して実行することで実現されても良い。ｖ４プリンタドライバ２０３を用いて実現する場合には、周辺装置１１０において発生したエラーが印刷サブシステム２０２を介してｖ４プリンタドライバに提供されることで図８の処理が開始される。
【００４２】
本実施形態では、プリンタベンダのトースト２０７が表示可能な場合、プリンタベンダのトースト２０７がＯＳ２００のトースト２０６に優先して表示される。ユーザがプリンタベンダのトースト２０７をクリックすると、ステータス表示アプリケーション２０８が起動される。ステータス表示アプリケーション２０８は、エラーに関してトースト２０７よりも、より詳細なメッセージを表示可能である。そして、ユーザが例えばステータス表示アプリケーション２０８のユーザマニュアルへのリンクボタン５０３を押下すると、発生しているエラーに関するマニュアルを表示する。なお、マニュアルは、ステータス表示アプリケーション２０８を用いて表示されても良いし、リンクボタン５０３が操作されることで起動されるブラウザに表示されても良い。その結果、ユーザは、より詳細な情報を入手することができる。また、設定ファイル２０４に表示時間を予め長めに記述しておくことにより、特にユーザに見て欲しいトーストを長めに表示することも可能となる。つまり、図３のトースト表示処理および図４のトースト表示処理の両者が１つのエラーに対応可能な場合、ＣＰＵ１０４は、図４のプリンタベンダのトーストを優先的に表示する。その結果、図４のトーストがユーザにより操作されることで図５を用いた詳細なエラーに関する情報が表示される。具体的には、図３のトーストがユーザにより操作された場合、単に表示項目３０２として「用紙なし」というメッセージが表示されるのみである。
【００４３】
一方、図４のトーストがユーザにより操作された場合、図５の画面が表示される。この図５のメッセージ５０２により「用紙なし」という情報に加えて「用紙の補充」に関する情報も表示される。さらに、図５の５０３が選択された場合、さらに詳細な情報が表示される。よって、図４のトースト表示処理に基づいて表示される情報量は、図３の表示処理に基づいて表示される情報量よりも多いことが明らかである。なお、図４のプリンタベンダのトースト２０７に対応する表示項目４００内に、「用紙なし」、「用紙の補充」に関する情報および「用紙の補充方法」など、詳細な情報が含まれることで、図３の表示処理よりも詳細な情報が表示されても良い。
【００４４】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００４５】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００４６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき実行されても良い。その場合、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれる。
【００４７】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた後、そのプログラムコードの指示に基づき実行されても良い。その場合、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【符号の説明】
【００４８】
１０４、１１４  ＣＰＵ：  １０１  ＲＡＭ：  １０２  ＨＤＤ
【図１】
0006418991.tif 000002
【図２】
0006418991.tif 000003
【図３】
0006418991.tif 000004
【図４】
0006418991.tif 000005
【図５】
0006418991.tif 000006
【図６】
0006418991.tif 000007
【図７】
0006418991.tif 000008
【図８】
0006418991.tif 000009