(57)【特許請求の範囲】
【請求項１】
一以上の制御対象のプリンタと接続する情報処理装置であって、
前記プリンタが対応する一以上の機能であって用紙サイズ設定、カラー／モノクロ印刷設定、両面印刷設定、ステープル設定のいずれかを含むユーザインタフェースによる設定を要する機能を示す機種依存ファイルを一以上保持する機種依存ファイル保持手段と、
前記機能単位に分割され前記機能に対応した、ユーザインタフェースに表示する詳細項目および前記プリンタの基本処理を利用する詳細コマンドの制御処理を実行する前記機能毎の一以上の機能コアモジュールと、
初期の設定画面を表示し、前記機能に対応した設定項目の選択指示時に、前記一以上の機能コアモジュールのうち、ユーザから受け付けた指示に対応する機能コアモジュールに処理の要求を行って機能内の設定処理を行わせ、印刷指示時に前記機能コアモジュールにより出力される設定内容についての印刷コマンドの順序制御を行って前記プリンタに出力することで、ユーザインタフェースの制御および前記プリンタの基本処理の制御処理を行う基本コアモジュールと、
前記プリンタと接続する際に、当該プリンタの対応する機能を記述した機種依存ファイルを保持しているかどうか判断し、保持していない場合には前記機種依存ファイルを取得する機種依存ファイル取得手段と、
当該プリンタに対応する機種依存ファイルを解析し、該機種依存ファイルに示されている機能それぞれに対応する前記機能コアモジュールが該情報処理装置に存在するか否かを判定する判定手段と、
前記判定手段によって存在しないと判定された機能コアモジュールを取得するコアモジュール取得手段と、
前記コアモジュール取得手段で取得した機能コアモジュールを前記基本コアモジュールに対応付けるコアモジュールインストール手段と
を備えたことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記機種依存ファイル取得手段は、前記機種依存ファイルを前記プリンタから取得する
ことを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置において、
前記機種依存ファイル取得手段は、前記機種依存ファイルを外部のサーバから取得する
ことを特徴とする情報処理装置。
【請求項４】
請求項１乃至３のいずれか一項に記載の情報処理装置において、
前記コアモジュール取得手段は、前記機能コアモジュールを前記プリンタから取得する
ことを特徴とする情報処理装置。
【請求項５】
請求項１乃至３のいずれか一項に記載の情報処理装置において、
前記コアモジュール取得手段は、前記機能コアモジュールを外部のサーバから取得する
ことを特徴とする情報処理装置。
【請求項６】
請求項１乃至５のいずれか一項に記載の情報処理装置において、
前記コアモジュール取得手段は、前記判定手段によって存在しないと判定された機能コアモジュールに対応する機能をユーザに対して表示し、要否の選択を行わせ、必要と選択された機能に対応する機能コアモジュールのみを取得する
ことを特徴とする情報処理装置。
【請求項７】
一以上の制御対象のプリンタと接続する情報処理装置であって、前記プリンタが対応する一以上の機能であって用紙サイズ設定、カラー／モノクロ印刷設定、両面印刷設定、ステープル設定のいずれかを含むユーザインタフェースによる設定を要する機能を示す機種依存ファイルを一以上保持する機種依存ファイル保持手段と、前記機能単位に分割され前記機能に対応した、ユーザインタフェースに表示する詳細項目および前記プリンタの基本処理を利用する詳細コマンドの制御処理を実行する前記機能毎の一以上の機能コアモジュールと、初期の設定画面を表示し、前記機能に対応した設定項目の選択指示時に、前記一以上の機能コアモジュールのうち、ユーザから受け付けた指示に対応する機能コアモジュールに処理の要求を行って機能内の設定処理を行わせ、印刷指示時に前記機能コアモジュールにより出力される設定内容についての印刷コマンドの順序制御を行って前記プリンタに出力することで、ユーザインタフェースの制御および前記プリンタの基本処理の制御処理を行う基本コアモジュールとを備えた情報処理装置の制御方法であって、
前記プリンタと接続する際に、当該プリンタの対応する機能を記述した機種依存ファイルを保持しているかどうか判断し、保持していない場合には前記機種依存ファイルを取得する機種依存ファイル取得工程と、
当該プリンタに対応する機種依存ファイルを解析し、該機種依存ファイルに示されている機能それぞれに対応する前記機能コアモジュールが該情報処理装置に存在するか否かを判定する判定工程と、
前記判定工程によって存在しないと判定された機能コアモジュールを取得するコアモジュール取得工程と、
前記コアモジュール取得工程で取得した機能コアモジュールを前記基本コアモジュールに対応付けるコアモジュールインストール工程と
を備えたことを特徴とする機能管理制御方法。
【請求項８】
一以上の制御対象のプリンタと接続する情報処理装置であって、前記プリンタが対応する一以上の機能であって用紙サイズ設定、カラー／モノクロ印刷設定、両面印刷設定、ステープル設定のいずれかを含むユーザインタフェースによる設定を要する機能を示す機種依存ファイルを一以上保持する機種依存ファイル保持手段と、前記機能単位に分割され前記機能に対応した、ユーザインタフェースに表示する詳細項目および前記プリンタの基本処理を利用する詳細コマンドの制御処理を実行する前記機能毎の一以上の機能コアモジュールと、初期の設定画面を表示し、前記機能に対応した設定項目の選択指示時に、前記一以上の機能コアモジュールのうち、ユーザから受け付けた指示に対応する機能コアモジュールに処理の要求を行って機能内の設定処理を行わせ、印刷指示時に前記機能コアモジュールにより出力される設定内容についての印刷コマンドの順序制御を行って前記プリンタに出力することで、ユーザインタフェースの制御および前記プリンタの基本処理の制御処理を行う基本コアモジュールとを備えた情報処理装置の制御プログラムであって、
前記情報処理装置を構成するコンピュータを、
前記プリンタと接続する際に、当該プリンタの対応する機能を記述した機種依存ファイルを保持しているかどうか判断し、保持していない場合には前記機種依存ファイルを取得する機種依存ファイル取得手段、
当該プリンタに対応する機種依存ファイルを解析し、該機種依存ファイルに示されている機能それぞれに対応する前記機能コアモジュールが該情報処理装置に存在するか否かを判定する判定手段、
前記判定手段によって存在しないと判定された機能コアモジュールを取得するコアモジュール取得手段、
前記コアモジュール取得手段で取得した機能コアモジュールを前記基本コアモジュールに対応付けるコアモジュールインストール手段
として機能させる機能管理制御プログラム。
【請求項９】
請求項８に記載の機能管理制御プログラムを記録したコンピュータ読取可能の記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置におけるプリンタドライバ等のデバイスドライバの構成技術に関する。
【背景技術】
【０００２】
新規にプリンタを購入したとき、既にパーソナルコンピュータ等の情報処理装置にインストールされているプリンタドライバをそのまま使い続けたいという要望が多い。
【０００３】
このような要望に応えるべく、例えば、複数のプリンタの機種に対応し、プリンタの機種ごとに最適な仕様のドライバに切り替わるユニバーサルプリンタドライバと呼ばれるプリンタドライバが既に知られている。
【０００４】
この種のプリンタドライバは一つのコアモジュールと一つ以上のプラグインから構成されており、後にリリースされたプリンタの機能に対応していない場合、その機能を使うために新たにプラグインを追加する（特許文献１等を参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、プリンタドライバは可能な範囲で種々の環境に対応できるように開発されるものではあるが、全ての環境を考慮することは困難であるとともに、プログラミング上のバグも存在する。そのため、プリンタドライバやプラグインを追加した場合、ユーザは所望の機能が予期される通りに動作するかどうかを検証する必要がある。
【０００６】
上述したように、従来のユニバーサルプリンタドライバは新規にプリンタを購入したとき、既にパーソナルコンピュータにインストールされているプリンタドライバが新規のプリンタの機能に対応していない場合、その機能を使うためにプラグインとして機能追加することになる。
【０００７】
この場合、ユーザはコアモジュールとプラグインの組み合わせ検証が必要であり、また、コアモジュールに対する依存性から、ユーザによっては、新規に追加したプラグイン以外のプラグインに関する内容も検証しなければならないため、検証工数が大きくなってしまうという問題があった。
【０００８】
なお、プリンタドライバについて従来の問題点を説明したが、スキャナドライバ等を含むデバイスドライバ一般について同様の問題がある。
【０００９】
本発明は上記の従来の問題点に鑑み提案されたものであり、その目的とするところは、追加インストールした機能のみをユーザが検証できるようにして検証工数を抑えることにある。
【課題を解決するための手段】
【００１０】
上記の課題を解決するため、本発明にあっては、一以上の制御対象のプリンタと接続する情報処理装置であって、前記プリンタが対応する一以上の機能であって用紙サイズ設定、カラー／モノクロ印刷設定、両面印刷設定、ステープル設定のいずれかを含むユーザインタフェースによる設定を要する機能を示す機種依存ファイルを一以上保持する機種依存ファイル保持手段と、前記機能単位に分割され前記機能に対応した、ユーザインタフェースに表示する詳細項目および前記プリンタの基本処理を利用する詳細コマンドの制御処理を実行する前記機能毎の一以上の機能コアモジュールと、初期の設定画面を表示し、前記機能に対応した設定項目の選択指示時に、前記一以上の機能コアモジュールのうち、ユーザから受け付けた指示に対応する機能コアモジュールに処理の要求を行って機能内の設定処理を行わせ、印刷指示時に前記機能コアモジュールにより出力される設定内容についての印刷コマンドの順序制御を行って前記プリンタに出力することで、ユーザインタフェースの制御および前記プリンタの基本処理の制御処理を行う基本コアモジュールと、前記プリンタと接続する際に、当該プリンタの対応する機能を記述した機種依存ファイルを保持しているかどうか判断し、保持していない場合には前記機種依存ファイルを取得する機種依存ファイル取得手段と、当該プリンタに対応する機種依存ファイルを解析し、該機種依存ファイルに示されている機能それぞれに対応する前記機能コアモジュールが該情報処理装置に存在するか否かを判定する判定手段と、前記判定手段によって存在しないと判定された機能コアモジュールを取得するコアモジュール取得手段と、前記コアモジュール取得手段で取得した機能コアモジュールを前記基本コアモジュールに対応付けるコアモジュールインストール手段とを備える。
【発明の効果】
【００１９】
本発明の情報処理装置にあっては、追加インストールされるコアモジュールが機能ごとに分割されているため、追加インストールした機能のみをユーザは検証すればよく、検証工数を抑えることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態にかかるシステムの構成例を示す図である。
【図２】情報処理装置の構成例を示す図である。
【図３】プリンタ接続時の処理例を示すフローチャートである。
【図４】機種依存ファイルおよびコアモジュールの配置例を示す図である。
【図５】プリンタ使用時の処理例を示すフローチャートである。
【図６】印刷設定の画面例を示す図である。
【図７】用紙サイズ設定の画面例を示す図である。
【図８】印刷コマンドの例を示す図である。
【発明を実施するための形態】
【００２１】
以下、本発明の好適な実施形態につき説明する。
【００２２】
＜構成＞
図１は本発明の一実施形態にかかるシステムの構成例を示す図である。なお、画像形成装置としてのプリンタを制御するプリンタドライバに適用した場合を例に説明するが、一般のデバイスドライバに適用することができる。
【００２３】
図１において、パーソナルコンピュータ等の情報処理装置１は、ネットワーク３を介して、あるいは直接に、プリンタ２と接続されるようになっている。また、ネットワーク３には、プリンタドライバの構成要素（機種依存ファイル、コアモジュール）を保持し、情報処理装置１からダウンロードを行えるようにしたダウンロードサーバ４が接続されている。
【００２４】
図２は情報処理装置１の構成例を示す図である。
【００２５】
図２において、情報処理装置１には、ＯＳ（Operating System）／アプリケーション１１とプリンタドライバ１２とが設けられている。
【００２６】
プリンタドライバ１２には、基本コアモジュール１２１と機能実現判断モジュール１２２と印刷コマンドコアモジュール１２３と用紙サイズコアモジュール１２４とカラー／モノクロ印刷コアモジュール１２５と両面印刷コアモジュール１２６とステープルコアモジュール１２７と機種依存ファイル１２８、１２９とが設けられている。
【００２７】
なお、基本コアモジュール１２１と機能実現判断モジュール１２２と印刷コマンドコアモジュール１２３は原則として１個ずつ設けられるが、コアモジュール１２４〜１２７と機種依存ファイル１２８、１２９は、プリンタドライバ１２の初期インストール状態とその後に使用されるプリンタ２の機種により異なる。
【００２８】
基本コアモジュール１２１は、基本的な制御を担当するモジュールであり、ＵＩ（User Interface）の制御を行うＵＩ部と、描画の制御を行う描画部とを備えている。なお、ＵＩ部と描画部は、どちらもＵＩに表示する詳細項目や描画に関する詳細コマンドの内容については関与せず、それらは機能単位に設けられるコアモジュール１２４〜１２７が担当する。
【００２９】
機能実現判断モジュール１２２は、プリンタ２との新規接続時に現状のコアモジュール１２４〜１２７により機能を実現できるかどうか判断し、必要であればプリンタ２もしくはダウンロードサーバ４からコアモジュールをダウンロード（インストールを含む）する機能を有している。
【００３０】
印刷コマンドコアモジュール１２３は、プリンタ２が処理可能な印刷コマンドをプリンタ２に送信する機能を有している。
【００３１】
用紙サイズコアモジュール１２４は、用紙サイズ設定のＵＩの制御を行うとともに、用紙サイズに関する印刷コマンドの生成を行う機能を有している。
【００３２】
カラー／モノクロ印刷コアモジュール１２５は、カラー／モノクロ印刷設定のＵＩの制御を行うとともに、カラー／モノクロ印刷に関する印刷コマンドの生成を行う機能を有している。
【００３３】
両面印刷コアモジュール１２６は、両面印刷設定のＵＩの制御を行うとともに、両面印刷に関する印刷コマンドの生成を行う機能を有している。
【００３４】
ステープルコアモジュール１２７は、ステープル設定のＵＩの制御を行うとともに、ステープルに関する印刷コマンドの生成を行う機能を有している。
【００３５】
機種依存ファイル１２８、１２９は、ここではそれぞれ機種Ａ、Ｂの機能に対応するものとしており、その機種がどのような機能に対応しているか、その機種が備える機能を列記した内容となっている。
【００３６】
＜動作＞
図３はプリンタ接続時の処理例を示すフローチャートである。
【００３７】
図３において、情報処理装置１でプリンタ新規追加等の処理を開始すると（ステップＳ１０１）、プリンタドライバ１２の機能実現判断モジュール１２２は、プリンタ２との通信により機種情報を取得し、該当する機種依存ファイルを情報処理装置１側で保持しているかどうか判断する（ステップＳ１０２）。例えば、機種依存ファイルはファイル名に機種情報を含んでおり、情報処理装置１側に該当するファイル名の機種依存ファイルが存在するかどうかを検索することで判断を行うことができる。例えば、図４に示すように、情報処理装置１が機種Ａに対応する機種依存ファイル１２８と機種Ｂに対応する機種依存ファイル１２９とを保持している場合に、機種Ｃのプリンタ２を対象とする場合、機種Ｃに対応する機種依存ファイルは保持していないと判断する。
【００３８】
次いで、図３に戻り、プリンタ２の機種依存ファイルを情報処理装置１側で保持していると判断した場合（ステップＳ１０２のＹｅｓ）、処理を終了する（ステップＳ１０８）。
【００３９】
また、プリンタ２の機種依存ファイルを情報処理装置１側で保持していないと判断した場合（ステップＳ１０２のＮｏ）、機能実現判断モジュール１２２は、プリンタ２もしくはダウンロードサーバ４から該当する機種依存ファイルをダウンロードする（ステップＳ１０３）。図４に示した例の場合、プリンタ２から機種依存ファイル２１をダウンロードするか、同内容の機種依存ファイルをダウンロードサーバ４からダウンロードする。
【００４０】
次いで、図３に戻り、機能実現判断モジュール１２２は、ダウンロードした機種依存ファイルを解析し、情報処理装置１側で現在保持しているコアモジュールでプリンタ２が対応している機能を実現できるかどうか判断する（ステップＳ１０４）。図４に示した例の場合、プリンタ２もしくはダウンロードサーバ４からダウンロードした機種依存ファイル（２１）には機能として「用紙サイズ」「カラー」「両面」「ステープル」「パンチ」「地紋」が記載されており、情報処理装置１側には「用紙サイズ」に対応する用紙サイズコアモジュール１２４、「カラー」に対応するカラー／モノクロ印刷コアモジュール１２５、「両面」に対応する両面印刷コアモジュール１２６、「ステープル」に対応するステープルコアモジュール１２７は保持しているが、「パンチ」「地紋」に対応するコアモジュールは保持していないため、機能を実現できないと判断する。
【００４１】
次いで、図３に戻り、プリンタ２が対応している機能を実現できると判断した場合（ステップＳ１０４のＹｅｓ）、処理を終了する（ステップＳ１０８）。
【００４２】
また、プリンタ２が対応している機能を実現できないと判断した場合（ステップＳ１０４のＮｏ）、機能実現判断モジュール１２２は、ダウンロードした機種依存ファイルに記載されている機能をユーザに対してダイアログボックス等により表示し、必要かどうか選択を求める（ステップＳ１０５）。
【００４３】
次いで、機能実現判断モジュール１２２は、ユーザの選択結果から、機種依存ファイルに記載されている機能は必要かどうか判断する（ステップＳ１０６）。
【００４４】
全ての機能は必要でないと判断した場合（ステップＳ１０６のＮｏ）、処理を終了する（ステップＳ１０８）。
【００４５】
少なくとも一つの機能が必要であると判断した場合（ステップＳ１０６のＹｅｓ）、機能実現判断モジュール１２２は、ユーザにより必要であると選択された機能に対応するコアモジュールをプリンタ２からダウンロード（インストールを含む）するか、同内容のコアモジュールをダウンロードサーバ４からダウンロード（インストールを含む）し（ステップＳ１０７）、処理を終了する（ステップＳ１０８）。図４に示した例の場合、現状の情報処理装置１側のコアモジュール１２４〜１２７では実現できない「パンチ」「地紋」についてユーザが必要であると選択した場合、プリンタ２から対応するパンチコアモジュール２６と地紋印刷コアモジュール２７をダウンロードするか、同内容のコアモジュールをダウンロードサーバ４からダウンロードする。
【００４６】
追加インストールされたコアモジュールが機能ごとに分割されているため、ユーザはダウンロードしたコアモジュールについてのみ、予期される動作が行えるかどうか検証を行えばよい。
【００４７】
次に、図５はプリンタ使用時の処理例を示すフローチャートである。
【００４８】
図５において、ユーザが印刷ダイアログからプリンタ設定を指示することで処理を開始すると（ステップＳ２０１）、基本コアモジュール１２１は、ユーザから印刷設定ＵＩを開く指示を受け付け（ステップＳ２０２）、印刷設定ＵＩを表示する（ステップＳ２０３）。図６は印刷設定の画面例を示しており、「用紙サイズ設定」「カラー／モノクロ設定」「両面設定」「ステープル設定」「パンチ設定」「地紋設定」等の機能毎のボタンと、「ＯＫ」「Ｃａｎｃｅｌ」等の設定確定およびキャンセルのボタンを備えている。
【００４９】
次いで、図５に戻り、基本コアモジュール１２１は、ユーザから用紙サイズ設定ＵＩを開く指示を受け付けると（ステップＳ２０４）、対応する用紙サイズコアモジュール１２４を起動し、用紙サイズコアモジュール１２４は用紙サイズ設定ＵＩを表示する（ステップＳ２０５）。図６に示した例では、「用紙サイズ設定」ボタンがユーザにより押されることにより用紙サイズ設定ＵＩを開く指示を受け付け、図７に示すような用紙サイズ設定の画面を表示する。
【００５０】
次いで、図５に戻り、基本コアモジュール１２１は、ユーザから印刷の指示を受け付けると（ステップＳ２０６）、各コアモジュールに印刷コマンド情報を要求し（ステップＳ２０７）、各コアモジュールから受け取った印刷コマンドの出力順序等を制御してプリンタ２に向けて出力し（ステップＳ２０８）、処理を終了する（ステップＳ２０９）。図８は印刷コマンドの例を示しており、ＰＪＬ（Printer Job Language）で記述された印刷設定に関する印刷コマンドの部分を具体的に示しており、この後にＰＣＬ（Printer Control Language）で記述された印刷コマンドが続く。
【００５１】
＜総括＞
以上説明したように、本実施形態によれば、次のような利点がある。
（１）追加インストールされるコアモジュールが機能ごとに分割されているため、追加インストールした機能のみをユーザは検証すればよく、検証工数を抑えることができる。
（２）ユーザに必要とする機能を選択させることにより、不要な機能に対応するコアモジュールをダウンロードする必要がなくなり、検証する機能を必要最小限のものとすることができる。
【００５２】
以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により本発明が限定されるものと解釈してはならない。
【符号の説明】
【００５３】
１          情報処理装置
１１        ＯＳ／アプリケーション
１２        プリンタドライバ
１２１      基本コアモジュール
１２２      機能実現判断モジュール
１２３      印刷コマンドコアモジュール
１２４      用紙サイズコアモジュール
１２５      カラー／モノクロ印刷コアモジュール
１２６      両面印刷コアモジュール
１２７      ステープルコアモジュール
１２８      機種依存ファイル
１２９      機種依存ファイル
２          プリンタ
２１        機種依存ファイル
２２        用紙サイズコアモジュール
２３        カラー／モノクロ印刷コアモジュール
２４        両面印刷コアモジュール
２５        ステープルコアモジュール
２６        パンチコアモジュール
２７        地紋印刷コアモジュール
３          ネットワーク
４          ダウンロードサーバ
【先行技術文献】
【特許文献】
【００５４】
【特許文献１】特開２００６−２６０３５６号公報
【図１】
0005754123.tif 000002
【図２】
0005754123.tif 000003
【図３】
0005754123.tif 000004
【図４】
0005754123.tif 000005
【図５】
0005754123.tif 000006
【図６】
0005754123.tif 000007
【図７】
0005754123.tif 000008
【図８】
0005754123.tif 000009