(57)【要約】      （修正有）【課題】オペレーティングシステムによって提供される第１の印刷設定画面と、デバイスアプリケーションによって提供される第２の印刷設定画面の両方をプリンターから取得した情報に基づいて、ユーザーにとってわかりやすい印刷設定画面を提供する。【解決手段】情報処理装置は、プリンターからプリンター情報を取得し、オペレーティングシステムによって提供される第１の印刷設定画面から呼び出されることによって、デバイスアプリケーションによって提供される第２の印刷設定画面をプリンター情報に基づいて表示し、第２の印刷設定画面から第１の印刷設定画面が呼び出された場合に、プリンター情報に基づく能力情報を応答する。これにより、第１の印刷設定画面は応答された能力情報に基づいて表示される。【選択図】図１３
2016058041.tif 000002
【特許請求の範囲】
【請求項１】
プリンターからプリンター情報を取得する取得手段と、
オペレーティングシステムによって提供される第１の印刷設定画面から呼び出されることによって、デバイスアプリケーションによって提供される第２の印刷設定画面を前記プリンター情報に基づいて表示する表示手段と、
前記第２の印刷設定画面から前記第１の印刷設定画面が呼び出された場合に、前記プリンター情報に基づく能力情報を応答する応答手段と、を有し、
前記第１の印刷設定画面は前記応答手段によって応答された前記能力情報に基づいて表示されることを特徴とする情報処理装置。
【請求項２】
既に保存済みのプリンター情報が存在するか否かを判定する判定手段を有し、
前記応答手段は、前記判定手段が前記既に保存済みのプリンター情報が存在しないと判定した場合に、前記取得手段が取得した前記プリンター情報に基づいて前記能力情報を生成して応答することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記デバイスアプリケーションのインストール後の後処理で、前記プリンター情報を更新することを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記オペレーティングシステムのタスクスケジューラによって、定期的に前記プリンター情報を更新することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記プリンター情報は前記プリンターから取得したユーザー設定用紙の情報を含むことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
コンピューターに、
プリンターからプリンター情報を取得する取得工程と、
オペレーティングシステムによって提供される第１の印刷設定画面から呼び出されることによって、デバイスアプリケーションによって提供される第２の印刷設定画面を前記プリンター情報に基づいて表示する表示工程と、
前記第２の印刷設定画面から前記第１の印刷設定画面が呼び出された場合に、前記プリンター情報に基づく能力情報を応答する応答工程と、を実行させ、
前記第１の印刷設定画面は前記応答工程によって応答された前記能力情報に基づいて表示されることを特徴とするプログラム。
【請求項７】
前記コンピューターに、
既に保存済みのプリンター情報が存在するか否かを判定する判定工程を実行させ、
前記応答工程は、前記判定工程で前記既に保存済みのプリンター情報が存在しないと判定した場合に、前記取得工程で取得した前記プリンター情報に基づいて前記能力情報を生成して応答することを特徴とする請求項６に記載のプログラム。
【請求項８】
前記デバイスアプリケーションのインストール後の後処理で、前記プリンター情報を更新することを特徴とする請求項６又は請求項７に記載のプログラム。
【請求項９】
前記オペレーティングシステムのタスクスケジューラによって、定期的に前記プリンター情報を更新することを特徴とする請求項６乃至８のいずれか１項に記載のプログラム。
【請求項１０】
前記プリンター情報は前記プリンターから取得したユーザー設定用紙の情報を含むことを特徴とする請求項６乃至９のいずれか１項に記載のプログラム。
【請求項１１】
プリンターからプリンター情報を取得する取得工程と、
オペレーティングシステムによって提供される第１の印刷設定画面から呼び出されることによって、デバイスアプリケーションによって提供される第２の印刷設定画面を前記プリンター情報に基づいて表示する表示工程と、
前記第２の印刷設定画面から前記第１の印刷設定画面が呼び出された場合に、前記プリンター情報に基づく能力情報を応答する応答工程と、を有し、
前記第１の印刷設定画面は前記応答工程によって応答された前記能力情報に基づいて表示されることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は印刷設定画面を表示する技術に関する。
【背景技術】
【０００２】
従来、工場出荷時のプリンターに設定されている用紙以外の用紙で印刷したいというニーズに答えるため、ユーザーによって用紙の情報をプリンターに設定する機能があった。
特許文献１はユーザー定義用紙をプリンターから取得し、リストする技術を開示している。
このように従来、プリンターから情報を取得して表示する技術があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−９２２８９
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本明細書ではオペレーティングシステムによって提供される第１の印刷設定画面からデバイスアプリケーションによって提供される第２の印刷設定画面を呼び出すことによって、第１の印刷設定画面では設定できないその他の設定を行う環境を例に説明する。
【０００５】
このような環境において、プリンターから取得した情報に基づく印刷設定画面の表示制御を単にデバイスアプリケーションによる第２の印刷設定画面で行うと、例えば第２の印刷設定画面で選択した内容が第１の印刷設定画面の表示に反映されないなどの不都合が生じてしまう。
【０００６】
特許文献１もこのような課題については開示していないため、前述の環境では同様の不都合が生じるおそれがある。
【０００７】
よって、本明細書ではオペレーティングシステムによって提供される第１の印刷設定画面と、デバイスアプリケーションによって提供される第２の印刷設定画面の両方をプリンターから取得した情報に基づいて表示させる方法について説明する。これにより、ユーザーにとってわかりやすい印刷設定画面を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するための本発明に係る情報処理装置は、
プリンターからプリンター情報を取得する取得手段と、
オペレーティングシステムによって提供される第１の印刷設定画面から呼び出されることによって、デバイスアプリケーションによって提供される第２の印刷設定画面を前記プリンター情報に基づいて表示する表示手段と、
前記第２の印刷設定画面から前記第１の印刷設定画面が呼び出された場合に、前記プリンター情報に基づく能力情報を応答する応答手段と、を有し、
前記第１の印刷設定画面は前記応答手段によって応答された前記能力情報に基づいて表示されることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ユーザーにとってわかりやすい印刷設定画面を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】コンピューターシステムのハードウェアとソフトウェアのブロック構成図
【図２】クライアントとプリンターが接続されたネットワークの構成図
【図３】プリンタードライバーの構成を示すブロック図
【図４】プリンター情報の定義ファイル
【図５】能力情報の定義ファイル
【図６】プリンターの拡張能力取得後の能力情報の定義ファイル
【図７】用紙種類登録画面の例
【図８】取得したプリンター情報の定義ファイル
【図９】印刷設定画面での用紙種類の選択肢例
【図１０】詳細設定画面
【図１１】詳細設定画面での用紙種類の設定画面例
【図１２】本発明の一例としての詳細設定画面での用紙種類の取得画面
【図１３】プリンター情報の生成処理を示すフロー
【図１４】プリンター情報の取得と更新手段の処理を示すフロー
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を用いて説明する。
【００１２】
［実施例１］
図１は本発明の実施形態を示す一般的なコンピューターを用いたシステムのブロック構成図である。
【００１３】
Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）１０１は主記憶装置１０２のＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）１０２１、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）１０２２あるいは補助記憶装置１０５に保存されたプログラムに従って、情報処理装置の一例であるコンピューター１００全体の制御を行う。
【００１４】
加えて、ＣＰＵ１０１が補助記憶装置１０５等に記憶されているプログラムに基づき処理を実行することによって、図３に示されるようなコンピューター１００のソフトウェア構成及び後述するフローチャートの各ステップの処理が実現される。
【００１５】
ＲＡＭ１０２２はＣＰＵ１０１が各処理を行う際のワークエリアとしても使用される。補助記憶装置１０５には、アプリケーション（アプリ）１０５１やデバイスアプリケーション（デバイスアプリ）１０５２、プリンタードライバー１０５３、オペレーティングシステム（ＯＳ）１０５４等の各種プログラムが保存される。キーボード１０３１やマウス・タッチパネルなどに代表されるポインティングデバイス１０３２等の入力機器は、入力インターフェース（Ｉ／Ｆ）１０３を通してコンピューター１００に接続される。出力Ｉ／Ｆ１０４にはモニター１０４１等の出力デバイスが接続され、接続されたモニター１０４１はプログラムの指示に従いモニター上にＵＩを表示する。これらの入力・出力機器を通してユーザーからのプログラムへの操作を受け付ける。通信Ｉ／Ｆ１０６はネットワーク１０６１に接続されており、コンピューター１００の外部機器、例えば、図２のコンピューター２０２やプリンター２０１との通信が可能である。上記モジュールは、システムバス１０７で接続され、各モジュール間でデータのやり取りが可能である。また、本発明の処理が含まれているアプリ等１０５１〜１０５４は、不図示のＣＤ−ＲＯＭやＵＳＢメモリーを介して補助記憶装置１０５に追加可能である。さらにネットワーク１０６１を経由して補助記憶装置１０５に追加することも可能である。なお、特に断らない限り、本発明の機能が実行されるのであれば、機器の構成に係わらず本発明を適用できることは言うまでもない。単体の機器であっても、複数の機器からなるシステムであっても、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＬＡＮ）、Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＷＡＮ）等のネットワークを介して接続が為され処理が行われるシステムであってもよい。
【００１６】
図２は本発明の実施の形態におけるネットワーク１０６１の環境を簡略にした図である。印刷を行う文書や画像を作成するクライアントコンピューター１００／２０２が単体もしくは複数ネットワークに接続されている。さらにプリンター２０１が単体もしくは複数ネットワークに接続されていることもある。ネットワークにはＰｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＰＡＮ）、ＬＡＮなどの小規模から大規模までのネットワークがあり、これらの機器が全てのネットワークに接続されている。なお、クラウドなど、サーバーやプリンターがネットワーク１０６１に接続されたインターネット上に存在していても構わない。
【００１７】
図３に本発明が対象とするソフトウェアモジュールの一例であるプリンタードライバー１０５３のブロック図である。本実施例では、特にプリンタードライバー１０５３を構成するコンフィグモジュール１０５３１、データ保持部１０５３２、グラフィックスフィルタ１０５３３を取り上げて説明する。これらのソフトウェアモジュールは、補助記憶装置１０５に保存されており、ユーザーの要求や、他のシステムの要求に応じて補助記憶装置１０５からＲＡＭ１０２２にロードされ、ＣＰＵ１０１で実行される。アプリ１０５１は、ワードプロセッサやブラウザ等の一般的なアプリケーションである。モニター１０４１上にＵＩを表示し、ポインティングデバイス１０３２やキーボード１０３１等の入力機器によってユーザーの印刷要求を受け付ける。ユーザーの印刷要求を受けて、アプリ１０５１は、印刷システム（不図示）へ印刷要求を出す。印刷システムはＯＳ１０５４のサブシステムである。印刷システムはアプリ１０５１とプリンタードライバー１０５３の中間に位置し、印刷処理における共通処理の実行を行う。具体的な実行処理としては、印刷対象プリンターの選択や選択されたプリンタードライバー１０５３を用いた設定情報の生成及びプリンターが一般に解釈可能な印刷文書データＰａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ（ＰＤＬ）３０１への変換である。プリンタードライバー１０５３は、印刷出力先のプリンターに依存する処理を受け持つモジュールである。コンフィグモジュール１０５３１はプリンター２０１で実現可能な設定関連の情報の取得や生成等を行う。これらの詳細に関しては後述する。
【００１８】
データ保持部１０５３２には、ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ（ＱＰＢ）３０４、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ（ＵＰＢ）３０５があり、プリンタードライバー１０５３で使用するデータを保存する。ＱＰＢ３０４はシステム全体のドライバーに関する設定情報を保持する領域であり、コンピューターに登録されている全てのユーザーが参照可能である反面、内容の更新等の操作に管理者権限が必要となる。また、ＱＰＢ３０４には後述する図１４の処理等でプリンター情報が保存される。ＵＰＢ３０５は各ユーザーが個別に扱うドライバーのデータを保持する領域であり、実行ユーザーごとに別のデータ領域が提供される。自身に割り当てられた領域であるなら、実行ユーザーは内容の参照や更新に制限はないが、他のユーザー用に割り当てられた領域に対しては基本的にアクセスすることはできない。グラフィックスフィルタ１０５３３はアプリ１０５１より印刷システム経由でプリンターが一般的に解釈可能な設定情報を含む標準文書データを受け取り、標準文書データ解析部３０２で解析を行う。そして、出力データ生成部３０３を用いてプリンター２０１で解釈可能なＰＤＬ３０１に変換する。変換したＰＤＬは、ＯＳ１０５４のサブシステムであるシステムスプーラ１０５４１に受け渡され、プリンター２０１へ送信される。
【００１９】
図４はプリンター情報によって生成される設定情報であるＧＰＤファイル３１１の一例である。ＧＰＤファイル３１１はプリンタードライバーの機能を定義し、プリンタードライバー１０５３を通して入力可能な様々な設定情報が記載される。
【００２０】
設定情報としては、部数、用紙方向、用紙サイズ、用紙種類、片面・両面、給紙方法等の機能を始めとする情報が記載されるが、図４では用紙種類に関する定義例を抜粋して示す。
【００２１】
具体的には後述する図９の印刷設定画面９０１の設定項目９０３の選択肢として表示される「指定しない」（ＮＯＮＥ）及び「普通紙」（ＳＴＡＮＤＡＲＤ）、「厚紙」（ＰａｓｔｅＢｏａｒｄ）を始めとする情報が記述されている。
【００２２】
なお、Ｏｐｔｉｏｎ属性の「ＳＴＡＮＤＡＲＤ」「ＰａｓｔｅＢｏａｒｄ」といった値はプリンタードライバー１０５３が生成する印刷コマンドに反映される用紙種類指定のＩＤに対応する。また、Ｎａｍｅ属性の「普通紙」「厚紙」を始めとする値はＯＳ１０５４が提供する印刷設定画面９０１に表示される文言に対応する。
【００２３】
図５はソフトウェアモジュール間でやり取りされるプリンター２０１の能力を表す能力情報であるＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ５０１を記載したファイルの一例である。この情報は設定生成部３０６により作成され、ＯＳ１０５４によって提供される印刷設定画面９０１や、デバイスアプリ１０５２によって提供される印刷設定画面である詳細設定画面１００１を始めとする各設定画面では、この情報を基に機能や設定項目の表示を行う。
【００２４】
プリンター２０１の機能を表す情報には、ドライバーがインストールされた時点のプリンター情報によって生成されるＧＰＤファイル３１１がある。それに加えて、プリンター２０１にフィニッシャー等のデバイスを取り付けたり、プリンター２０１上の画面を操作したりすることで、機能や設定項目が拡張されることがある。以下、その一例としてプリンター２０１に新たな用紙種類（ユーザー設定用紙）を登録する例を示す。
【００２５】
図７（Ａ）はプリンター２０１に新たな用紙種類を登録するための画面７０１の例である。
【００２６】
用紙種類にはそれぞれ坪量や表面性といった物理的特性があり、プリンター２０１はそれぞれの物理的特性に応じた印刷制御を行う必要がある。しかしながら、ユーザーが実際に利用したい用紙種類の物理的特定が、プリンター２０１の工場出荷時にあらかじめ定義された用紙種類のいずれにも適合しないことがしばしばある。
【００２７】
そのような場合に対応するため、プリンター２０１は新たな用紙種類（ユーザー設定用紙）の情報を、その物理的特性とともに登録できる入力手段を備える。画面７０１のテーブル７０２には現在登録されている用紙種類の一覧が表示される。登録ボタン７０３を押すと新しい用紙種類の情報を入力するための図７（Ｂ）の画面７０５に遷移する。削除ボタン７０４を押すと登録された用紙種類を削除できる。
【００２８】
図７（Ｂ）は新しい用紙種類情報を入力する画面７０５の例である。画面７０５では、新たな用紙種類の名称７０６、坪量７０７、表面性７０８といった属性の入力を行う。ＯＫボタン７０９を押すと新たな用紙種類が登録され、その情報がテーブル７０２に反映される。
【００２９】
以上の手順で、プリンター２０１に新たな用紙種類の登録を行うことができる。
【００３０】
図８はデータ保持部１０５３２に保存されているプリンターから取得済みのプリンター情報８０１の一例である。ここでは、特に本実施例で取り扱う用紙種類の情報を抜粋して示す。プリンター情報８０１は後述する図１４のＳ１４０５により、データ保持部１０５３２に保存されるデータで、プリンターから取得された拡張能力を指す。
【００３１】
用紙種類の情報は「Ｐｒｏｐｅｒｔｙ」要素のＮａｍｅ属性が「ＥｘｔｒａＰａｐｅｒｓ」で指定されるものとして表現されている。ユーザー設定用紙の情報８０２内部にはＰｒｏｐｅｒｔｙ要素が存在しており、Ｎａｍｅ属性を指定することでＰｒｏｐｅｒｔｙ要素の子要素であるパラメーターを取得することができる。Ｐｒｏｐｅｒｔｙ要素の子要素にはＳｔｒｉｎｇやＮｕｍｂｅｒ要素を記載しているが、それ以外の要素でも構わないし、要素の中に関してもＪＳＯＮを始めとする別のデータ構造を持つデータが入っていても良いものとする。
【００３２】
また、本実施例で取得される拡張能力としての用紙種類はユーザー設定用紙の情報８０２のひとつだけであるが、複数ある場合はユーザー設定用紙の情報８０２と同様の情報を続けて列挙しても構わない。
【００３３】
ここから、図９と図１０を用いて本実施例で行う処理の説明に必要な情報の補足を行う。
【００３４】
印刷設定画面９０１はＯＳ１０５４から提供されるドライバーフレームワークの機能によって実現される。そして、このＯＳ１０５４によって提供される印刷設定画面９０１では、プリンター２０１が持つ全ての機能に関する印刷設定項目のうち「部数」や「用紙サイズ」等といった一部の印刷設定項目しか表示されない。よって、印刷設定画面９０１に表示されていない機能に関する設定を行う場合、ユーザーは「その他の設定９０２」を押下することで、デバイスアプリ１０５２によって提供される印刷設定画面である詳細設定画面１００１（以降単に詳細設定画面１００１と呼ぶ）へ移行する。ここで、詳細設定画面１００１は複数のページから構成されており、ページ切替ボタン１００３の押下やタッチスクリーンのフリック、キーボードの操作を行うことで図１０から図１１  （Ａ）のような別のページに切り替え、設定を行うこともできる。その後、詳細設定画面１００１で必要な設定を行い、ユーザーが戻るボタン１００２を押下することで、再び印刷設定画面９０１に戻り、詳細設定画面１００１で行った設定変更を印刷設定に反映させる。印刷設定画面９０１と詳細設定画面１００１で共通の印刷設定項目については、詳細設定画面１００１で設定された内容が印刷設定画面９０１にも反映される。
【００３５】
なお、本実施例においては印刷設定画面９０１から詳細設定画面１００１に切り替わる形でＵＩの切り替えが行われているが、２つ以上の画面を切り替え、相互に設定を反映させる仕組みであるなら、ダイアログが立ち上がる等、別の機構でも構わない。
【００３６】
このように、ユーザーは詳細な設定を伴う印刷の際には、印刷設定画面９０１から適宜、詳細設定画面１００１に移行し、設定を行った上で印刷を実行するが、この処理の中で問題が生じることがある。以降、具体例を挙げて説明する。
【００３７】
まず、図９（Ｂ）の印刷設定画面９０１の設定項目９０３では「特殊コート紙」の選択肢が存在しない。一方、プリンターから取得したプリンター情報に基づいて表示される図１１（Ｂ）の詳細設定画面１００１の設定項目１１０１には「特殊コート紙」という選択肢が存在する。このため、詳細設定画面１００１で「特殊コート紙」を設定し、戻るボタン１００２を押下しても「特殊コート紙」の設定値を持たない印刷設定画面９０１では「特殊コート紙」という選択肢を表示できない。その後、印刷設定画面９０１の設定項目９０３の設定値を「普通紙」等に変更することは可能だが、その場合、再度印刷設定画面９０１内で「特殊コート紙」に戻すことができない。
【００３８】
この原因を以下に述べる。まず、詳細設定画面１００１は提供した各ベンダーで独自に処理の定義を行えるため自由に選択肢を増減させることができる。対して、ＯＳ１０５４は印刷設定画面９０１の設定項目９０３の表示に、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ５０１に記載されている情報以外は用いない。加えて、ＯＳ１０５４はドライバーがインストールされた時点のプリンター情報に従ってＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ５０１を生成している。つまり、印刷設定画面９０１の設定項目９０３で表示される選択肢はドライバーがインストールされた時点で決定された選択肢のみとなる。このため、ドライバーがインストールされた後にプリンターに「特殊コート紙」等の設定が追加された場合、「特殊コート紙」は詳細設定画面１００１上でしか選択できず、さらに印刷設定画面９０１の表示内容と詳細設定画面１００１の表示内容が食い違うといった問題が発生する。
【００３９】
以上の問題に対し、ＯＳ１０５４がプリンター情報を取得し、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ５０１を生成するまでの間に拡張処理を入れることで、印刷設定画面９０１に表示される設定項目９０３の変更を行う。これらの処理はプリンター情報生成部３０７とプリンター情報再作成部３０８の処理であり、図１３のフローを用いて説明する。なお、本フローの処理は特に断らない限りＯＳ１０５４上で動作するデバイスアプリ１０５２によって実行されるものとする。
【００４０】
Ｓ１３０１は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ（能力情報）の取得要求がＯＳ１０５４によって発行されるため、この通知を取得する。これは一般的なアプリケーションが印刷を行うために印刷設定画面９０１を表示しようとしたタイミング、あるいは詳細設定画面１００１から印刷設定画面９０１に戻ろうとした際に発生する。
【００４１】
Ｓ１３０２では、プリンター２０１からプリンター情報を取得する。
【００４２】
Ｓ１３０３では、Ｓ１３０２以前にプリンター２０１から取得を行い、ＱＰＢ３０４に保存されている既に取得済みのプリンター情報８０１の取得を行う。
【００４３】
Ｓ１３０４では、Ｓ１３０３でプリンター情報８０１の取得に成功したかどうかを判定する。成功した場合は、Ｓ１３０５に移行し、失敗した場合はＳ１３０７に移行する。
【００４４】
Ｓ１３０５では、Ｓ１３０２で取得したプリンター情報に、Ｓ１３０３で取得済みのプリンター情報８０１に登録されている情報を加えて、図６に示す「特殊コート紙」の情報６０２が追加されたＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ６０１の生成を行う。
【００４５】
Ｓ１３０７ではＳ１３０２で取得したプリンター情報のみによって、図６に示す「特殊コート紙」の情報６０２が追加されたＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ６０１の生成を行う。
【００４６】
Ｓ１３０６では生成したＳ１３０５又はＳ１３０７で生成されたＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ６０１を呼び出し元（ここではＯＳ１０５４）に応答する。
【００４７】
以上の処理により、ＯＳ１０５４によって提供される印刷設定画面９０１にプリンターで設定された用紙情報に基づいて選択肢が追加される。
【００４８】
図１４では、プリンターによって追加された用紙種類（例えば「特殊コート紙」）などを含む拡張されたプリンター情報をプリンター２０１から取得し、プリンタードライバー１０５３のデータ保持部１０５３２に保存する処理について記載する。図１４の処理は例えば管理アプリケーション３０９の更新ボタンが押下されることによって開始される。
【００４９】
ここで管理アプリケーション３０９に関して補足する。管理アプリケーション３０９とは、プリンター２０１の構成情報の取得や設定、カラー印刷を制限する等、プリンタードライバー１０５３を管理する設定を行うモジュールである。本実施例においては、特にユーザー設定用紙の情報８０２を取得して、保存済みのプリンター情報の更新を行う。なお、管理アプリケーションはユーザーがドライバーＵＩ等を操作することで直接実行することができる他、別のアプリ１０５１やデバイスアプリ１０５２、プリンタードライバー１０５３、ＯＳ１０５４から実行することもできる。
【００５０】
Ｓ１４０１では、管理アプリケーション３０９がプリンター２０１からプリンター情報を取得する。取得する内容は本実施例では、プリンタードライバー１０５３のインストール後にプリンター２０１上に追加されたユーザー設定用紙の情報である。Ｓ１４０１で取得する具体的なユーザー設定用紙の情報は取得する方法や取得要求の際のパラメーター指定によって異なるが、一例として用紙の名称や坪量、表面性といった物理的特性などの情報８０２で示したものと同等の内容を取得するものとする。なお、通信手段のネットワーク１０６１に関しては有線でも無線でも構わないし、ＵＳＢ等、プリンター２０１とコンピューター１００が相互に通信可能な物であるなら特に種類は問わない。
【００５１】
Ｓ１４０２では、ＱＰＢ３０４に保存された既に取得済みのプリンター情報８０１を取得する。
【００５２】
Ｓ１４０３ではＳ１４０１で取得した情報とＳ１４０２で取得した情報が一致するかを判定し、一致する場合は情報の更新が無いものとして処理を終了し、一致しない場合はＳ１４０４に移行する。
【００５３】
Ｓ１４０５では、Ｓ１４０１で取得したプリンター情報をＱＰＢ３０４に書き込む。この際、必要に応じて独自の拡張情報を埋め込んでも良い。
【００５４】
以上の処理を行うことで、プリンター２０１からプリンター情報を取得し、取得済みのプリンター情報８０１の更新を行うことができる。
【００５５】
ここでは、管理アプリケーションによってプリンター情報を更新するタイミングの一例を記載する。まず、一つ目はユーザーが管理アプリケーション等の専用アプリケーションを立ち上げ、更新ボタンの押下をする等、明示的に実行させる方法である。二つ目はインストール系の操作に紐付けて実行する方法である。具体的にはデバイスアプリ１０５２や管理アプリケーション３０９のインストーラが実行され、管理アプリケーション３０９の処理が含まれたモジュールが補助記憶装置１０５に配置される。そして、その後、デバイスアプリ１０５２又は管理アプリケーション３０９のインストーラの後処理として、図１４の処理を実行する方法である。あるいは、「プログラムの削除」等のインストールプログラムを管理する画面の「変更」ボタンの処理が実行されるタイミングで実行させても良いし、専用の「用紙情報取得」ボタンを追加しても良い。三つ目はＯＳ１０５４のサービスやタスクスケジューラを用いる方法である。タスクは「ユーザーのログイン時」「ＰＣ起動時」等の所定のタイミング又は「一定時間ごと」「指定時刻」等の定期的なタイミングで実行させる。また、ＯＳ１０５４から発行されるプリンター情報の更新イベントを通知する仕組みを利用しても良い。
【００５６】
本実施例では、一例としてプリンター２０１に新しい用紙種類が追加された際に、印刷設定画面９０１と詳細設定画面１００１の両方でプリンター２０１により追加された用紙種類を表示・設定させるために必要な手段を取り上げて説明した。しかし、プリンタードライバー１０５３がインストールされた後に変更されうるプリンターの設定や機能に関する情報であれば、用紙サイズ以外の情報を含むプリンター情報でも同様の処理を行うことができる。
【００５７】
［実施例２］
実施例１では、取得済みのプリンター情報８０１をＱＰＢ３０４に保存していた。しかし、ＱＰＢ３０４は内容の更新等の操作に一定以上のアクセス権が要求されるが、印刷中にユーザーが管理ユーザー権限でアクセスしているとはとは限らない。加えて、Ｗｉｎｄｏｗｓ（登録商標）ＳｔｏｒｅＤｅｖｉｃｅＡｐｐ等、モバイルを意識したアプリケーションでは、そもそも管理ユーザー権限に昇格できないものもある。このため、一般ユーザーは詳細設定画面１００１等のドライバーＵＩを操作中に図１２の用紙取得ボタン１２０１を押下しても、詳細設定画面１００１にユーザー設定用紙を表示させることができない可能性がある。
【００５８】
このため、本実施例では、実施例１で用いていたＱＰＢ３０４へのデータ保存をＵＰＢ３０５に置き換えることで、管理ユーザー権限を持たないアプリケーションからでもプリンターの拡張能力の取得し、設定を行えるようにする。
【００５９】
具体的な実施手段としてはデータの取得を行っていた図１４とプリンター情報の再作成を行っていた図１３のフローの変更を行うことで、これを実施する。
【００６０】
まず、図１３ではＳ１３０３で行っていたドライバーデータの取得を行う際に、取得先としてＱＰＢ３０４に加えてＵＰＢ３０５も対象とする。取得を行う方法はいくつか考えられるため、以下に例を上げる。まず、一つ目は単純にどちらかを優先する方法である（ＵＰＢ３０５が存在する場合は無条件でＵＰＢ３０５のデータのみを扱う）。二つ目はＱＰＢ３０４とＵＰＢ３０５の両方にアクセスできる場合、取得日時が新しい方を使用データとして扱う方法である。この際、対象がファイルであればファイルの更新日時情報を用いても良いし、データ内に予めタイムスタンプ情報を埋め込んでおき、それを使用する方法でも良い。三つ目は同じくＱＰＢ３０４とＵＰＢ３０５の両方にアクセスできる場合、ＱＰＢ３０４とＵＰＢ３０５の情報をマージ（「Ａ、Ｂ」と「Ｂ、Ｃ」がある場合「Ａ、Ｂ、Ｃ」を生成）して用いる方法である。
【００６１】
図１４においては、対象としていたＱＰＢ３０４へのデータのアクセスをＵＰＢ３０５に置き換えて実行しても構わない。
【００６２】
以上の手段を用いることで、管理ユーザー権限を持たないアプリケーションを考慮しつつプリンターの拡張情報を取得し、設定を行うことができる。
【００６３】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2016058041.tif 000003
【図２】
2016058041.tif 000004
【図３】
2016058041.tif 000005
【図４】
2016058041.tif 000006
【図５】
2016058041.tif 000007
【図６】
2016058041.tif 000008
【図７】
2016058041.tif 000009
【図８】
2016058041.tif 000010
【図９】
2016058041.tif 000011
【図１０】
2016058041.tif 000012
【図１１】
2016058041.tif 000013
【図１２】
2016058041.tif 000014
【図１３】
2016058041.tif 000015
【図１４】
2016058041.tif 000016