(57)【特許請求の範囲】
【請求項１】
プリンタのファームウエア関連情報を取得するためにファームウエア関連情報の問い合わせをプリンタに送信する送信手段と、
ファームウエア関連情報を取得できたか判別する判別手段と、
前記判別手段によりファームウエア関連情報を取得できたと判別された場合、取得できたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示し、前記判別手段によりファームウエア関連情報を取得できないと判別された場合、手動でファームウエア関連情報を入力させるための画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示する表示手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記手動でファームウエア関連情報を入力させるための画面は、プリンタによりステータスページを出力することによりファームウエア関連情報が取得できることを示すメッセージを含むことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記表示手段は、前記判別手段によりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示し、ファームウエア関連情報を手動で入力させる画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示することを特徴とする請求項１または２記載の情報処理装置。
【請求項４】
前記表示手段は、前記判別手段によりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示し、機能設定ボタンを含むデバイス設定シートを表示し、機能設定ボタンが指示された際にファームウエア関連情報を手動で入力させる機能設定画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示することを特徴とする請求項１または２記載の情報処理装置。
【請求項５】
前記ファームウエア関連情報は、ファームウエアＩＤ及びバージョンを含むことを特徴とする請求項１乃至４いずれかに記載の情報処理装置。
【請求項６】
プリンタのファームウエア関連情報を取得するためにファームウエア関連情報の問い合わせをプリンタに送信する送信ステップと、
ファームウエア関連情報を取得できたか判別する判別ステップと、
前記判別ステップによりファームウエア関連情報を取得できたと判別された場合、取得できたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示し、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、手動でファームウエア関連情報を入力させるための画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示する表示ステップとを有することを特徴とするユーザインターフェースを制御する方法。
【請求項７】
前記手動でファームウエア関連情報を入力させるための画面は、プリンタによりステータスページを出力することによりファームウエア関連情報が取得できることを示すメッセージを含むことを特徴とする請求項６記載のユーザインターフェースを制御する方法。
【請求項８】
前記表示ステップは、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示し、ファームウエア関連情報を手動で入力させる画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示することを特徴とする請求項６または７記載のユーザインターフェースを制御する方法。
【請求項９】
前記表示ステップは、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示し、機能設定ボタンを含むデバイス設定シートを表示し、機能設定ボタンが指示された際にファームウエア関連情報を手動で入力させる機能設定画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示することを特徴とする請求項６または７記載のユーザインターフェースを制御する方法。
【請求項１０】
前記ファームウエア関連情報は、ファームウエアＩＤ及びバージョンを含むことを特徴とする請求項６乃至９いずれかに記載のユーザインターフェースを制御する方法。
【請求項１１】
プリンタのファームウエア関連情報を取得するためにファームウエア関連情報の問い合わせをプリンタに送信する送信ステップと、
ファームウエア関連情報を取得できたか判別する判別ステップと、
前記判別ステップによりファームウエア関連情報を取得できたと判別された場合、取得できたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させ、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、手動でファームウエア関連情報を入力させるための画面を表示させ、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させる表示ステップと
をコンピュータに実行させるためのコンピュータプログラムを記憶したコンピュータ可読記憶媒体。
【請求項１２】
前記手動でファームウエア関連情報を入力させるための画面は、プリンタによりステータスページを出力することによりファームウエア関連情報が取得できることを示すメッセージを含むことを特徴とする請求項１１記載のコンピュータ可読記憶媒体。
【請求項１３】
前記表示ステップは、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示させ、ファームウエア関連情報を手動で入力させる画面を表示させ、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させることを特徴とする請求項１１または１２記載のコンピュータ可読記憶媒体。
【請求項１４】
前記表示ステップは、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示させ、機能設定ボタンを含むデバイス設定シートを表示させ、機能設定ボタンが指示された際にファームウエア関連情報を手動で入力させる機能設定画面を表示させ、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させることを特徴とする請求項６または７記載のコンピュータ可読記憶媒体。
【請求項１５】
前記ファームウエア関連情報は、ファームウエアＩＤ及びバージョンを含むことを特徴とする請求項１１乃至１４いずれかに記載のコンピュータ可読記憶媒体。
【請求項１６】
プリンタのファームウエア関連情報を取得するためにファームウエア関連情報の問い合わせをプリンタに送信する送信ステップと、
ファームウエア関連情報を取得できたか判別する判別ステップと、
前記判別ステップによりファームウエア関連情報を取得できたと判別された場合、取得できたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させ、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、手動でファームウエア関連情報を入力させるための画面を表示させ、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させる表示ステップとをコンピュータに実行させるためのコンピュータプログラム。
【請求項１７】
前記手動でファームウエア関連情報を入力させるための画面は、プリンタによりステータスページを出力することによりファームウエア関連情報が取得できることを示すメッセージを含むことを特徴とする請求項１６記載のコンピュータプログラム。
【請求項１８】
前記表示ステップは、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示させ、ファームウエア関連情報を手動で入力させる画面を表示させ、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させることを特徴とする請求項１６または１７記載のコンピュータプログラム。
【請求項１９】
前記表示ステップは、前記判別ステップによりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示させ、機能設定ボタンを含むデバイス設定シートを表示させ、機能設定ボタンが指示された際にファームウエア関連情報を手動で入力させる機能設定画面を表示させ、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示させることを特徴とする請求項１６または１７記載のコンピュータプログラム。
【請求項２０】
前記ファームウエア関連情報は、ファームウエアＩＤ及びバージョンを含むことを特徴とする請求項１６乃至１９いずれかに記載のコンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般に、情報処理装置に接続される機器を制御するためのユーザインタフェースを提供する方法に係り、とりわけ、機器に搭載される更新可能なファームウエアの違いに応じてユーザインタフェースを提供する方法に関する。
【０００２】
【従来の技術】
従来のプリンタの中には、ファームウエアのアップデート（更新）が可能なものが存在する。ファームウエアをアップデートすると、例えば、新規な機能がプリンタに追加されたりする。しかしながら、ファームウエアをアップデートするだけでは、新規な機能を享受できない場合が多い。なぜなら、通常プリンタ側の機能はコンピュータ側で動作するプリンタドライバによって制御されるため、プリンタドライバもアップデートしなければ新規な機能を制御できないからである。従って、最新のファームウエアには最新のドライバが必要であり、逆に、最新のプリンタドライバには、最新のファームウエアが必要となる。
【０００３】
【発明が解決しようとする課題】
ところで、プリンタのファームウエアが古い場合であっても、現実には、コンピュータ側に最新のプリンタドライバをインストールすることができてしまう。すなわち、プリンタドライバとファームウエアとが対応していない場合が存在しうる。このような場合に、プリンタドライバの設定ダイアログを起動すると、古いファームウエアではサポートされていない新規の機能についても設定可能なようにユーザインタフェースが提供されてしまう。
【０００４】
従って、ユーザは、どの機能がサポートされているかを把握して、サポートされていない機能については設定を変更しないように注意しなければならない。
【０００５】
また、古いファームウエアではサポートされていない新規の機能を最新のプリンタドライバで設定されてしまうと、古いファームウエアのプリンタは未知の命令を受信することになり誤動作するおそれがある。
【０００６】
さらに、ファームウエアにより実現される機能が何であるかを把握するには、プリンタの外見を見ただけでは困難である。そのため、ユーザは特定の機能がサポートされているかどうかを容易に知ることが困難であった。
【０００７】
そこで、本願発明は、ファームウエアのバージョンとドライバのバージョンとの対応関係が一致していない場合における不都合を低減することを目的とする。
【０００８】
本発明は、プリンタのファームウエア関連情報を取得するためにファームウエア関連情報の問い合わせをプリンタに送信する送信手段と、ファームウエア関連情報を取得できたか判別する判別手段と、前記判別手段によりファームウエア関連情報を取得できたと判別された場合、取得できたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示し、前記判別手段によりファームウエア関連情報を取得できないと判別された場合、手動でファームウエア関連情報を入力させるための画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示する表示手段と
を有することを特徴とする。
【０００９】
また、本発明によれば、前記手動でファームウエア関連情報を入力させるための画面は、プリンタによりステータスページを出力することによりファームウエア関連情報が取得できることを示すメッセージを含むことを特徴とする。
【００１０】
また、本発明によれば、前記表示手段は、前記判別手段によりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示し、ファームウエア関連情報を手動で入力させる画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示することを特徴とする。
【００１１】
また、本発明によれば、前記表示手段は、前記判別手段によりファームウエア関連情報を取得できないと判別された場合、ファームウエア関連情報が取得できなかったことを表示し、機能設定ボタンを含むデバイス設定シートを表示し、機能設定ボタンが指示された際にファームウエア関連情報を手動で入力させる機能設定画面を表示し、手動で入力されたファームウエア関連情報に対応するプリンタの機能を設定するためのユーザインターフェースを表示することを特徴とする。
【００１２】
また、本発明によれば、前記ファームウエア関連情報は、ファームウエアＩＤ及びバージョンを含むことを特徴とする。
【００３４】
【発明の実施の形態】
以下に本願発明の一実施形態を示す。もちろん以下の実施形態は、本願発明の技術分野における当業者による実施を容易にするために開示を提供するものであり、特許請求の範囲によって確定される本願発明の技術的範囲に含まれるほんの一部の実施形態にすぎない。従って、本願明細書に直接的に記載されていない実施形態であっても、技術思想が共通する限り本願発明の技術的範囲に包含されることは当業者にとって自明であろう。
【００３５】
なお、便宜上複数の実施形態を記載するが、これらは個別に発明として成立するだけでなく、もちろん、複数の実施形態を適宜組み合わせることでも発明が成立することは、当業者であれば容易に理解できよう。
【００３６】
図１は、本実施形態に係る例示的なプリントシステムを示している。クライアントコンピュータ１０１， １０２は、コンピュータネットワーク１０４を介して、ネットワークプリンタ１０３に接続されている。クライアントコンピュータ１０１， １０２には、それぞれ、ネットワークプリンタ１０３を制御するためのプリンタドライバがインストールされている。また、ネットワークプリンタ１０３には更新可能なファームウエアがインストールされており、クライアントコンピュータ１０１， １０２から新規のファームウエアを転送することにより更新できる。
【００３７】
図２に、クライアントコンピュータ１０１，１０２とネットワークプリンタ１０３の例示的なブロック図を示す。クライアントコンピュータ１０１，１０２は、ＣＰＵ ２０１、ＲＯＭ ２０２、ＲＡＭ ２０３、システムバス２０４、Ｉ／Ｏコントローラ（ＣＲＴＣ（ＣＲＴ制御部）／ＨＤＣ（ハードディスクドライブ制御部）／ＦＤＣ（フレキシブルディスクドライブ制御部）／ｅｔｃ…）２０５、通信インタフェース２０６、ハードディスクドライブ（ＨＤＤ）、フレキシブルディスクドライブ（ＦＤＤ）２０７、ＣＲＴ２０８、キーボード・マウス２０９等を備える。ＣＰＵ２０１は、ＨＤＤ／ＦＤＤ２０７等からＲＡＭ２０３にロードしたアプリケーションプログラムや、プリンタドライバ、ＯＳ等に基づいて動作する。ＣＰＵ２０１は、例えば、電源投入時はＲＯＭ２０２に記憶されたブートプログラムに従って起動し、ＨＤＤ／ＦＤＤ２０７等からＯＳをＲＡＭ２０３にロードし、アプリケーションプログラムも同様にＲＡＭ２０３にロードすることで画像形成システムとして機能する。通信Ｉ／Ｆ２０６は、ＲＡＭ２０３やＨＤＤ２０７内にスプールされた印刷データを順次ネットワークプリンタ１０３に送信する。また、通信Ｉ／Ｆ２０６は、ネットワークプリンタ１０３に、新規のファームウエアを転送したり、ファームウエアの識別情報（ＩＤやバージョン情報など）の問い合わせ情報を送信したり、当該識別情報の印刷を指示する指示情報なども送信する。また、通信Ｉ／Ｆ２０６は、ネットワークプリンタ１０３から送信される当該識別情報を受信する。キーボード／マウス２０９は、Ｉ／Ｏ２０５を通して、ユーザからの指示データをクライアントコンピュータ内に取り込む。ＣＲＴ２０８は表示装置であり、Ｉ／Ｏ２０５内のＣＲＴＣにより制御される。これらのブロックＣＲＴ２０８、キーボード／マウス２０９によりユーザインタフェースを構成する。
【００３８】
一方、ネットワークプリンタ１０３には、クライアントコンピュータ１０１，１０２から印刷データ、ファームウエア、問い合わせ情報及び指示情報などを受信したり、ファームウエアに関する情報をクライアントコンピュータ１０１，１０２に送信する通信Ｉ／Ｆ部２１１、主として受信したプリンタデータを解釈し、印刷部で印刷するためのデータを生成する制御部２１２、印刷部Ｉ／Ｆ部２１３から出力されてきたデータを受け、実際に画像を形成するプリントエンジンとしての印刷部２１４で構成される。また、ＣＰＵ ２１６、ＲＯＭ ２１８、ＲＡＭ ２１７も備えられており、ＣＰＵ ２１６は、クライアントコンピュータ１０１、１０２から受信した問い合わせや指示に基づいて処理を実行する。ＲＯＭ ２１８は、ファームウエアと、そのＩＤ情報及びそのバージョン情報などを格納する。ファームウエアは更新可能とすべく、ＲＯＭ ２１８は、ＥＥＰＲＯＭなどで構成される。ＲＡＭ ２１７は、ＣＰＵ２１１のワークエリアである。図示してはいないが操作パネル等も具備している。
【００３９】
上記構成により、例えば、通信媒体（例：コンピュータネットワーク１０４）に接続されたプリンタと、前記通信媒体を介して該プリンタ（例：ネットワークプリンタ１０３）と接続される情報処理装置（例：クライアントコンピュータ１０１、１０２）とを含むプリントシステムであって、前記プリンタは、更新可能なファームウエアを記憶する第１の記憶手段（例：ＲＯＭ２１８、ＲＡＭ２１７）と、前記ファームウエアの識別情報を記憶する第２の記憶手段（例：ＲＯＭ２１８、ＲＡＭ２１７）と、前記識別情報を出力する出力手段（例：印刷部２１４、通信Ｉ／Ｆ２１２）とを備え、前記情報処理装置は、前記識別情報を入力するための入力手段（例：通信Ｉ／Ｆ２０６、キーボード・マウス２０９）と、前記入力された識別情報に対応するユーザインタフェースであって、前記プリンタに含まれる複数の機能を設定するためのユーザインタフェースを表示させる表示制御手段（例：ＣＰＵ２０１）とを備えることを特徴とするプリントシステムが提供される。
【００４０】
この構成によって、プリンタにインストールされている現在のファームウエアを把握し、より適したユーザインタフェースをユーザに提供できる。その結果、ユーザは、どの機能がサポートされているかを把握する必要性が低減し、サポートされていない機能については設定を変更しないように注意する必要性も減少しよう。例えば、新規の機能が追加されたファームウエアには、新規の機能を設定するためのユーザインタフェースを提供し、古いファームウエアには、新規の機能を設定するためのコントロールが含まれていないユーザインタフェースを提供するため、サポートされていない機能について設定される可能性が減り、古いファームウエアのプリンタの誤作動も減ることになろう。
【００４１】
図３は、ファームウエアＩＤとファームウエアバージョンについてのプリンタ及びプリンタドライバの内部データ形式の一例を示す図である。３０１はファームウエアＩＤの内部形式、３０２はファームウエアバージョンの内部形式である。これらの情報がファームウエアの識別情報として利用される。
【００４２】
図４は、ファームウエアＩＤとファームウエアバージョンのユーザに表現する形式であり、４０１はファームウエアＩＤの表現形式、４０２はファームウエアバージョンの表現形式である。
【００４３】
ファームウエアＩＤは唯一任意の１２８ビットの情報である。また、ファームウエアバージョンは１６ビットの情報であり、上位８ビットがメジャーバージョンを表し、下位８ビットがマイナーバージョンを表すものとする。本実施形態では、このように定義としているが、両者ともファームウエアの違いを識別できるものであればどのようなデータフォーマットを採用してもよいことは当業者であれば理解できよう。なお、説明ではファームウエアＩＤを適当な１２８ビットの値としているが、これは例示に過ぎない。従って、実装に際しては、他のプリンタと重複しないようにＵＵＩＤ（Ｕｎｉｖｅｒｓａｌ Ｕｎｉｑｕｅ ＩＤ、唯一であることが保証されている１２８ビットの数値）を使用してもよい。
【００４４】
ここで、ネットワークプリンタに搭載されているファームウエアのファームウエアＩＤを１６進数で次のように表現する。
【００４５】
０ｘ１２３４５６７８９０ＡＢＣＤＥＦ１２３４５６７８９０ＡＢＣＤＥＦ
また、ファームウエアバージョンは、「表紙／裏表紙挿入」機能がない古い方のファームウエアを０ｘ０１００と表現し、「表紙／裏表紙挿入」機能がある新しいファームウエアを０ｘ０２００と表現することにする。この場合、プリンタ及びプリンタドライバ内部での表現は、図３に示す通りであり、ファームウエアＩＤ３０１には０ｘ１２３４５６７８９０ＡＢＣＤＥＦ１２３４５６７８９０ＡＢＣＤＥＦが格納されており、ファームウエアバージョン３０２には０ｘ０１００あるいは０ｘ０２００が格納されるものとする。
【００４６】
また、これらはプリンタから出力されるプリンタ情報ページ及びプリンタドライバの機能設定ダイアログにも表示されることになるが、このときの表現は、図４に示すように、ファームウエアＩＤ４０１は、１２３４５６７８９０ＡＢＣＤＥＦ１２３４５６７８９０ＡＢＣＤＥＦとなり、ファームウエアバージョン４０２は、１．０あるいは２．０となる。なお、本実施形態ではファームウエアバージョンが０ｘ０１００、０ｘ０２００の２種類であり、またファームウエアバージョンによる機能差は「表紙／裏表紙挿入」機能のみとしているが、バージョン及び機能の種類は３以上であってもよいことは、当業者であれば理解できよう。
【００４７】
本実施形態においては、クライアントコンピュータ１０１， １０２に搭載されるプリンタドライバは、ファームウエアバージョン０ｘ０２００に対応しており、「表紙／裏表紙挿入」機能をサポートしているものとする。
【００４８】
ここで、このプリンタドライバは、ネットワークプリンタ１０３に搭載されているファームウエアバージョンに基づいて、「表紙／裏表紙挿入」機能をユーザインターフェース上で制御する必要がある。なお、「表紙／裏表紙挿入」機能は、プリンタドライバの設定ダイアログの給紙シートで設定するものとする。
【００４９】
図５は、本実施形態に係るプリンタドライバの処理フローチャートである。具体的には、プリンタドライバがネットワークを介して、ネットワークプリンタ１０３のプリンタ情報を自動取得する場合の処理に関するフローチャートである。例えば、プリンタドライバのデバイス設定画面でユーザに機種情報取得ボタンを押下された場合に図５のフローチャートに係るプログラムが実行される。この機種情報取得ボタンを押下し、プリンタからプリンタ情報を取得し、取得したプリンタ情報に応じてプリンタドライバで設定できるプリンタの機能を有効にしたり無効にしたりするのは、インストール時のプリンタドライバは古い機種に対応したデフォルトの設定になっているため新規機能が追加された新しいプリンタが接続されているのに新規機能をプリンタドライバで利用できなくなっているので、プリンタの情報を取得し、プリンタの機種、バージョンに対応した設定にする必要があるためである。
【００５０】
ステップＳ５０１において、ＣＰＵ２０１は、プリンタのファームウエアに関連する情報を取得すべく、ファームウエア関連情報を問い合わせるための問い合わせ情報を通信インタフェース２０６を介して、ネットワークプリンタ１０３に送信する。プリンタドライバをコンピュータ１０１にインストールした直後は、出力先として設定されているネットワークプリンタ１０３のファームウエアバージョンをプリンタドライバは把握していないため、ファームウエアに関連する情報を取得する必要があるのである。また、ファームウエアは随時更新が可能なため、プリンタドライバは現在のファームウエアが何であるかを知る必要があるのである。
【００５１】
図６は、デバイス機能を設定するためのダイアログの一例を示している図である。ユーザはプリンタドライバを適切な状態にするために、ネットワークプリンタのプリンタ情報の自動取得を行なう。図６に示すように、まずユーザはプリンタドライバ設定ダイアログ６０１のデバイスの設定シート６０６を表示させ、デバイス情報取得ボタン６１１を押下する。この押下により、プリンタドライバはネットワークプリンタ１０３のプリンタ情報の取得処理が開始される。なお、ファームウエア関連情報には、ファームウエアＩＤ及びファームウエアバージョンの他に、機器構成情報が含まれていてもよい。
【００５２】
ネットワークプリンタ１０３のＣＰＵ２１６は、通信インタフェース２１１を介して問い合わせ情報を受信すると、ＲＯＭ２１８からファームウエアＩＤとファームウエアのバージョン情報を読み出す。さらに、ＣＰＵ２１６は、ファームウエアＩＤとファームウエアのバージョン情報を通信インタフェース２１１を介してクライアントコンピュータに送信する。
【００５３】
ステップＳ５０２において、ＣＰＵ２０１は、通信インタフェース２０６により受信された情報を監視し、ファームウエアに関連する情報がネットワークプリンタ１０３から送信されてきたかを判定する。ファームウエアに関連する情報を取得できた場合は、ステップＳ５０３に移行し、そうでない場合は、ステップＳ５０７に移行する。
【００５４】
ステップＳ５０３乃至ステップＳ５０４は、プリンタの機能を特定し、適切なユーザインタフェースを選択するための処理である。あるいは、所定の機能が含まれているか否かを判定し、判定結果に基づいて、プリンタに含まれている機能についての設定コントロールを含むユーザインタフェースを表示させる処理ともいえよう。
【００５５】
ステップＳ５０３において、ＣＰＵ２０１は、取得されたファームウエアＩＤ及びファームウエアバージョンをプリンタドライバ内部に保存する。さらに、取得されたＩＤに対応するバージョン情報及び機能の有無情報を図７に示すファームウエア管理テーブル７００から検索して抽出する。ファームウエア管理テーブル７００は、ＨＤＤ２０７などいずれかの記憶装置に格納されているものとする。取得され機器構成情報はＣＰＵ２０１により、ユーザインターフェースに反映される。なお、ファームウエア管理テーブル７００に、ユーザインタフェースを特定するためのユーザインタフェースＩＤを登録しておいてもよい。すなわち、ユーザインタフェースＩＤに基づいて、対応するユーザインタフェースを選択することも可能である。
【００５６】
ステップＳ５０４において、ＣＰＵ２０１は、受信されたファームウエア関連情報からファームウエアバージョン情報を抽出し、ファームウエア管理テーブルから読み出されたバージョン情報と比較することで、「表紙／裏表紙挿入」機能の有無を判定する。「表紙／裏表紙挿入」機能が有る（ファームウエアバージョンが０ｘ０２００）と判定されると、ステップＳ５０５に移行し、「表紙／裏表紙挿入」機能が無い（ファームウエアバージョンが０ｘ０１００）と判定されると、ステップＳ５０６に移行する。
【００５７】
ステップＳ５０５において、ＣＰＵ２０１は、図８に示されるように「表紙／裏表紙挿入」機能が有りと判定された場合のダイアログ８０１をＣＲＴ２０８に表示させる。とりわけ、「表紙／裏表紙挿入」が設定できるコントロール８１１が表示され、「表紙／裏表紙挿入」を設定できるようになっている。
【００５８】
ステップＳ５０６において、ＣＰＵ２０１は、図９に示されるように「表紙／裏表紙挿入」機能が無いと判定された場合のダイアログ９０１をＣＲＴ２０８に表示させる。このダイアログ９０１では、「表紙／裏表紙挿入」機能がプリンタドライバのユーザインターフェース上、マスクされた状態となっている。換言すれば、「表紙／裏表紙挿入」を設定するためのコントロール８１１が表示されておらず、「表紙／裏表紙挿入」が設定できないようになっている。
【００５９】
これによって、ユーザが古いファームウエアを搭載したプリンタに対して、非対応の機能を操作することが無くなり、さらには、プリンタの誤動作を回避できよう。
【００６０】
なお、ステップＳ５０４乃至ステップＳ５０６の処理は、ＣＰＵ２０１が、ダイアログ７０１のコントロール７１１をマスクして、ダイアログ９０１を作成する処理ともいえる。あるいは、ＣＰＵ２０１が、ダイアログ８０１のダイアログ９０１のいずれかを選択する処理を実行しているともいえよう。
【００６１】
次に、プリンタドライバがネットワークを介して、ネットワークプリンタ１０３のプリンタ情報を自動取得できなかった場合の操作方法とプリンタドライバの動作を、順を追って説明する。
【００６２】
ステップＳ５０１において、プリンタドライバはネットワークプリンタ１０３のプリンタ情報を取得しようとするが、ステップＳ５０２において取得に失敗したものとする。取得に失敗する理由はいくつか考えられる。例えば、クライアントコンピュータ１０１，１０２にプリンタ情報を自動取得するモジュールがインストールされていなかった場合（プリンタドライバのインストーラからプリンタドライバをインストールした場合はプリンタ情報を自動取得するモジュールがインストールされるのだが、オペレーティングシステムの提供する機能であるプリンタの追加からプリンタドライバをインストールした場合はプリンタ情報を自動取得するモジュールがインストールされない）や、プリンタ情報を返すことができないモデルのプリンタに対してプリンタ情報の取得を行った場合などがある。この場合は、ユーザが手動でファームウエアＩＤやバージョン情報を入力する必要がある。
【００６３】
図１０は、ファームウエア関連情報の取得に失敗した場合の手動入力処理についてのフローチャートである。
【００６４】
ステップＳ１００１において、ＣＰＵ２０１は、ファームウエア関連情報を自動取得できなかったことをユーザに知らせるため、図１１に示すダイアログ１１０１を表示する。ここでは、プリンタ情報を自動取得できなかったことを知らせるメッセージ１１０２が表示される。メッセージダイアログ１１０１のＯＫボタン１１０３を、ユーザの操作によりキーボード・マウス部２０９から押し下げられると、ダイアログ１１０１を閉じ、デバイス設定シートに戻る。
【００６５】
ステップＳ１００２において、ＣＰＵ２０１は、図１２に示すダイアログ１２０１をＣＲＴ２０８に表示させる。すなわち、プリンタドライバはプリンタ情報取得に失敗したため、ファームウエアＩＤとファームウエアバージョンなどの情報をユーザに設定してもらう必要がある。そこで、ダイアログ１２０１のデバイス設定シート１２０６に示されるように機能設定１２１２ボタンを表示する。ユーザはこのダイアログ１２０１で、まず１２０７乃至１２１０の機器構成情報を、実際のデバイスを参考にして手動で設定する。
【００６６】
ステップＳ１００３において、ＣＰＵ２０１は、ユーザにより機能設定ボタン１２１２が押し下げられたことを検知すると、機能設定ダイアログをＣＲＴ２０８に表示させる。
【００６７】
図１３に、機能設定ダイアログ１３０１を示す。この機能設定ダイアログ１３０１には、設定方法を示すメッセージ１３０２、ファームウエアＩＤ１３０３、ファームウエアバージョンを設定するコントロール１３０３から構成される。なお、１３０５は設定を有効にするＯＫボタン、１３０６は設定をキャンセルするキャンセルボタンである。なお、本実施形態で説明するプリンタドライバは、ここで説明するネットワークプリンタのみをサポートしているため、ファームウエアＩＤは１つに定まっているものと仮定している。そのため、機能設定ダイアログでは、ファームウエアＩＤは固定表示としている。しかし、１つのプリンタドライバで複数種類のプリンタをサポートしているような場合は、ファームウエアＩＤも選択可能なコントロールとしてもよい。また、ファームウエアＩＤとバージョンは、キーボード２０９から直接入力されるようにしてもよい。
【００６８】
ユーザは機能設定ダイアログのメッセージ１３０２に示されている通り、ネットワークプリンタ１０３の操作パネルからハードウエア情報を出力する。より具体的には、ネットワークプリンタ１０３のＣＰＵ２１６は、操作パネル（不図示）からハードウエア情報の印刷を指示されると印刷指示を受け付け、ＲＯＭ２１８からファームウエアＩＤ、ファームウエアのバージョン情報及びその他のハードウエア情報を読み出して、制御部２１２にハードウエア情報の印刷指示を送る。
【００６９】
図１４には、ハードウエア情報の印刷例を示す。図に示されるようなハードウエア情報ページ１４０１が出力される。このハードウエア情報ページ１４０１には、このネットワークプリンタのファームウエアＩＤ１４０２とファームウエアバージョン１４０３が印刷されている。なお、最新のプリンタでステータスプリントを行うと、ファームウエアバージョン１４０３が印刷されるので、ユーザは、図１３の画面で対応するファームウエアバージョンを選択することになる。また、古いプリンタでステータスプリントを行うと、ファームウエアバージョン１４０３の部分が印刷されない。その場合は、ユーザは、図１３の画面でＮｏｎｅを選択することとなる。このようにすることにより、ファームウエアのバージョンを印刷できない従来の機種にも対応することができる。
【００７０】
なお、印刷する代わりに、ＣＰＵ２１６は、ネットワークプリンタ１０３に備えられている液晶表示装置などにハードウエア情報を表示させてもよいし、スピーカなどの音声出力装置から音声により出力してもよい。
【００７１】
また、クライアントコンピュータ１０１からハードウエア情報の出力を指示してもよい。例えば、ＣＰＵ２０１が、ハードウエア情報の印刷指示ボタンをＣＲＴ２０８に表示させ、そのボタンがマウス２０９により押し上げられたことを検知すると、通信インタフェース２０６を介して、ネットワークプリンタ１０３に対して、ハードウエア情報の出力を指示を送信する。ネットワークプリンタ１０３のＣＰＵ２１６は、通信インタフェース２１１を介して当該出力指示を受信すると、上記のようにハードウエア情報を出力するよう各部を制御する。なお、メッセージ１３０２の内容も、ハードウエア情報の印刷指示ボタンを押すことを促すようなメッセージとなろう。
【００７２】
一般に、プリンタの操作パネルよりもコンピュータ側のマウス等の方が操作がし易いためユーザには都合がよいかもしれない。
【００７３】
ステップＳ１００４において、ユーザは、このプリンタ情報ページを元に、プリンタドライバの機能設定ダイアログ１３０１で、ネットワークプリンタ１０３のファームウエアバージョン１３０４を設定する。すなわち、ＣＰＵ２０１は、キーボード・マウス２０９を介して入力されるファームウエアＩＤとファームウエアバージョンをＨＤＤ２０７などの記憶装置に記憶させる。例えば、図１４のハードウエア情報ページでは、ファームウエアバージョン１４０３として、２．０が印刷されているため、機能設定ダイアログ１３０１のファームウエアバージョン１３０４のコントロールで、「２．０」を選択する。その後、設定を有効にするためにＯＫボタン１３０５を押下する。以降は、ステップＳ５０３へと移行し、ファームウエアに応じたユーザインタフェースを選択してユーザに提供する。  これによって、ファームウエア関連情報を自動取得できなくとも、ユーザが入力した情報に基づいて、ネットワークプリンタのファームウエアバージョンが０ｘ０２００に設定される。従って、「表紙／裏表紙挿入」機能がサポートされていることがわかる。ここで、プリンタドライバは、「表紙／裏表紙挿入」機能を設定するシートである、給紙シートに、「表紙／裏表紙挿入」機能ボタンが表示される（図８）。また、図１３の画面でバージョン１．０またはＮｏｎｅが選択されると表紙・裏表紙機能が無効になるように設定され、給紙シートに、「表紙／裏表紙挿入」機能ボタンが表示されなくなる（図９）。このようにＮｏｎｅが選択された場合、機種が不明、または古い機種なので機能を無効にしておくことにより、古い機種に適切に対応できる仕組みを提供できる。
【００７４】
このように、ファームウエアのアップデートにより追加される機能が、プリンタ情報を自動取得することにより、プリンタドライバのユーザインターフェースに適切に反映される。
【００７５】
上述の実施形態では、ファームウエアＩＤやファームウエアバージョンに基づいて、新規の機能の有無を特定し、有無に応じたユーザインタフェースを提供していた。しかしながら、新規の機能の有無を判定できるのであれば、他の情報であってもよいことは当業者であれば理解できよう。
【００７６】
［他の実施形態］
本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００７７】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７９】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した図５や図９に示すようなフローチャートに対応するプログラムコードが格納されることになる。
【００８０】
【発明の効果】
本発明は、ファームウエアのバージョンとドライバのバージョンとの対応関係が一致していない場合における不都合を低減することができる。
【００８１】
例えば、ファームウエアのアップデートにより機能を追加することが可能なプリンタであっても、ユーザは予め機能の差分を把握しておくことなく、プリンタドライバの設定を行ない印刷することが可能となる。
【図面の簡単な説明】
【図１】本実施形態に係る例示的なプリントシステムを示している図である。
【図２】クライアントコンピュータ１０１，１０２とネットワークプリンタ１０３の例示的なブロック図である。
【図３】  ファームウエアＩＤとファームウエアバージョンについてのプリンタ及びプリンタドライバの内部データ形式の一例を示す図である。
【図４】ファームウエアＩＤとファームウエアバージョンのユーザに対する表現形式の一例を示す図である。
【図５】プリンタドライバの例示的な処理フローチャートである。
【図６】デバイス機能を設定するためのダイアログの一例を示している図である。
【図７】ファームウエア管理テーブルの一例を示す図である。
【図８】ファームウエアが新しい場合のユーザインタフェースの一例を示す図である。
【図９】ファームウエアが古い場合のユーザインタフェースの一例を示す図である。
【図１０】ファームウエア関連情報の手動入力処理についてのフローチャートである。
【図１１】ファームウエア関連情報を自動取得できなかったことをユーザに知らせるためのダイアログの一例を示す図である。
【図１２】デバイス設定シートの一例を示す図である。
【図１３】機能設定ダイアログの一例を示す図である。
【図１４】ハードウエア情報の印刷例を示す図である。
【図１】
0003880407.tif 000002
【図２】
0003880407.tif 000003
【図３】
0003880407.tif 000004
【図４】
0003880407.tif 000005
【図５】
0003880407.tif 000006
【図６】
0003880407.tif 000007
【図７】
0003880407.tif 000008
【図８】
0003880407.tif 000009
【図９】
0003880407.tif 000010
【図１０】
0003880407.tif 000011
【図１１】
0003880407.tif 000012
【図１２】
0003880407.tif 000013
【図１３】
0003880407.tif 000014
【図１４】
0003880407.tif 000015