(57)【要約】【課題】異なる機種のプリンタから機器情報を取得する場合でも、プリンタドライバを作り直すことなく機器情報を取得し解釈できるようにする。【解決手段】画像形成装置の機器情報を取得するためのコマンドを生成するコマンド生成部と、コマンド生成部が生成したコマンドを画像形成装置へ送信し、その機器情報を受信するプリンタドライバの機器情報取得部と、機器情報取得部が受信した機器情報を解釈する機器情報解釈部と、機器情報解釈部が解釈した機器情報を保持するプリンタドライバのＵＩ部とを備え、コマンド生成部および機器情報解釈部は、プリンタドライバとは独立させる。【選択図】図１
2012150731.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置の機器情報を取得するためのコマンドを生成するコマンド生成部と、
前記コマンド生成部が生成したコマンドを画像形成装置へ送信し、その機器情報を受信するプリンタドライバの機器情報取得部と、
前記機器情報取得部が受信した機器情報を解釈する機器情報解釈部と、
前記機器情報解釈部が解釈した機器情報を保持するプリンタドライバのＵＩ部と
を備え、
前記コマンド生成部および前記機器情報解釈部は、プリンタドライバとは独立している
ことを特徴とする情報処理装置。
【請求項２】
前記コマンド生成部および前記機器情報解釈部は、スクリプト言語で記述されていることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
画像形成装置の機種毎に前記コマンド生成部および前記機器情報解釈部を備え、接続している画像形成装置に対応したコマンド生成部および機器情報解釈部に切り替える機能を有することを特徴とする情報処理装置。
【請求項４】
前記コマンド生成部は、機器情報を取得するための通信路に応じて生成するリクエストを変更することを特徴とする情報処理装置。
【請求項５】
情報処理装置における情報処理方法であって、
コマンド生成部が、画像形成装置の機器情報を取得するためのコマンドを生成し、
プリンタドライバの機器情報取得部が、前記コマンド生成部が生成したコマンドを画像形成装置へ送信し、その機器情報を受信し、
機器情報解釈部が、前記機器情報取得部が受信した機器情報を解釈し、
プリンタドライバのＵＩ部が、前記機器情報解釈部が解釈した機器情報を保持する
工程を含み、
前記コマンド生成部および前記機器情報解釈部が、プリンタドライバとは独立している
ことを特徴とする情報処理方法。
【請求項６】
コンピュータを、
画像形成装置の機器情報を取得するためのコマンドを生成するコマンド生成部と、
前記コマンド生成部が生成したコマンドを画像形成装置へ送信し、その機器情報を受信するプリンタドライバの機器情報取得部と、
前記機器情報取得部が受信した機器情報を解釈する機器情報解釈部と、
前記機器情報解釈部が解釈した機器情報を保持するプリンタドライバのＵＩ部として機能させるコンピュータプログラムであって、
前記コマンド生成部および前記機器情報解釈部は、プリンタドライバとは独立している
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法およびそのコンピュータプログラムに関する。
【背景技術】
【０００２】
従来より、プリンタドライバでプリンタの機器情報を取得する際に、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）やＰＪＬ（Ｐｒｉｎｔ  Ｊｏｂ  Ｌａｎｇｕａｇｅ）を用いて通信する方法が知られている。例えば、特許文献１には、用紙情報の視認性及びユーザビリティを向上する目的で、その情報の取得方法が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、機器情報取得のために送信しなければならないコマンドや、取得できる機器情報がプリンタの機種ごとに異なるので、機器情報を取得して解釈するためには、機種固有のコマンド送信モジュールと機器情報解釈モジュールをプリンタドライバに組み込む必要があった。そのため、従来の技術では、機種ごとにプリンタドライバを作り直さなければならないという問題があった。
【０００４】
本発明は、上記に鑑みてなされたものであって、異なる機種のプリンタから機器情報を取得する場合でも、プリンタドライバを作り直すことなく機器情報を取得し解釈できるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
上述した課題を解決し、目的を達成するために、本発明の情報処理装置は、画像形成装置の機器情報を取得するためのコマンドを生成するコマンド生成部と、前記コマンド生成部が生成したコマンドを画像形成装置へ送信し、その機器情報を受信するプリンタドライバの機器情報取得部と、前記機器情報取得部が受信した機器情報を解釈する機器情報解釈部と、前記機器情報解釈部が解釈した機器情報を保持するプリンタドライバのＵＩ部とを備え、前記コマンド生成部および前記機器情報解釈部は、プリンタドライバとは独立していることを特徴とする。
【０００６】
また、本発明は、情報処理装置における情報処理方法であって、コマンド生成部が、画像形成装置の機器情報を取得するためのコマンドを生成し、プリンタドライバの機器情報取得部が、前記コマンド生成部が生成したコマンドを画像形成装置へ送信し、その機器情報を受信し、機器情報解釈部が、前記機器情報取得部が受信した機器情報を解釈し、プリンタドライバのＵＩ部が、前記機器情報解釈部が解釈した機器情報を保持する工程を含み、前記コマンド生成部および前記機器情報解釈部が、プリンタドライバとは独立していることを特徴とする。
【０００７】
また、本発明は、コンピュータを、画像形成装置の機器情報を取得するためのコマンドを生成するコマンド生成部と、前記コマンド生成部が生成したコマンドを画像形成装置へ送信し、その機器情報を受信するプリンタドライバの機器情報取得部と、前記機器情報取得部が受信した機器情報を解釈する機器情報解釈部と、前記機器情報解釈部が解釈した機器情報を保持するプリンタドライバのＵＩ部として機能させるコンピュータプログラムであって、前記コマンド生成部および前記機器情報解釈部は、プリンタドライバとは独立していることを特徴とするコンピュータプログラムである。
【発明の効果】
【０００８】
本発明によれば、異なる機種のプリンタから機器情報を取得する場合でも、プリンタドライバを作り直すことなく機器情報を取得し解釈できるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施の形態にかかるプリンタシステムの全体構成図である。
【図２】図２は、プリンタの概略構成を示すブロック図である。
【図３】図３は、ＰＣの一般的な構成を示すブロック図である。
【図４】図４は、第１の実施の形態において特徴的なソフトウェア構成を示す図である。
【図５】図５は、同実施形態におけるプリンタの機器情報取得の際の動作フローチャートである。
【図６】図６は、具体的なリクエストコマンド生成スクリプトの一例を示す図である。
【図７】図７は、具体的な機器情報データの一例を示す図である。
【図８】図８は、具体的なリクエストコマンドの一例を示す図である。
【図９】図９は、具体的なリクエストコマンド生成スクリプトの一例を示す図である。
【図１０】図１０は、具体的な機器情報データの一例を示す図である。
【図１１】図１１は、具体的なリクエストコマンドの一例を示す図である。
【図１２】図１２は、具体的な機器情報を解釈するスクリプトの一例を示す図である。
【図１３】図１３は、具体的なプリンタからのレスポンスデータ（機器情報）の一例を示す図である。
【図１４】図１４は、具体的な機器情報データの一例を示す図である。
【図１５】図１５は、具体的な機器情報を解釈するスクリプトの一例を示す図である。
【図１６】図１６は、具体的な機器情報データの一例を示す図である。
【図１７】図１７は、第２の実施形態における、機種共通のプリンタドライバで機器情報を取得する場合のソフトウェア構成例を示す図である。
【図１８】図１８は、同実施形態におけるプリンタの機器情報取得の際の動作フローチャートである。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して、この発明にかかる情報処理装置の実施の形態を詳細に説明する。
【００１１】
（第１の実施の形態）
図１は、本実施の形態にかかるプリンタシステムの全体構成図である。図１に示すように、本実施の形態ではＰＣ１００とプリンタ１５０とがネットワーク１６０を介して接続されているものとする。そして、ＰＣ１００からの印刷要求に応じて、プリンタ１５０が印刷処理を行う。
【００１２】
図２は、プリンタ１５０の概略構成を示すブロック図である。図２に示すように、プリンタ１５０は、本装置全体を統括的に制御する制御部１５０ａと、制御プログラムおよび各種設定情報等を格納する記憶部１５０ｂと、ＰＣ１００から渡される印刷データに従って印刷用紙に印字をする印字部１５０ｃと、ネットワーク１６０と接続するための通信部１５０ｄとを備えている。この構成は、従来のネットワークプリンタと同様の構成である。
【００１３】
図３は、ＰＣ１００の一般的な構成を示すブロック図である。図３に示すように、ＰＣ１００は、処理部１０１と、記憶部１０２と、通信部１０３とを備えている。処理部１０１は、図示しない制御手段としてのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＯＭおよびメインメモリとなるＲＡＭを有するメモリ群とを含んで構成されている。ＰＣ１００の起動・実行時には、ＲＯＭおよび記憶部１０２からアプリケーション１０４と、ＯＳ１０５と、各種ドライバ（図３においては、プリンタドライバ１０６のみ記載）が、メインメモリ上にロードされ展開されて、これらがＣＰＵにより実行される。なお、ＰＣ１００は、キーボードやマウスなどの入力装置やディスプレイなどの出力装置等を備える通常のコンピュータを利用したハードウェア構成を有するが、図３においては説明の簡単のため省略している。
【００１４】
図３に示す処理部１０１内の機能ブロック（後述）は、プリンタ１５０に対する印刷制御を実現するための主要部となる機能又は手段である。
【００１５】
記憶部１０２は、様々な情報を記憶する記憶手段である。具体的にはＨＤＤ等である。記憶される情報には、プリンタドライバ１０６が有する機能を実現するための処理に関する情報（処理に用いる設定値や、設定値の変更をするための表示情報など、処理に必要なあらゆる情報）を定義した設定情報がある。
【００１６】
通信部１０３は、ネットワーク１６０を介して接続されたプリンタ１５０と情報の送受信を行うネットワークＩ／Ｆである。
【００１７】
アプリケーション１０４は、ユーザが印刷指示をすることができるソフトウェア（例えば、ワードプロセッサ）とする。ユーザはアプリケーション１０４で編集したデータを印刷したい場合、アプリケーション１０４が、ユーザによる印刷指示を受け付ける。この場合、アプリケーション１０４は、単体でプリンタ１５０に対する印刷データの生成を行わず、上記印刷指示に応じた印刷要求と共に、印刷対象の情報を、例えばＧＤＩ（Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）コールでＯＳ１０５のＧＤＩ１０５ａに渡す。
【００１８】
ＯＳ１０５は、ＰＣ１００のハードウェアとソフトウェアとを管理するプログラムである。ＯＳ１０５は、プログラムの起動、情報の読み込みや保存の制御等を行う。ＯＳのうち代表的なものとしては、ＭＳ  Ｗｉｎｄｏｗｓ（登録商標）等が知られている。また、ＯＳ１０５のＧＤＩ１０５ａは、アプリケーション１０４からＧＤＩコールで渡された設定情報を含む印刷要求と共に、印刷対象の情報（テキストデータ、グラフィックデータ、イメージデータ等）を、ＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）コールでプリンタドライバ１０６に渡す。そして、プリンタドライバ１０６で生成された印刷データをスプーラ１０５ｂに蓄え、順次通信部１０３に供給してプリンタ１５０に送る。
【００１９】
プリンタドライバ１０６は、このドライバが有する機能を果たすためのモジュール群として、ユーザによる印刷設定を受け付けるためのユーザインタフェース（ＵＩ）の制御を行うＵＩ部１０６ａ、および描画の制御を行う描画部１０６ｂを備える。
【００２０】
図４は、本実施形態において特徴的なソフトウェア構成を示す図である。同図に示すように、プリンタ１５０は、その機器情報４０１を持つ。この機器情報４０１には、プリンタ１５０の構成や状態に関する情報が含まれている。ＰＣ１００は、図３を用いて上述したモジュールに加え、プリンタドライバ１０６にそのＵＩ部１０６ａとプリンタ１５０の機器情報に関してやり取りする機器情報取得モジュール４０２を持つ。さらに、ＰＣ１００は、ソフトウェアモジュールとして、機器情報取得モジュール４０２と協働するリクエストコマンド生成モジュール４０３、及び、機器情報解釈モジュール４０５を持つ。また、リクエストコマンド生成モジュール４０３、及び、機器情報解釈モジュール４０５に対応するスクリプトとして、リクエストコマンド生成スクリプト４０４、及び、機器情報解釈スクリプト４０６を持つ。
【００２１】
機器情報取得モジュール４０２は、プリンタドライバ１０６のＵＩ部１０６ａより機器情報の取得要求を受けたとき、リクエストコマンド生成モジュール４０３にリクエストコマンドを要求する。そして、リクエストコマンド生成モジュール４０３からリクエストコマンドを受けると、プリンタ１５０にこのリクエストコマンドを送信し、その応答としてプリンタ１５０の機器情報を受け取る。プリンタ１５０から受けた機器情報は、機器情報解釈モジュール４０５に渡し、機器情報解釈モジュール４０５で変換された機器情報を受け取る。そして、機器情報解釈モジュール４０５から受けた機器情報をＵＩ部１０６ａに渡す。
【００２２】
リクエストコマンド生成モジュール４０３は、機器情報取得モジュール４０２からリクエストコマンド要求を受けると、リクエストコマンド生成スクリプト４０４を呼び出し、得られたリクエストコマンドを機器情報取得モジュール４０２に渡す。なお、機器情報を取得するための通信路は、ネットワーク接続（ＴＣＰ／ＩＰなど）やローカル接続（ＵＳＢ、ＩＥＥＥ１３９４、ＩＥＥＥ１２８４など）があり、リクエストコマンドの生成にあたっては、通信路に応じて生成するリクエスト（ＰＪＬやＭＩＢのＯＩＤ）を変更する。これにより、複数の種類の通信路に対応することができる。
【００２３】
機器情報解釈モジュール４０５は、機器情報取得モジュール４０２からプリンタ１５０の機器情報を受けると、機器情報解釈スクリプト４０６を呼び出し、このスクリプトにより変換された機器情報を機器情報取得モジュール４０２に渡す。
【００２４】
本実施形態では、リクエストコマンド生成スクリプト４０４、及び、機器情報解釈スクリプト４０６を用いるが、スクリプト言語にすることで条件分岐など複雑な処理を簡単に記述できるようになる。
【００２５】
次に、一連の処理の流れを図５を用いて説明する。図５は、プリンタ１５０の機器情報取得の際の動作フローチャートである。
【００２６】
はじめに、ＵＩ部１０６ａが、機器情報取得モジュール４０２に機器情報を要求する（ステップＳ１０１）。
【００２７】
機器情報取得モジュール４０２は、プリンタドライバ１０６のＵＩ部１０６ａより機器情報の取得要求を受けるとリクエストコマンド生成モジュール４０３にリクエストコマンドを要求する（ステップＳ１０２）。
【００２８】
リクエストコマンド生成モジュール４０３は、機器情報取得モジュール４０２からリクエストコマンド要求を受けると、リクエストコマンド生成スクリプト４０４を呼び出し、生成されたリクエストコマンドを機器情報取得モジュール４０２に返す（ステップＳ１０３）。
【００２９】
機器情報取得モジュール４０２は、リクエストコマンド生成モジュール４０３からリクエストコマンドを受けると、プリンタ１５０にこのリクエストコマンドを送信し、その応答としてプリンタ１５０の機器情報を取得する（ステップＳ１０４）。
【００３０】
機器情報取得モジュール４０２は、プリンタ１５０から取得した機器情報を機器情報解釈モジュール４０５に渡す（ステップＳ１０５）。
【００３１】
機器情報解釈モジュール４０５は、機器情報取得モジュール４０２からプリンタ１５０の機器情報を受けると、機器情報解釈スクリプト４０６を呼び出し、このスクリプトをもとに変換された機器情報を機器情報取得モジュール４０２に返す（ステップＳ１０６）。
【００３２】
機器情報取得モジュール４０２は、機器情報解釈モジュール４０５から受けた機器情報をＵＩ部１０６ａに渡す（ステップＳ１０７）。このようにしてプリンタ１５０の機器情報を取得したＵＩ部１０６ａは、取得した機器情報を基にＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成することができる。
【００３３】
ここで、リクエストコマンド生成スクリプト４０４、機器情報データ、およびリクエストコマンドの具体例を示す。図６は、具体的なリクエストコマンド生成スクリプト４０４の一例である。図７および８は、それぞれ、具体的な機器情報データの一例およびリクエストコマンドの一例である。
【００３４】
図６は、特に、指定したトレイのトレイ用紙サイズを取得するためのリクエストコマンドを生成するスクリプトの例である。機器情報データＴＲＡＹ＿ＵＮＩＴに、その値としてＲＯＬＬ＿ＵＮＩＴ１（ロール紙ユニット）を指定した場合、リクエストコマンドを格納するｒｅｑｕｅｓｔ変数にロール紙ユニットのトレイ用紙サイズを取得するためのＰＪＬコマンド（＠ＰＪＬ  ＩＮＱＵＩＲＥ  ＩＮＴＲＡＹ１ＳＩＺＥ）が追加される。一方、機器情報データＴＲＡＹ＿ＵＮＩＴに、その値としてＣＡＳＳＥＴＴＥ（カセットユニット）を指定した場合、リクエストコマンドを格納するｒｅｑｕｅｓｔ変数にカセットユニットのトレイ用紙サイズを取得するためのＰＪＬコマンド（＠ＰＪＬ  ＩＮＱＵＩＲＥ  ＩＮＴＲＡＹ３ＳＩＺＥ）が追加される。
【００３５】
続いて、リクエストコマンド生成スクリプト４０４、機器情報データ、およびリクエストコマンドのもう１つの具体例を示す。図９は、具体的なリクエストコマンド生成スクリプト４０４の一例である。図１０および１１は、それぞれ、具体的な機器情報データの一例およびリクエストコマンドの一例である。
【００３６】
図９も、指定したトレイのトレイ用紙サイズを取得するためのリクエストコマンドを生成するスクリプトの例である。機器情報データＴＲＡＹ＿ＵＮＩＴに、その値としてＲＯＬＬ＿ＵＮＩＴ１（ロール紙ユニット）を指定した場合、リクエストコマンドを格納するｒｅｑｕｅｓｔ変数にロール紙ユニットのトレイ用紙サイズを取得するためのＭＩＢのＯＩＤ（．１．３．６．１．２．１．４３．１００．１）が追加される。一方、機器情報データＴＲＡＹ＿ＵＮＩＴに、その値としてＣＡＳＳＥＴＴＥ（カセットユニット）を指定した場合、リクエストコマンドを格納するｒｅｑｕｅｓｔ変数にカセットユニットのトレイ用紙サイズを取得するためのＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｍａｔｉｏｎ  Ｂａｓｅ）のＯＩＤ（オブジェクト識別子）（．１．３．６．１．２．１．４３．１００．３）が追加される。本例では、ｒｅｑｕｅｓｔ変数に追加されたＯＩＤをプリンタ１５０に送ることにより、機器情報を取得する。
【００３７】
次に、機器情報を解釈するスクリプト（機器情報解釈スクリプト４０６）、プリンタ１５０からのレスポンスデータ（すなわち機器情報）、および機器情報データの具体例について説明する。図１２は、具体的な機器情報を解釈するスクリプトの一例である。図１３および１４は、それぞれ具体的なプリンタ１５０からのレスポンスデータ（機器情報）および機器情報データの一例である。
【００３８】
図１２は、特に、プリンタ１５０に装着されているオプションデバイスの情報を解釈するためのスクリプトの一例である。プリンタ１５０から取得した機器情報（Ｏｐｔｉｏｎ変数）にＩＮＴＲＡＹＩＮＳＥＲＴＥＲとＩＮＴＲＡＹＩＮＳＥＲＴＥＲ２が見つかった場合は、オプションデバイスとして２段インサーターが装着されていると判断し、機器情報データのＯＰＴＩＯＮ＿ＤＥＶＩＣＥ変数にＯＰＴＤＥＶ＿ＩＮＳＥＲＴＥＲ２を追加する。一方、プリンタ１５０から取得した機器情報（Ｏｐｔｉｏｎ変数）にＩＮＴＲＡＹＩＮＳＥＲＴＥＲのみ見つかった場合は、オプションデバイスとしてカバーフィーダーが装着されていると判断し、機器情報データのＯＰＴＩＯＮ＿ＤＥＶＩＣＥ変数にＯＰＴＤＥＶ＿ＣＯＶＥＲを追加する。それ以外の場合は、オプションデバイスが装着されていないと判断し、この場合は、機器情報データのＯＰＴＩＯＮ＿ＤＥＶＩＣＥ変数に何も追加しない。
【００３９】
続いて、機器情報を解釈するスクリプト、プリンタ１５０からのレスポンスデータ、および機器情報データのもう１つの具体例について説明する。図１５は、具体的な機器情報を解釈するスクリプトの一例であり、図１６は、具体的な機器情報データの一例である。
【００４０】
図１５は、特に、プリンタ１５０から取得したステータス情報がエラーステータスかどうかを判断するスクリプトの一例である。プリンタ１５０のステータス状態（ＭａｃｈｉｎｅＳｔａｔｕｓ）が１０１に等しいか、もしくは、３００以上４００未満の場合は、プリンタ１５０がエラー状態にあると判断し、ＥＲＲＯＲ＿ＳＴＡＴＵＳ変数にＴＲＵＥを代入する。それ以外のステータス番号の場合は、機器がエラー状態ではないと判断し、ＥＲＲＯＲ＿ＳＴＡＴＵＳ変数にＦＡＬＳＥを代入する。
【００４１】
以上のようにして、機器情報解釈モジュール４０５は、機器情報解釈スクリプト４０６を用いて、プリンタ１５０から取得した機器情報を、ＵＩ部１０６ａで理解される機器情報に変換する。
【００４２】
（第２の実施の形態）
次に、第２の実施の形態として、ソフトウェア構成の他の例を例示し説明する。図１７は、特に、機種共通のプリンタドライバで機器情報を取得する場合のソフトウェア構成例を示している。
【００４３】
前述の実施形態と異なる点は、機種毎のリクエストコマンド生成スクリプト（機種Ａ用リクエストコマンド生成スクリプト４０４ａ、機種Ｂ用リクエストコマンド生成スクリプト４０４ｂ）および機種毎の機器情報解釈スクリプト（機種Ａ用機器情報解釈スクリプト４０６ａ、機種Ｂ用機器情報解釈スクリプト４０６ｂ）を持つ点である。なお、図１７では、説明のため機種Ａ用と機種Ｂの２種類のみ例示しているが、機種の種類に応じたスクリプトが用意される。
【００４４】
本実施形態においては、リクエストコマンド生成モジュール４０３は、プリンタ１５０に対応したリクエストコマンド生成スクリプト（４０４ａまたは４０４ｂ）を判断し、呼び出す。そして、得られたリクエストコマンドを機器情報取得モジュール４０２に返す。また、機器情報解釈モジュール４０５も、同様に、プリンタ１５０に対応した機器情報解釈スクリプト（４０６ａ，４０６ｂ）を呼び出し、第１の実施形態で前述したように、変換した機器情報を機器情報取得モジュール４０２に返す。このように、本実施形態では、機種毎の各スクリプトを用意し、対応するスクリプトを用いてリクエストコマンドの生成や、機器情報の解釈を行う。
【００４５】
続いて、一連の処理の流れを図１８を用いて説明する。図１８は、本実施形態におけるプリンタ１５０の機器情報取得の際の動作フローチャートである。
【００４６】
はじめに、ＵＩ部１０６ａが、機器情報取得モジュール４０２に機器情報を要求する（ステップＳ２０１）。
【００４７】
機器情報取得モジュール４０２が、ＵＩ部１０６ａからの要求を受けると、プリンタ１５０からこのプリンタの名前を取得する（ステップＳ２０２）。
【００４８】
次いで、機器情報取得モジュール４０２は、リクエストコマンド生成モジュール４０３にリクエストコマンドを要求する（ステップＳ２０３）。このとき、この要求には、ステップＳ２０２で取得したプリンタ１５０の名前が含まれる。
【００４９】
リクエストコマンド生成モジュール４０３は、機器情報取得モジュール４０２からリクエストコマンド要求を受けると、プリンタ１５０の名前からこのプリンタに対応したリクエストコマンド生成スクリプト（４０４ａまたは４０４ｂ）を呼び出す（ステップＳ２０４）。
【００５０】
次いで、リクエストコマンド生成スクリプト（４０４ａまたは４０４ｂ）は、リクエストコマンドを生成し、機器情報取得モジュール４０２に返す（ステップＳ２０５）。
【００５１】
機器情報取得モジュール４０２は、生成されたリクエストコマンドを受けると、このリクエストコマンドをプリンタ１５０に送信し、プリンタ１５０から送られてくる機器情報を受け取る（ステップＳ２０６）。
【００５２】
機器情報取得モジュール４０２は、取得した機器情報を機器情報解釈モジュール４０５に渡す（ステップＳ２０７）。このとき、プリンタ１５０の名前も通知する。
【００５３】
機器情報解釈モジュール４０５は、プリンタ１５０の名前からプリンタ１５０に対応した機器情報解釈スクリプト（４０６ａまたは４０６ｂ）を呼び出し、機器情報データを渡す（ステップＳ２０８）。
【００５４】
機器情報解釈スクリプト（４０６ａまたは４０６ｂ）は、機器情報データから、プリンタ１５０の機器情報を変換し機器情報解釈モジュール４０５に渡す（ステップＳ２０９）。
【００５５】
機器情報解釈モジュール４０５は、変換された機器情報を機器情報取得モジュール４０２に返す（ステップＳ２１０）。
【００５６】
機器情報取得モジュール４０２は、変換された機器情報をＵＩ部１０６ａに渡す（ステップＳ２１１）。このようにしてプリンタ１５０の機器情報を取得したＵＩ部１０６ａは、取得した機器情報を基に機種毎のＧＵＩを構成することができる。
【００５７】
本実施形態では、プリンタ１５０の機種毎に各スクリプトを切り替えることによって、１つのプリンタドライバで複数機種の機種情報取得に対応することができる。
【００５８】
以上、上記諸実施形態で説明したように、プリンタ１５０に対して送信する機器情報取得コマンド（すなわちリクエストコマンド）の生成モジュールと、プリンタ１５０から受信する機器情報を解釈するモジュールをプリンタドライバから独立させたことにより、異なる機種のプリンタから機器情報を取得する場合でも、プリンタドライバを作り直すことなく機器情報を取得し、また、それを解釈できるという効果を得ることができる。
【００５９】
なお、本実施形態の情報処理装置の機能を実現させるプログラムは、当該装置の記憶部１０２（ＲＯＭやその他の不揮発性記憶媒体やＨＤＤ等）に予め組み込まれて提供される以外に、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録し提供することも可能である。
【００６０】
または、上記プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供または配布するように構成してもよい。
【００６１】
以上、発明を実施するための実施の形態について説明を行ったが、本発明は、上述した実施の形態に限定されるものではない。本発明の主旨を損なわない範囲で変更することが可能である。
【符号の説明】
【００６２】
１００  ＰＣ（情報処理装置）
１５０  プリンタ（画像形成装置）
１６０  ネットワーク
１５０ａ  制御部
１５０ｂ  記憶部
１５０ｃ  印字部
１５０ｄ  通信部
１０１  処理部
１０２  記憶部
１０３  通信部
１０４  アプリケーション
１０５  ＯＳ
１０５ａ  ＧＤＩ
１０５ｂ  スプーラ
１０６  プリンタドライバ
１０６ａ  ＵＩ部
１０６ｂ  描画部
４０１  機器情報
４０２  機器情報取得モジュール
４０３  リクエストコマンド生成モジュール
４０４  リクエストコマンド生成スクリプト
４０４ａ  機種Ａ用リクエストコマンド生成スクリプト
４０４ｂ  機種Ｂ用リクエストコマンド生成スクリプト
４０５  機器情報解釈モジュール
４０６  機器情報解釈スクリプト
４０６ａ  機種Ａ用機器情報解釈スクリプト
４０６ｂ  機種Ｂ用機器情報解釈スクリプト
【先行技術文献】
【特許文献】
【００６３】
【特許文献１】特開２００８−１４６２４４号公報
【図１】
2012150731.tif 000003
【図２】
2012150731.tif 000004
【図３】
2012150731.tif 000005
【図４】
2012150731.tif 000006
【図５】
2012150731.tif 000007
【図６】
2012150731.tif 000008
【図７】
2012150731.tif 000009
【図８】
2012150731.tif 000010
【図９】
2012150731.tif 000011
【図１０】
2012150731.tif 000012
【図１１】
2012150731.tif 000013
【図１２】
2012150731.tif 000014
【図１３】
2012150731.tif 000015
【図１４】
2012150731.tif 000016
【図１５】
2012150731.tif 000017
【図１６】
2012150731.tif 000018
【図１７】
2012150731.tif 000019
【図１８】
2012150731.tif 000020