(57)【要約】      （修正有）【課題】Ｖ４プリンタドライバのインストール時等に、外部の記憶領域に記憶された変更情報を、プリンタドライバの設定情報の既定値に容易に反映させることができるようにする。【解決手段】情報処理装置１０は、印刷を制御する情報処理装置であって、印刷に関する設定情報を制御するスクリプトを利用して前記設定情報を管理するプリンタドライバを、情報処理装置にインストールするインストール部と、スクリプトから利用可能な記憶領域である設定情報記憶部とは異なる記憶領域である変更情報記憶部から、設定情報に関する変更情報を取得する変更情報取得部と、スクリプトを利用して設定情報を管理する設定制御部から、設定情報を取得し、取得した設定情報を変更情報に従って変更する設定情報変更部と、変更した設定情報に基づいてプリンタドライバの設定情報の既定値を設定する設定情報設定部と、を有する。【選択図】図６
2018073089.tif 000002
【特許請求の範囲】
【請求項１】
印刷を制御する情報処理装置であって、
前記印刷に関する設定情報を制御するスクリプトを利用して前記設定情報を管理するプリンタドライバを、前記情報処理装置にインストールするインストール部と、
前記スクリプトから利用可能な記憶領域である設定情報記憶部とは異なる記憶領域である変更情報記憶部から、前記設定情報に関する変更情報を取得する変更情報取得部と、
前記スクリプトを利用して前記設定情報を管理する設定制御部から、前記設定情報を取得し、前記取得した設定情報を前記変更情報に従って変更する設定情報変更部と、
前記変更した設定情報に基づいて前記プリンタドライバの前記設定情報の既定値を設定する設定情報設定部と、
を有する情報処理装置。
【請求項２】
前記設定制御部は、
第１の形式の第１の設定情報と、前記第１の形式とは異なる第２の形式の第２の設定情報とを管理し、
前記第１の設定情報を前記第２の設定情報に変換する制御、又は前記第２の設定情報を前記第１の設定情報に変換する制御を実行する請求項１に記載の情報処理装置。
【請求項３】
前記設定情報変更部は、
前記設定制御部から前記第１の設定情報を取得し、前記取得した第１の設定情報を前記変更情報に従って変更する請求項２に記載の情報処理装置。
【請求項４】
前記第１の設定情報は、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報である請求項２又は３に記載の情報処理装置。
【請求項５】
前記設定制御部は、
前記設定情報変更部によって変更された第１の設定情報を、前記第２の形式に変換して変更された第２の設定情報を作成し、
前記設定情報設定部は、
前記変更された第２の設定情報を用いて、前記プリンタドライバの前記設定情報の既定値を設定する請求項２乃至４のいずれか一項に記載の情報処理装置。
【請求項６】
前記第２の設定情報は、ＤＥＶＭＯＤＥ形式の設定情報である請求項２乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
前記取得した変更情報を、前記設定情報記憶部に保存する変更情報保存部を有する請求項１乃至６のいずれか一項に記載の情報処理装置。
【請求項８】
前記プリンタドライバの設定画面を表示する設定画面表示部と、
前記設定情報記憶部に保存された変更情報を、前記設定画面の表示に反映させる変更情報反映部と、
を有する請求項１乃至７のいずれか一項に記載の情報処理装置。
【請求項９】
前記設定制御部は、
前記設定情報記憶部に保存された変更情報を、前記プリンタドライバで設定可能な設定値を示す設定能力情報に反映する設定能力情報管理部を含む請求項１乃至８のいずれか一項に記載の情報処理装置。
【請求項１０】
設定情報変更部は、
前記プリンタドライバで設定可能な設定値を示す設定能力情報に基づいて、前記プリンタドライバの前記設定情報を変更する請求項１乃至８のいずれか一項に記載の情報処理装置。
【請求項１１】
請求項１乃至１０のいずれか一項に記載の情報処理装置と、
前記情報処理装置の制御に応じて印刷を実行する画像形成装置と、
を含む情報処理システム。
【請求項１２】
印刷を制御する情報処理装置を、
前記印刷に関する設定情報を制御するスクリプトを利用して前記設定情報を管理するプリンタドライバを、前記情報処理装置にインストールするインストール部と、
前記スクリプトから利用可能な記憶領域である設定情報記憶部とは異なる記憶領域である変更情報記憶部から、前記設定情報の変更情報を取得する変更情報取得部と、
前記スクリプトを利用して前記設定情報を管理する設定制御部から、前記設定情報を取得し、前記取得した設定情報を前記変更情報に従って変更する設定情報変更部と、
前記変更した設定情報に基づいて前記プリンタドライバの前記設定情報の既定値を設定する設定情報設定部と、
として機能させるためのプログラム。
【請求項１３】
印刷を制御する情報処理装置による情報処理方法であって、
前記情報処理装置が、
前記印刷に関する設定情報を制御するスクリプトを利用して前記設定情報を管理するプリンタドライバを、前記情報処理装置にインストールするステップと、
前記スクリプトから利用可能な記憶領域である設定情報記憶部とは異なる記憶領域である変更情報記憶部から、前記設定情報の変更情報を取得するステップと、
前記スクリプトを利用して前記設定情報を管理する設定制御部から、前記設定情報を取得し、前記取得した設定情報を前記変更情報に従って変更するステップと、
前記変更した設定情報に基づいて前記プリンタドライバの前記設定情報の既定値を設定するステップと、
を含む情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
Ｗｉｎｄｏｗｓ（登録商標）２０００からＷｉｎｄｏｗｓ７までのＷｉｎｄｏｗｓＯＳ（Operating System）では、Ｖｅｒｓｉｏｎ３（以降「Ｖ３」と称する）プリンタドライバと呼ばれるプリンタドライバのアーキテクチャが採用されている。また、Ｗｉｎｄｏｗｓ８以降のＷｉｎｄｏｗｓＯＳでは、Ｖ３プリンタドライバに加え、Ｖｅｒｓｉｏｎ４（以降「Ｖ４」と称する）プリンタドライバと呼ばれる新しいプリンタドライバのアーキテクチャが採用されている。
【０００３】
また、Ｖ３プリンタドライバにおいて、所定の記憶領域に設定データが記憶されているかを判断し、設定データが記憶されている場合、設定データを印刷の設定に反映させるプリンタドライバが知られている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
Ｖ３プリンタドライバは、所定の記憶領域に記憶した設定データを読み込むことができるので、例えば、インストール時等に、所定の記憶領域に記憶された設定データを、プリンタドライバの設定情報の既定値に反映させることができる。
【０００５】
一方、Ｖ４プリンタドライバは、プリンタドライバの設定情報を管理するスクリプトを利用して、設定情報の管理を行うが、このスクリプトは、プリンタドライバの管理領域とは異なる外部の記憶領域に記憶された設定データを読み込むことができない。したがって、Ｖ４プリンタドライバでは、インストール時等に、外部の記憶領域に記憶された設定データを読み込んで、プリンタドライバの設定情報の既定値に反映させることには困難を伴っていた。
【０００６】
本発明の実施の形態は、上記の問題点に鑑みてなされたものであって、Ｖ４プリンタドライバのインストール時等に、外部の記憶領域に記憶された変更情報を、プリンタドライバの設定情報の既定値に容易に反映させることができるようにする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明の一実施形態に係る情報処理装置は、印刷を制御する情報処理装置であって、前記印刷に関する設定情報を制御するスクリプトを利用して前記設定情報を管理するプリンタドライバを、前記情報処理装置にインストールするインストール部と、前記スクリプトから利用可能な記憶領域である設定情報記憶部とは異なる記憶領域である変更情報記憶部から、前記設定情報に関する変更情報を取得する変更情報取得部と、前記スクリプトを利用して前記設定情報を管理する設定制御部から、前記設定情報を取得し、前記取得した設定情報を前記変更情報に従って変更する設定情報変更部と、前記変更した設定情報に基づいて前記プリンタドライバの前記設定情報の既定値を設定する設定情報設定部と、を有する。
【発明の効果】
【０００８】
本発明の一実施形態によれば、Ｖ４プリンタドライバのインストール時等に、外部の記憶領域等に記憶された変更情報を、プリンタドライバの設定情報の既定値に容易に反映させることができるようになる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態に係る情報処理システムの一例のシステム構成を示す図である。
【図２】一実施形態に係るクライアント装置及びサーバ装置の一例のハードウェア構成を示す図である。
【図３】一実施形態に係る画像形成装置の一例のハードウェア構成を示す図である。
【図４】クライアント装置の一例のソフトウェア構成を示す図である。
【図５】Ｖ４プリンタドライバ及びストアデバイスアプリがアクセス可能な記憶領域について説明するための図である。
【図６】一実施形態に係るクライアント装置の機能構成の例を示す図である。
【図７】一実施形態に係るＶ４プリンタドライバのインストール処理の例を示すシーケンス図である。
【図８】一実施形態に係るＶ４プリンタドライバにおける設定情報の変更処理の例を示すシーケンス図である。
【図９】一実施形態に係るＶ４プリンタドライバにおける印刷処理の概要を示すシーケンス図である。
【図１０】第１の実施形態に係るプリンタドライバのインストール処理の一例を示すフローチャートである。
【図１１】第１の実施形態に係る変更前の設定情報のイメージを示す図である。
【図１２】第１の実施形態に係る変更情報のイメージを示す図である。
【図１３】第１の実施形態に係る変更情報を反映した設定情報のイメージを示す図である。
【図１４】第１の実施形態に係る対応情報の例を示す図である。
【図１５】第１の実施形態に係るプリンタドライバのインストール処理の別の一例を示すフローチャートである。
【図１６】第２の実施形態に係るプリンタドライバのインストール処理の例を示すフローチャートである。
【図１７】第２の実施形態に係る変更情報の設定画面への反映処理の例を示すフローチャートである。
【図１８】第２の実施形態に係る設定画面のイメージを示す図である。
【図１９】第２の実施形態に係る変更情報の設定能力情報への反映処理の例を示すフローチャートである。
【図２０】第２の実施形態に係る変更前の設定能力情報のイメージを示す図である。
【図２１】第２の実施形態に係る変更情報を反映した設定能力情報のイメージを示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
【００１１】
＜システム構成＞
まず、本実施形態に係る情報処理システム１のシステム構成について、図１を用いて説明する。図１は、一実施形態に係る情報処理システム１の一例のシステム構成を示す図である。
【００１２】
図１に示すように、本実施形態に係る情報処理システム１は、１台以上のクライアント装置１０と、１台以上の画像形成装置２０と、サーバ装置３０とを含み、これら装置はＬＡＮ（Local Area Network）等のネットワークＮを介して互いに通信可能に接続されている。
【００１３】
クライアント装置１０は、例えばＰＣ（パーソナルコンピュータ）、スマートフォン、タブレット端末等である。クライアント装置１０は、例えば、ユーザからの印刷指示を受け付けて、印刷対象データから印刷データを作成した上で、印刷データを画像形成装置２０に送信する。又は、クライアント装置１０は、例えば、ユーザからの印刷指示を受け付けて、印刷対象データをサーバ装置３０に送信する。
【００１４】
なお、印刷対象データとは、例えば、画像データや文書データ等の印刷可能な電子データである。また、印刷データとは、例えば、印刷対象データを、画像形成装置２０が印刷可能なＰＤＬ（Page Description Language）形式に変換した電子データである。
【００１５】
画像形成装置２０は、例えばプリンタ、印刷機能を備えたＭＦＰ（Multifunction Peripheral）等である。画像形成装置２０は、クライアント装置１０又はサーバ装置３０から受信した印刷データを印刷する。
【００１６】
サーバ装置３０は、例えばＰＣ等である。サーバ装置３０は、例えば、クライアント装置１０から受信した印刷対象データから印刷データを作成して、作成した印刷データを画像形成装置２０に送信する。
【００１７】
また、サーバ装置３０は、ファイルサーバとして機能しても良い。すなわち、サーバ装置３０は、例えば、クライアント装置１０から受信した印刷データを記憶しておき、画像形成装置２０からの要求に応じて、記憶した印刷データを要求元の画像形成装置２０に送信しても良い。
【００１８】
なお、以降では、１台以上のクライアント装置１０について、各々を区別するときは、「クライアント装置１０−１」、「クライアント装置１０−２」等と表す。同様に、１台以上の画像形成装置２０について、各々を区別するときは、「画像形成装置２０−１」、「画像形成装置２０−２」等と表す。
【００１９】
＜ハードウェア構成＞
次に、本実施形態に係る情報処理システム１に含まれるクライアント装置１０、画像形成装置２０、及びサーバ装置３０のハードウェア構成について、図２及び図３を用いて説明する。
【００２０】
≪クライアント装置１０及びサーバ装置３０≫
図２は、一実施形態に係るクライアント装置１０及びサーバ装置３０の一例のハードウェア構成を示す図である。なお、クライアント装置１０及びサーバ装置３０は、同様のハードウェア構成を有しているため、以降では、クライアント装置１０のハードウェア構成について説明する。
【００２１】
図２に示すように、本実施形態に係るクライアント装置１０は、入力装置１０１と、表示装置１０２と、外部Ｉ／Ｆ１０３と、ＲＡＭ（Random Access Memory）１０４とを有する。また、クライアント装置１０は、ＲＯＭ（Read Only Memory）１０５と、ＣＰＵ（Central Processing Unit）１０６と、通信Ｉ／Ｆ１０７と、ＨＤＤ（Hard Disk Drive）１０８とを有する。これらのハードウェアは、バスＢで互いに接続されている。
【００２２】
入力装置１０１は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイ等を含み、クライアント装置１０による処理結果を表示する。なお、入力装置１０１及び表示装置１０２の少なくとも一方は、必要なときにクライアント装置１０に接続して利用する形態であっても良い。
【００２３】
通信Ｉ／Ｆ１０７は、クライアント装置１０をネットワークＮに接続するインタフェースである。クライアント装置１０は、通信Ｉ／Ｆ１０７を介して通信を行うことができる。
【００２４】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。ＨＤＤ１０８に格納されるプログラムやデータには、クライアント装置１０全体を制御する基本ソフトウェアであるＯＳ（Operating System）、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等がある。
【００２５】
なお、クライアント装置１０は、ＨＤＤ１０８に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置（例えばソリッドステートドライブ：ＳＳＤ）を有して良い。また、ＨＤＤ１０８は、格納しているプログラムやデータを所定のファイルシステムやＤＢにより管理している。
【００２６】
外部Ｉ／Ｆ１０３は、外部装置とのインタフェースである。外部装置には、記録媒体１０３ａ等がある。クライアント装置１０は、外部Ｉ／Ｆ１０３を介して記録媒体１０３ａの読み取りや書き込みを行うことができる。記録媒体１０３ａには、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００２７】
ＲＯＭ１０５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ１０５には、ＯＳ設定、ネットワーク設定等のプログラムやデータ、及びクライアント装置１０の起動時に実行されるＢＩＯＳ（Basic Input/Output System）が格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリである。
【００２８】
ＣＰＵ１０６は、ＲＯＭ１０５やＨＤＤ１０８等の記憶装置からプログラムやデータをＲＡＭ１０４上に読み出し、当該プログラムやデータに基づく処理を実行することで、クライアント装置１０全体の制御やその他の機能を実現する演算装置である。
【００２９】
本実施形態に係るクライアント装置１０及びサーバ装置３０は、図２に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３０】
≪画像形成装置２０≫
図３は、一実施形態に係る画像形成装置２０の一例のハードウェア構成を示す図である。
【００３１】
図３に示すように、本実施形態に係る画像形成装置２０は、コントローラ２０１と、操作パネル２０２と、外部Ｉ／Ｆ２０３と、通信Ｉ／Ｆ２０４と、プロッタ２０５を有する。また、コントローラ２０１は、ＣＰＵ２１１と、ＲＡＭ２２１と、ＲＯＭ２３１と、ＮＶＲＡＭ２４１と、ＨＤＤ２５１とを有する。
【００３２】
ＲＯＭ２３１は、各種プログラムやデータを格納している不揮発性の半導体メモリである。ＲＡＭ２２１は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＮＶＲＡＭ２４１は、例えば設定情報等を格納している。また、ＨＤＤ２５１は、各種プログラムやデータを格納している不揮発性の記憶装置である。
【００３３】
ＣＰＵ２１１は、ＲＯＭ２３１やＮＶＲＡＭ２４１、ＨＤＤ２５１等からプログラムやデータ、設定情報等をＲＡＭ２２１上に読み出し、当該プログラムやデータに基づく処理を実行することで、画像形成装置２０全体の制御やその他の機能を実現する演算装置である。
【００３４】
操作パネル２０２は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを有する。外部Ｉ／Ｆ２０３は、外部装置とのインタフェースである。外部装置には、記録媒体２０３ａ等がある。画像形成装置２０は、外部Ｉ／Ｆ２０３を介して記録媒体２０３ａの読み取りや書き込みを行うことができる。なお、記録媒体２０３ａには、例えば、ＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００３５】
通信Ｉ／Ｆ２０４は、画像形成装置２０をネットワークＮに接続するインタフェースである。画像形成装置２０は、通信Ｉ／Ｆ２０４を介して通信を行うことができる。プロッタ２０５は、印刷データを印刷する印刷装置である。
【００３６】
本実施形態に係る画像形成装置２０は、図３に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３７】
＜クライアント装置１０のソフトウェア構成＞
次に、本実施形態に係るクライアント装置１０のソフトウェア構成について、図４を用いて説明する。図４は、クライアント装置１０の一例のソフトウェア構成を示す図である。
【００３８】
図４に示すように、本実施形態に係るクライアント装置１０は、アプリケーション３０１と、ＯＳ３０２と、プリンタドライバ３０３と、ストアデバイスアプリ３０４とを有する。
【００３９】
アプリケーション３０１は、例えば文書作成ソフト、画像閲覧・編集ソフト、ブラウザ等、ユーザの印刷指示に応じて、ＯＳ３０２に印刷の指示（要求）を行うことができるアプリケーションソフトである。アプリケーション３０１には、ストアアプリ３１１と、デスクトップアプリ３２１とが含まれる。
【００４０】
ストアアプリ３１１は、例えば、Ｗｉｎｄｏｗｓ（登録商標）８／ＷｉｎｄｏｗｓＲＴ及びそれ以降のバージョンのＷｉｎｄｏｗｓＯＳにアプリケーションを提供する「Ｗｉｎｄｏｗｓストア」から、入手可能なアプリケーションである。ストアアプリ３１１では、「ストアアプリ  ＵＩ」が用いられる。なお、Ｗｉｎｄｏｗｓ８及びＷｉｎｄｏｗｓ８．１では、ＯＳ３０２によって提供される「Ｍｏｄｅｒｎ  ＵＩ」又は「Ｍｅｔｒｏ  ＵＩ」とも称されるＵＩからストアアプリ３１１が呼び出される。
【００４１】
一方、デスクトップアプリ３２１は、例えば、Ｗｉｎｄｏｗｓ７以前のバージョンのＷｉｎｄｏｗｓＯＳにおいても使用可能なアプリケーションである。
【００４２】
ＯＳ３０２は、Ｗｉｎｄｏｗｓ８／ＷｉｎｄｏｗｓＲＴ及びそれ以降のバージョンのＷｉｎｄｏｗｓＯＳである。
【００４３】
プリンタドライバ３０３は、例えば、Ｖｅｒｓｉｏｎ４プリンタドライバ（以降では、「Ｖ４プリンタドライバ」と表す。）である。Ｖ４プリンタドライバとは、Ｗｉｎｄｏｗｓ８／ＷｉｎｄｏｗｓＲＴから採用されたアーキテクチャに基づくプリンタドライバである。以降では、プリンタドライバ３０３を「Ｖ４プリンタドライバ３０３」とも表す。
【００４４】
なお、Ｗｉｎｄｏｗｓ８以降のＷｉｎｄｏｗｓＯＳでは、Ｗｉｎｄｏｗｓ２０００からＷｉｎｄｏｗｓ７で使用されていたＶｅｒｓｉｏｎ３プリンタドライバ（以降では、「Ｖ３プリンタドライバ」と表す。）に加えて、Ｖ４プリンタドライバも使用可能である。
【００４５】
プリンタドライバ３０３は、拡張設定部３１３と、設定制御部３２３と、描画部３３３とを含む。
【００４６】
拡張設定部３１３は、プリンタ拡張とも称され、デスクトップアプリ３２１から印刷を行う場合に、ベンダ独自の印刷設定画面を表示する。
【００４７】
設定制御部３２３は、禁則スクリプトとも称され、例えば、印刷設定の組み合わせが正当であるか否かを検証する。拡張設定部３１３は、例えば、設定制御部３２３により正当でないと検証された印刷設定の組み合わせを非表示にすること等ができる。
【００４８】
また、設定制御部３２３は、アプリケーション３０１やＯＳ３０２等からの要求に応じて、プリンタドライバ３０３が設定可能な機能の情報を示すＰｒｉｎｔＣａｐａｂｉｌｉｔｙを返信する。更に、設定制御部３２３は、アプリケーション３０１やＯＳ３０２等からの要求に応じて、プリンタドライバ３０３に設定されている各種機能の設定値をＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇから取得し、取得した設定値を示すＰｒｉｎｔＴｉｃｋｅｔを返信する。また、設定制御部３２３は、ＰｒｉｎｔＴｉｃｋｅｔで示された設定値をＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇに保存する。
【００４９】
なお、ＯＳ３０２に返信されたＰｒｉｎｔＣａｐａｂｉｌｉｔｙやＰｒｉｎｔＴｉｃｋｅｔは、例えば、拡張設定部３１３が表示する印刷設定画面における各機能の現在値の表示、選択肢の表示等に利用される。
【００５０】
描画部３３３は、アプリケーション３０１において印刷指示が行われた印刷対象データから印刷データを作成する。
【００５１】
ストアデバイスアプリ３０４は、ストアアプリ３１１から印刷を行う場合に、ベンダ独自の印刷設定画面を表示する。なお、ストアデバイスアプリ３０４は、ストアアプリ３１１と同様に、「Ｗｉｎｄｏｗｓストア」から入手可能なアプリケーションである。
【００５２】
デスクトップアプリ３２１から印刷を行う場合、プリンタドライバ３０３は、拡張設定部３１３により表示された印刷設定画面で設定された設定内容に基づいて、印刷データを作成することができる。一方で、ストアアプリ３１１から印刷を行う場合、プリンタドライバ３０３は、ストアデバイスアプリ３０４により表示された印刷設定画面で設定された設定内容に基づいて、印刷データを作成することができる。
【００５３】
拡張設定部３１３及びストアデバイスアプリ３０４は、ベンダ独自の印刷設定画面を表示するＵＩ部３０５を構成する。
【００５４】
＜Ｖ４プリンタドライバ３０３及びストアデバイスアプリ３０４がアクセス可能な記憶領域＞
次に、Ｖ４プリンタドライバ３０３及びストアデバイスアプリ３０４がアクセス可能な記憶領域について、図５を用いて説明する。図５は、Ｖ４プリンタドライバ３０３及びストアデバイスアプリ３０４がアクセス可能な記憶領域について説明するための図である。
【００５５】
図５に示すように、拡張設定部３１３、設定制御部３２３、描画部３３３、及びストアデバイスアプリ３０４は、ＰｒｏｐｅｒｔｙＢａｇ４００と呼ばれる記憶領域にアクセスすることができる。なお、このような記憶領域へのアクセスは、ＯＳ３０２によって提供されるＡＰＩ（Application Programming Interface）を用いて行うことができる。
【００５６】
図５に示すように、ＰｒｏｐｅｒｔｙＢａｇ４００には、ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０と、ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０と、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０とが含まれる。
【００５７】
ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０は、Ｖ４プリンタドライバ３０３を作成するときに決定された構成情報等を記憶する記憶領域である。拡張設定部３１３、設定制御部３２３、描画部３３３、及びストアデバイスアプリ３０４は、ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０から各種情報の読み出しが可能である。一方で、拡張設定部３１３、設定制御部３２３、描画部３３３、及びストアデバイスアプリ３０４は、ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０に対して、情報の書き込みを行うことはできない。
【００５８】
ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０は、論理プリンタ（プリンタアイコン）毎の設定情報等を記憶する記憶領域である。拡張設定部３１３及びストアデバイスアプリ３０４は、ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０に対して、各種情報の読み出し及び書き込みが可能である。また、設定制御部３２３及び描画部３３３は、ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０に対して、各種情報の読み出しが可能である。
【００５９】
なお、論理プリンタとは、例えば、ＯＳ３０２のプリンタフォルダ等にプリンタアイコンとして表示される仮想的なプリンタである。例えば、クライアント装置１０の利用者は、１つの画像形成装置２０に対して、設定情報（例えば、用紙サイズや向き、印刷品質等）が異なる複数の論理プリンタを作成することができる。
【００６０】
ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０は、論理プリンタ毎に、ユーザ毎の設定情報等を記憶する記憶領域である。拡張設定部３１３、設定制御部３２３、及びストアデバイスアプリ３０４は、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０に対して、各種情報の読み出し及び書き込みが可能である。
【００６１】
また、拡張設定部３１３及び描画部３３３は、更に、独自記憶領域５００に対して、各種情報の読み出し及び書き込みが可能である。
【００６２】
独自記憶領域５００は、例えばレジストリやファイル等を用いて実現され、ＰｒｏｐｅｒｔｙＢａｇ４００とは異なる記憶領域である。独自記憶領域５００は、Ｖ４プリンタドライバ３０３を提供するベンダ等によって定義される。
【００６３】
ストアデバイスアプリ３０４は、ＯＳ３０２の課す制約により、ＰｒｏｐｅｒｔｙＢａｇ４００以外の記憶領域に対してアクセスすることはできない。また、設定制御部３２３は、上述したＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇ及びＰｒｏｐｅｒｔｙＢａｇ４００以外の記憶領域に対してアクセスすることはできない。すなわち、ストアデバイスアプリ３０４及び設定制御部３２３は、独自記憶領域５００に対して、各種情報の読み出しや書き込み等を行うことができない。
【００６４】
このことは、ストアアプリ３１１に課されている制約と同様であり、例えば、ストアデバイスアプリ３０４及び設定制御部３２３が、ＯＳ３０２が使用するレジストリ等を変更し、ＯＳ３０２の動作に悪影響を与えることを防ぐためである。このような技術は、「サンドボックス」等と称されている。
【００６５】
＜機能構成＞
図６は、一実施形態に係るクライアント装置１０の機能構成の例を示す図である。
【００６６】
クライアント装置（情報処理装置）１０は、ＯＳ３０２、インストーラ６１０、プリンタドライバ３０３、及びストアデバイスアプリ３０４等のプログラムを実行する情報処理装置である。なお、図６に示すＯＳ３０２、プリンタドライバ３０３、及びストアデバイスアプリ３０４は、図４に示すＯＳ３０２、プリンタドライバ３０３、及びストアデバイスアプリ３０４に対応している。
【００６７】
インストーラ６１０は、クライアント装置１０にＶ４プリンタドライバであるプリンタドライバ３０３をインストールして、クライアント装置１０でプリンタドライバ３０３を利用できるようにするインストール用のプログラムである。
【００６８】
設定情報記憶部６３０は、スクリプト（禁則スクリプト等）を用いてプリンタドライバ３０３の設定情報を制御する設定制御部３２３から利用可能な記憶領域（例えば、ＰｒｏｐｅｒｔｙＢａｇ４００）である。
【００６９】
変更情報記憶部６２０は、設定情報記憶部６３０とは異なる記憶領域であり、プリンタドライバ３０３の設定情報を、管理者等の要望に応じて変更するための情報である変更情報Ａ６２１を記憶する。ここで、印刷に関する設定情報の既定値の一例を表１に示す。
【００７０】
【表１】
2018073089.tif 000003
表１は、プリンタドライバ３０３の印刷に関する設定情報の既定値の一例を示している。
【００７１】
表１の例では、プリンタドライバ３０３は、用紙サイズ、カラー設定、両面、集約、用紙種類等の設定項目を有しており、設定項目毎に選択肢と、デフォルトの設定値である既定値とが記憶されている。本実施形態では、プリンタドライバ３０３は、例えば、表１に示すような設定情報の既定値を保持しているものとする。
【００７２】
本実施形態では、クライアント装置１０を管理する管理者等は、変更情報Ａ６２１を変更情報記憶部６２０に格納して、インストーラ６１０を実行することにより、表１に示す設定情報の既定値をカスタマイズ（変更）することができる。
【００７３】
なお、設定情報の既定値のカスタマイズとは、プリンタドライバ３０３がクライアント装置１０にインストールされたときの設定情報の既定値を、情報処理システム１の管理者等が変更することを示す。例えば、ユーザが、プリンタドライバ３０３がインストール済のクライアント装置１０を利用する際に印刷の設定情報を変更する操作等は、カスタマイズには含まれない。
【００７４】
設定情報の既定値のカスタマイズには、例えば、既定のカラー設定を「カラー」から「白黒」に変更する既定値の変更、カラー設定の選択肢を「白黒」のみに限定する印刷設定の限定や、固定化等が含まれる。
【００７５】
また、Ｖ４プリンタドライバでは、設定情報の既定値のカスタマイズを行う場合、設定制御部３２３とＵＩ部３０５とに対して、それぞれ、カスタマイズの処理が行われる。
【００７６】
（インストーラの機能構成）
インストーラ６１０は、インストール部６１１、変更情報取得部６１２、設定情報変更部６１３、設定情報設定部６１４、及び変更情報保存部６１５等を有する。
【００７７】
クライアント装置１０は、例えば、図２のＣＰＵ１０６でインストーラ６１０を実行することにより、インストール部６１１、変更情報取得部６１２、設定情報変更部６１３、設定情報設定部６１４、及び変更情報保存部６１５等を実現している。
【００７８】
インストール部６１１は、クライアント装置１０にプリンタドライバ３０３をインストールする一連の処理のうち、一般的なＶ４プリンタドライバのインストール処理を実行する。なお、インストール部６１１が実行するＶ４プリンタドライバのインストール処理については後述する。
【００７９】
変更情報取得部６１２は、変更情報記憶部６２０に記憶された変更情報Ａ６２１を取得（読み出し）する。
【００８０】
設定情報変更部６１３は、設定制御部３２３から、プリンタドライバ３０３の印刷に関する設定情報を取得し、取得した設定情報を、変更情報取得部６１２が取得した変更情報に従って変更する。
【００８１】
好ましくは、設定情報変更部６１３が設定制御部３２３から、ＰｒｉｎｔＴｉｃｋｅｔ形式（第１の形式）の設定情報（第１の設定情報）を取得する。ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報は、ＰｒｉｎｔＳｃｈｅｍａと呼ばれる仕様に基づく印刷設定をＸＭＬ（Extensible Markup Language）形式で表現する設定情報であり、内容の解釈、及び変更が容易である。
【００８２】
別の一例として、設定情報変更部６１３が設定制御部３２３から取得する設定情報は、ＤＥＶＭＯＤＥ形式（第２の形式）の設定情報（第２の設定情報）であっても良い。
【００８３】
ただし、ＤＥＶＭＯＤＥ形式の設定情報には、一般的に仕様が公開されている「Ｐｕｂｌｉｃ」の設定情報と、ベンダ独自の形式で記述された「Ｐｒｉｖａｔｅ」の設定情報とがある。このうち、「Ｐｒｉｖａｔｅ」の設定情報は、外部モジュール（インストーラ６１０等）が内容を解釈し、変更することは、一般的に困難である。したがって、設定情報変更部６１３は、「Ｐｕｂｌｉｃ」の設定情報のみをカスタマイズするとき等に、ＤＥＶＭＯＤＥ形式の設定情報を取得し、取得した設定情報を、変更情報取得部６１２が取得した変更情報に従って変更することが可能である。
【００８４】
ここでは、設定情報変更部６１３が設定制御部３２３から取得し、変更する設定情報が、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報であるものとして以下の説明を行う。
【００８５】
設定情報設定部６１４は、設定情報変更部６１３が変更した設定情報に基づいて、プリンタドライバ３０３の設定情報の既定値を設定する。
【００８６】
例えば、設定情報変更部６１３が変更情報Ａ６２１に従って変更したＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報は、プリンタドライバ３０３の設定制御部３２３によって、ＤＥＶＭＯＤＥ形式の変更後の設定情報に変換される。
【００８７】
設定情報設定部６１４は、設定制御部３２３によってＤＥＶＭＯＤＥ形式の設定情報に変換された変更後の設定情報を、ＯＳ３０２で用意されているＡＰＩを用いてプリンタドライバ３０３の設定情報の既定値として設定する。
【００８８】
変更情報保存部６１５は、変更情報取得部６１２が取得した変更情報Ａ６２１を、設定情報記憶部６３０に保存する。なお、設定情報記憶部６３０に記憶される変更情報は、変更情報記憶部６２０に記憶された変更情報Ａ６２１と同じ情報で良いが、ここでは、変更情報記憶部６２０に記憶された変更情報Ａ６２１と区別するため、変更情報Ｂ６３１と表すものとする。
【００８９】
（プリンタドライバの機能構成）
プリンタドライバ３０３は、印刷に関する設定情報を制御するスクリプト（禁則スクリプト等）を利用して設定情報を管理するプリンタドライバ（Ｖ４プリンタドライバ、又は同様のアーキテクチャのプリンタドライバ）である。プリンタドライバ３０３は、図４で前述したように、拡張設定部３１３、設定制御部３２３、及び描画部３３３を含む。
【００９０】
クライアント装置１０は、例えば、図２のＣＰＵ１０６で、プリンタドライバ３０３を実行することにより、拡張設定部３１３、設定制御部３２３、及び描画部３３３等を実現している。
【００９１】
設定制御部３２３は、印刷に関する設定情報を制御するスクリプト（禁則スクリプト等）を利用して、プリンタドライバ３０３の設定情報を管理する。設定制御部３２３は、設定情報管理部６４１、設定能力情報管理部６４２、及び排他設定制御部６４３を含む。
【００９２】
設定情報管理部６４１は、ＰｒｉｎｔＴｉｃｋｅｔ形式（第１の形式）の設定情報（第１の設定情報）と、ＤＥＶＭＯＤＥ形式（第２の形式）の設定情報（第２の設定情報）とを、スクリプトを用いて相互に変換する。
【００９３】
プリンタドライバ３０３の印刷に関する設定情報にはＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報と、ＤＥＶＭＯＤＥ形式の第２の設定情報とがある。
【００９４】
ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報は、前述したようにＸＭＬ形式で表現される設定情報であり、例えば、文字列等で記載されている。
【００９５】
ＤＥＶＭＯＤＥ形式の設定情報は、ＤＥＶＭＯＤＥ構造体と呼ばれるバイナリ形式の設定情報である。設定情報の既定値は、このＤＥＶＭＯＤＥ構造体に記憶され、管理されている。
【００９６】
Ｖ４プリンタドライバは、基本的にＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を用いて様々な処理を行うが、アプリケーション３０１によって、Ｄｅｖｍｏｄｅ形式で印刷の設定を行う場合と、ＰｒｉｎｔＴｉｃｋｅｔ形式で印刷の設定を行う場合とがある。したがって、Ｖ４プリンタドライバは、基本的に、ＤＥＶＭＯＤＥ形式の設定情報からＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を作成する機能と、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報からＤｅｖｍｏｄｅ形式の設定情報を作成する機能とを有している。
【００９７】
設定能力情報管理部６４２は、プリンタドライバ３０３で設定可能な設定値を示す設定能力情報を管理する。プリンタドライバ３０３で設定可能な設定値には、例えば、用紙サイズ（Ａ４、Ｌｅｔｔｅｒ、Ｂ５等）、両面（しない、長辺綴じ、短辺綴じ等）、集約（しない、２ｉｎ１、４ｉｎ１等）等が含まれる。
【００９８】
設定能力情報管理部６４２は、例えば、アプリケーション３０１、又はＯＳ３０２からの要求に応じて、プリンタドライバ３０３が設定可能な機能の情報を示すＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報を提供する。
【００９９】
好ましくは、設定能力情報管理部６４２は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１の変更内容を、提供する設定能力情報等に反映する。
【０１００】
排他設定制御部６４３は、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報の中に、同時に設定することができない排他関係にある設定値が含まれている場合に、排他関係を解消するように設定値を変更する。
【０１０１】
例えば、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報に、用紙サイズ「Ｂ５」、給紙トレイ「トレイ２」が設定されており、トレイ２の用紙サイズが「Ａ４」である場合、排他設定制御部６４３は、例えば、給紙トレイを「自動選択」に自動的に変更する。
【０１０２】
拡張設定部３１３は、図４のデスクトップアプリ３２１から印刷を行う際に表示されるプリンタドライバ３０３の設定画面を表示する。拡張設定部３１３は、設定画面表示部６５１、設定変更部６５２、及び変更情報反映部６５３を含む。
【０１０３】
設定画面表示部６５１は、プリンタドライバ３０３の印刷設定の設定画面を、表示装置１０２等に表示させる。
【０１０４】
設定変更部６５２は、設定画面表示部６５１が表示させた印刷設定の設定画面を用いて、利用者が印刷設定を変更した場合、変更された設定を設定情報に反映する。
【０１０５】
変更情報反映部６５３は、設定情報記憶部６３０に記憶されている変更情報Ｂ６３１を取得し、設定画面表示部６５１が表示する設定画面に反映させる。
【０１０６】
ストアデバイスアプリ３０４は、図４のストアアプリ３１１から印刷を行う際に表示されるプリンタドライバ３０３の設定画面を表示する。ストアデバイスアプリ３０４は、設定画面表示部６６１、設定変更部６６２、及び変更情報反映部６６３を含む。なお、設定画面表示部６６１、設定変更部６６２、及び変更情報反映部６６３の機能は、拡張設定部３１３の拡張設定部３１３は、設定画面表示部６５１、設定変更部６５２、及び変更情報反映部６５３と同様である。
【０１０７】
＜Ｖ４プリンタドライバの基本的な処理の流れ＞
本実施形態に係るプリンタドライバ３０３の処理について説明する前に、一般的なＶ４プリンタドライバの基本的な処理の概要について説明する。
【０１０８】
（インストール処理）
図７は、一実施形態に係るＶ４プリンタドライバのインストール処理の例を示すシーケンス図である。この処理は、一般的なＶ４プリンタドライバのインストール時における設定制御部の処理の例を示している。なお、図７に示すインストーラ７２０は、一般的なＶ４プリンタドライバのインストーラを示しており、設定制御部７３０は、一般的なＶ４プリンタドライバの設定制御部を示している。
【０１０９】
ステップＳ７０１において、インストーラ７２０は、例えば、利用者の操作等に応じてＯＳ３０２にＶ４プリンタドライバをインストールする。
【０１１０】
ステップＳ７０２において、ＯＳ３０２は、Ｖ４プリンタドライバのＤＥＶＭＯＤＥ形式の設定情報をＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報に変換する処理を、設定制御部７３０に要求する。例えば、ＯＳ３０２は、予め用意されたＡＰＩ（ｃｏｎｖｅｒｔＤｅｖＭｏｄｅＴｏＰｒｉｎｔＴｉｃｋｅｔ）等を用いて、ＤＥＶＭＯＤＥ形式の設定情報からＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報への変換を要求する。
【０１１１】
ステップＳ７０３において、設定制御部７３０は、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇから、Ｖ４プリンタドライバのＤＥＶＭＯＤＥ形式の設定情報を読み出す。
【０１１２】
なお、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇは、図５で説明したＰｒｏｐｅｒｔｙＢａｇ４００とは異なり、Ｖ４プリンタドライバからは設定制御部３２３のみがアクセス可能な記憶領域である。ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇはＯＳ３０２によって管理され、設定制御部７３０は、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇを用いてＤＥＶＭＯＤＥ構造体に記憶されたＶ４プリンタドライバの設定情報を読み出すことができる。
【０１１３】
また、設定制御部７３０が、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇに記憶されたＤＥＶＭＯＤＥ形式の設定情報に変更を加えると、その変更内容が、ＯＳ３０２によってＤＥＶＭＯＤＥ構造体に反映される。
【０１１４】
ステップＳ７０４において、設定制御部７３０は、読み出したＤＥＶＭＯＤＥ形式の設定情報から、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を作成する。
【０１１５】
ステップＳ７０５において、設定制御部７３０は、作成したＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を含む完了通知を、ＯＳ３０２に通知する。
【０１１６】
ステップＳ７０６において、ＯＳ３０２は、通知されたＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報の排他処理を、設定制御部７３０に要求する。例えば、ＯＳ３０２は、予め用意されたＡＰＩ（ＶａｌｉｄａｔｅＰｒｉｎｔＴｉｃｋｅｔ）を用いて、作成されたＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報の排他処理を、設定制御部７３０に要求する。
【０１１７】
ステップＳ７０７において、設定制御部７３０は、設定情報の排他処理を実行する。例えば、設定制御部７３０は、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報の中から同時に設定できない項目を抽出し、設定を変更する。
【０１１８】
ステップＳ７０７において、設定制御部７３０は、排他処理をしたＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を含む完了通知を、ＯＳ３０２に通知する。
【０１１９】
ステップＳ７０９において、ＯＳ３０２は、Ｖ４プリンタドライバのＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報をＤＥＶＭＯＤＥ形式の設定情報に変換する処理を、設定制御部７３０に要求する。例えば、ＯＳ３０２は、予め用意されたＡＰＩ（ｃｏｎｖｅｒＰｒｉｎｔＴｉｃｋｅｔＴｏＤｅｖｍｏｄｅ）等を用いて、ＰｒｉｎｔＴｉｃｋｅｔの設定情報からＤＥＶＭＯＤＥ形式の設定情報への変換を要求する。
【０１２０】
ステップＳ７１０において、設定制御部７３０は、ＰｒｉｎｔＴｉｃｋｅｔから設定情報を読み出す。
【０１２１】
ステップＳ７１１において、設定制御部７３０は、読み出した設定情報をＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇに保存する。
【０１２２】
ステップＳ７１２において、設定制御部７３０は、完了通知をＯＳ３０２に通知する。
【０１２３】
ステップＳ７１３において、ＯＳ３０２は、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇに保存されたＶ４プリンタドライバの設定情報の変更内容を、ＤＥＶＭＯＤＥ構造体に反映させる。
【０１２４】
ステップＳ７１４において、ＯＳ３０２は、インストールの完了通知をインストーラ７２０に通知する。
【０１２５】
上記の処理により、クライアント装置１０にインストールされたＶ４プリンタドライバの設定情報は、排他処理により設定内容の矛盾が解決された上で、プリンタドライバ３０３の設定情報の既定値として設定される。
【０１２６】
Ｖ４プリンタドライバに含まれる拡張設定部３１３、設定制御部３２３、及び描画部３３３のうち、インストール時に動作するのは、図７に示すように設定制御部３２３のみである。
【０１２７】
また、設定制御部３２３は、図５で前述した独自記憶領域５００に相当する図６の変更情報記憶部６２０から情報を読み出しすることができない。したがって、従来の構成では、Ｖ４プリンタドライバは、変更情報記憶部６２０に記憶された変更情報Ａ６２１を読み出すことができず、Ｖ４プリンタドライバの設定情報の既定値（デフォルト値）を変更することはできなかった。
【０１２８】
（設定情報の変更処理）
図８は、一実施形態に係るＶ４プリンタドライバにおける設定情報の変更処理の例を示すシーケンス図である。この処理は、一般的なＶ４プリンタドライバにおいて、ユーザが印刷に関する設定情報を変更する場合の処理の例を示している。
【０１２９】
ステップＳ８０１において、利用者が、アプリケーション３０１に対して、印刷の設定を変更するための設定要求操作を行う。
【０１３０】
ステップＳ８０２において、アプリケーション３０１は、利用者による設定要求操作を受け付けると、ステップＳ８０３において、印刷設定（印刷に関する設定情報）の表示要求をＯＳ３０２に通知する。
【０１３１】
ステップＳ８０４において、ＯＳ３０２は、Ｖ４プリンタドライバのＤｅｖｍｏｄｅ形式の設定情報からＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報への変換を、設定制御部７３０に要求する。
【０１３２】
ステップＳ８０５において、設定制御部７３０は、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇから、Ｖ４プリンタドライバのＤＥＶＭＯＤＥ形式の設定情報を読み出す。
【０１３３】
ステップＳ８０６において、設定制御部７３０は、読み出したＤＥＶＭＯＤＥ形式の設定情報から、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を作成する。
【０１３４】
ステップＳ８０７において、設定制御部７３０は、作成したＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を含む完了通知を、ＯＳ３０２に通知する。
【０１３５】
ステップＳ８０８において、ＯＳ３０２は、設定制御部７３０に設定能力情報（ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ）の作成を要求する。
【０１３６】
ステップＳ８０９において、設定制御部７３０は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報を作成する。
【０１３７】
ステップＳ８１０において、設定制御部７３０は、作成したＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報を含む完了通知を、ＯＳ３０２に通知する。
【０１３８】
ステップＳ８１１において、ＯＳ３０２は、ＵＩ部３０５に設定画面の表示を指示する。この設定画面の表示の指示には、例えば、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報等が含まれる。
【０１３９】
なお、ＵＩ部３０５は、アプリケーション３０１が、ストアアプリ３１１の場合は、ストアデバイスアプリ３０４であり、アプリケーション３０１が、デスクトップアプリ３２１である場合は、拡張設定部３１３である。
【０１４０】
ステップＳ８１２において、ＵＩ部３０５は、現在の設定値であるＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報と、設定可能な設定値を示すＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報とを用いて、設定情報の設定画面を表示装置１０２等に表示させる。
【０１４１】
ステップＳ８１３において、利用者は、設定情報の変更操作（変更操作）を行う。
【０１４２】
ステップＳ８１４において、ＵＩ部３０５は、利用者の設定操作に応じてＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を変更する。
【０１４３】
ステップＳ８１５において、ＵＩ部３０５は、変更されたＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を含む完了通知を、ＯＳ３０２に通知する。
【０１４４】
ステップＳ８１６において、ＯＳ３０２は、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報をＤＥＶＭＯＤＥ形式の設定情報に変換する処理を、設定制御部７３０に要求する。
【０１４５】
ステップＳ８１７において、設定制御部７３０は、ＰｒｉｎｔＴｉｃｋｅｔから設定情報を読み出す。
【０１４６】
ステップＳ８１８において、設定制御部７３０は、読み出した設定情報をＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇに保存する。
【０１４７】
ステップＳ８１９において、設定制御部７３０は、完了通知をＯＳ３０２に通知する。
【０１４８】
ステップＳ８２０において、ＯＳ３０２は、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇに保存されたＶ４プリンタドライバの設定情報の変更内容を、ＤＥＶＭＯＤＥ構造体に反映させる。
【０１４９】
ステップＳ８２１において、ＯＳ３０２は、設定の完了通知をインストーラ７２０に通知する。
【０１５０】
（印刷処理）
図９は、一実施形態に係るＶ４プリンタドライバにおける印刷処理の概要を示すシーケンス図である。この処理は、一般的なＶ４プリンタドライバにおける印刷処理の概要のイメージを示している。実際の印刷時には、これ以外にも様々な処理が実行されるが、ここでは、主要な処理の流れの一例についてのみ説明する。なお、描画部９２０は、一般的なＶ４プリンタドライバの描画部を示すものとする。
【０１５１】
ステップＳ９０１において、アプリケーション３０１は、利用者の印刷操作を受け付けると、ステップＳ９０２において、印刷要求をＯＳ３０２に通知する。
【０１５２】
ステップＳ９０３において、ＯＳ３０２は、Ｖ４プリンタドライバのＤｅｖｍｏｄｅ形式の設定情報からＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報への変換を、設定制御部７３０に要求する。
【０１５３】
ステップＳ９０４において、設定制御部７３０は、ＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇから、Ｖ４プリンタドライバのＤＥＶＭＯＤＥ形式の設定情報を読み出す。
【０１５４】
ステップＳ９０５において、設定制御部７３０は、読み出したＤＥＶＭＯＤＥ形式の設定情報から、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を作成する。
【０１５５】
ステップＳ９０６において、設定制御部７３０は、作成したＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を含む完了通知を、ＯＳ３０２に通知する。
【０１５６】
ステップＳ９０７において、ＯＳ３０２は、印刷対象データから印刷データの生成を要求する描画命令を描画部９２０に通知する。この通知には、例えば、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報が含まれる。
【０１５７】
ステップＳ９０８において、描画部９２０は、印刷データを生成し、ステップＳ９０９において、生成した印刷データをＯＳ３０２に通知する。
【０１５８】
ステップＳ９１０において、ＯＳ３０２は、描画部９２０から受け付けた印刷データを画像形成装置２０に送信する。
【０１５９】
ステップＳ９１１において、画像形成装置２０は、印刷データの印刷を実行し、印刷が完了すると、ステップＳ９１２において、完了通知をＯＳ３０２に通知する。
【０１６０】
図７から９に示すように、Ｖ４プリンタドライバの設定情報は、Ｄｅｖｍｏｄｅ形式で保存されており、Ｖ４プリンタドライバの処理は、主にＰｒｉｎｔＴｉｃｋｅｔ形式で行われる。したがって、Ｖ４プリンタドライバでは、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報からＤＥＶＭＯＤＥ形式の設定情報の変換、及びＤＥＶＭＯＤＥ形式の設定情報からＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報の変換が、頻繁に実行される。
【０１６１】
＜処理の詳細＞
続いて、本実施形態に係るクライアント装置１０、インストーラ６１０、及びプリンタドライバ３０３による情報処理方法の流れについて説明を行う。
【０１６２】
［第１の実施形態］
図１０は、第１の実施形態に係るプリンタドライバのインストール処理の例を示すフローチャートである。
【０１６３】
ステップＳ１００１において、インストーラ６１０のインストール部６１１は、クライアント装置１０にプリンタドライバ３０３をインストールする。例えば、インストール部６１１は、図７に示すようなＶ４プリンタドライバのインストール処理を実行する。
【０１６４】
ステップＳ１００２において、インストーラ６１０の変更情報取得部６１２は、変更情報記憶部６２０から、変更情報Ａ６２１を取得する。なお、変更情報取得部６１２は、変更情報記憶部６２０に変更情報Ａ６２１が記憶されていない場合、例えば、処理を終了させる。
【０１６５】
ステップＳ１００３において、インストーラ６１０の設定情報変更部６１３は、プリンタドライバ３０３から、プリンタドライバ３０３の印刷に関する設定情報を取得する。ここでは、設定情報変更部６１３は、プリンタドライバ３０３から、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報の取得するものとする。
【０１６６】
ステップＳ１００４において、インストーラ６１０の設定情報変更部６１３は、変更情報取得部６１２が取得した変更情報Ａ６２１に従って、ステップＳ１００３で取得したＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を変更する。
【０１６７】
図１１は、第１の実施形態に係る変更前の設定情報のイメージを示す図である。図１１に示す変更前の設定情報１１００は、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報の一例であり、カラー設定１１０１、用紙サイズ１１０２、両面１１３０、用紙種類１１０４、及び集約１１０５の設定情報が含まれている。
【０１６８】
変更前の設定情報１１００では、表１に示すように、カラー設定１１０１が「カラー（"psk:Color"）」、用紙サイズ１１０２が「Ａ４（"psk:ISOA4"）、両面１１３０が「しない（"psk:none"）」に設定されている。また、変更前の設定情報１１００では、用紙種類１１０４が「普通紙（"psk:Plain"）」、集約１１０５が「しない（"xsd:integer">1）」に設定されている。
【０１６９】
図１２は、第１の実施形態に係る変更情報のイメージを示す図である。図１２に示す変更情報１２００には、「用紙種類（mediatype）の既定値を特別紙（special）に設定する」変更情報１２０１、「両面（duplexｘ）のＵＩ表示をしない（hidden"yes"）に設定する」変更情報１２０２が含まれている。さらに、変更情報１２００には、「カラー／モノクロ設定（colorbw）を、モノクロ固定（fixvalue="blackandwhite"）に設定する」変更情報１２０３、「集約（layout）の選択肢を、２ｉｎ１／４ｉｎ１（"2pagespersheet" / "4pagespersheet"）に限定する」変更情報１２０４等が含まれている。
【０１７０】
なお、図１２に示す変更情報１２００は、図１０のステップＳ１００２において、変更情報取得部６１２が変更情報記憶部６２０から取得した、プリンタドライバ３０３の設定情報に関する変更情報Ａ６２１の一例である。
【０１７１】
図１３は、第１の実施形態に係る変更情報を反映した設定情報のイメージを示す図である。図１３に示す変更情報を反映した設定情報１３００は、図１１に示す変更前の設定情報１１００から、図１２に示す変更情報１２００により、カラー設定１３０１、用紙種類１３０２、及び集約１３０３の設定が変更されている。
【０１７２】
例えば、図１３に示す変更情報を反映した設定情報１３００では、カラー設定１３０１は、「カラー（"psk:Color"）」から「白黒（"psk:Monochrome"）」に変更されている。また、用紙種類１３０２が、「普通紙（"psk:Plain"）」から「特別紙（"ns0000:Special"）」に変更されている。さらに、集約１３０３が、「しない（"xsd:integer">1）」から、「２ｉｎ１（"xsd:integer">2）」に変更されている。
【０１７３】
なお、図１２に示す変更情報１２００のうち、「両面（duplexｘ）のＵＩ表示をしない（hidden"yes"）に設定する」変更情報１２０２は、ＵＩに関する変更情報なので、設定情報１３００には反映されていない。
【０１７４】
図１４は、第１の実施形態に係る対応情報の例を示す図である。例えば、図１１に示すＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報１１００に含まれるキー（例えば、機能名、選択肢等）と、図１２に示す変更情報１２００に含まれるキーは、必ずしも一致していない場合がある。
【０１７５】
一例として、図１１に示す変更前の設定情報１１００では、用紙種類を示す機能名は「psk:PageMediaType」となっているが、図１２に示す変更情報１２００では、用紙種類を示す機能名は「mediatype」となっている。このような場合、インストーラ６１０の設定情報変更部６１３は、例えば、設定情報記憶部６３０等に記憶された、図１４に示すような対応情報６３２を用いて、設定情報１１００のキーと、変更情報１２００のキーとを対応付けすることができる。
【０１７６】
例えば、図１４に示す対応情報６３２において、「psk:PageMediaType」というＰｒｉｎｔＴｉｃｋｅｔの名称（"pt_name"）１４０１は、「mediatype」という変更情報の名称（"custom_name"）１４０２に対応していることが示されている。
【０１７７】
また、その選択肢（"pickone"）１４０３において、「ns0000:Special」というＰｒｉｎｔＴｉｃｋｅｔの名称１４０４は、「special」という変更情報の名称１４０５に対応していることが示されている。
【０１７８】
例えば、このような対応情報６３２を用いて、インストーラ６１０の設定情報変更部６１３は、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報１１００のキーに基づいて、変更情報１２００のキーを特定することができる。
【０１７９】
なお、対応情報６３２を用いて、設定情報１１００のキーと変更情報１２００のキーとを対応付ける方法は一例である。例えば、設定情報１１００のキーと、変更情報１２００のキーとで同じ文字列を用いることにより、対応情報６３２を用いずに対応付けを行うものであっても良い。
【０１８０】
このように、図１０のステップＳ１００４において、インストーラ６１０の設定情報変更部６１３は、変更情報取得部６１２が取得した変更情報Ａ６２１に従って、ステップＳ１００３で取得したＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報を変更する。
【０１８１】
図１０のステップＳ１００５において、インストーラ６１０の設定情報変更部６１３は、プリンタドライバ３０３に、ＰｒｉｎｔＴｉｃｋｅｔ形式の変更後の設定情報から、ＤＥＶＭＯＤＥ形式の変更後の設定情報への変換を要求する。
【０１８２】
ここで、ＤＥＶＭＯＤＥ形式の設定情報に変換する理由は、ＰｒｉｎｔＴｉｃｋｅｔ形式のままでプリンタドライバ３０３の設定情報の既定値を変更する方法が、（少なくとも現状では）ＯＳ３０２によって提供されていないためである。
【０１８３】
また、前述したように、インストーラ６０１は、ＤＥＶＭＯＤＥ形式の「Ｐｒｉｖａｔｅ」の設定情報を変更することは困難なので、設定情報変更部６１３は、プリンタドライバ３０３を利用して、ＤＥＶＭＯＤＥ形式の設定情報への変換を行っている。
【０１８４】
ステップＳ１００６において、プリンタドライバ３０３の設定情報管理部６４１は、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報（変更後）を、ＤＥＶＭＯＤＥ形式の設定情報（変更後）に変換する。この処理は、例えば、図７のステップＳ７１０、Ｓ７１１の処理に対応している。
【０１８５】
ステップＳ１００７において、インストーラ６１０の設定情報設定部６１４は、ステップＳ１００７で変換されたＤＥＶＭＯＤＥ形式の設定情報を用いて、プリンタドライバ３０３の設定情報の既定値を設定する。例えば、設定情報設定部６１４は、ＯＳ３０２によって提供される、プリンタドライバ３０３のプリンタの情報を変更するＡＰＩ（SetPrinter）に、既定値（デフォルト設定）の変更の指示とともに、ＤＥＶＭＯＤＥ形式の変更後の設定情報を渡す。これにより、設定情報設定部６１４は、プリンタドライバ３０３の設定情報の既定値を設定することができる。
【０１８６】
このように、インストーラ６１０は、Ｖ４プリンタドライバ３０３のインストール時等に、変更情報記憶部６２０に記憶した変更情報Ａ６２１を取得し（Ｓ１００２）、プリンタドライバ３０３の設定情報の既定値を設定する（Ｓ１００７）。これにより、Ｖ４プリンタドライバのインストール時等に、プリンタドライバ３０３の設定情報の既定値を変更することができるようになる。
【０１８７】
なお、プリンタドライバ３０３の印刷情報のカスタマイズは、通常はインストール時に行いたいという要望が多い。したがって、図１０に示す処理では、ステップＳ１００２〜Ｓ１００７に示すカスタマイズ処理を、プリンタドライバ３０３をインストールした直後に行っている。
【０１８８】
ただし、これは一例であり、ステップＳ１００２〜Ｓ１００７に示すカスタマイズ処理は、ステップＳ１００１のプリンタドライバ３０３のインストールの直後に限られず、プリンタドライバ３０３のインストール後、任意のタイミングで実行することができる。
【０１８９】
図１５は、第１の実施形態に係るプリンタドライバのインストール処理の別の一例を示すフローチャートである。図１５に示す処理は、インストーラ６１０の設定情報変更部６１３が、プリンタドライバ３０３から、ＤＥＶＭＯＤＥ形式の設定情報を取得し、変更情報に従って設定情報を変更する場合の例を示している。
【０１９０】
なお、図１５のステップＳ１００１、Ｓ１００２、Ｓ１００７の処理は、図１０のステップＳ１００１、Ｓ１００２、Ｓ１００７の処理と同様なので、ここでは図１０に示す処理との相違点を中心に説明を行う。
【０１９１】
ステップＳ１５０１において、インストーラ６１０の設定情報変更部６１３は、プリンタドライバ３０３から、プリンタドライバ３０３の印刷に関する設定情報を取得する。ここでは、設定情報変更部６１３は、プリンタドライバ３０３から、ＤＥＶＭＯＤＥ形式の設定情報の取得するものとする。
【０１９２】
ステップＳ１５０２において、インストーラ６１０の設定情報変更部６１３は、変更情報取得部６１２が取得した変更情報Ａ６２１に従って、ステップＳ１１５０１で取得したＤＥＶＭＯＤＥ形式の設定情報を変更する。
【０１９３】
なお、前述したように、ＤＥＶＭＯＤＥ形式の設定情報のうち、「Ｐｒｉｖａｔｅ」の設定情報を変更することには困難を伴うので、例えば、変更情報Ａ６２１には、「Ｐｕｂｌｉｃ」の設定情報に関する変更情報のみが含まれているものとする。
【０１９４】
このように、インストーラ６１０の設定情報変更部６１３は、プリンタドライバ３０３から、ＤＥＶＭＯＤＥ形式の設定情報を取得して、変更情報Ａ６２１による変更を行うものであっても良い。
【０１９５】
［第２の実施形態］
第２の実施形態では、プリンタドライバ３０３の設定情報のカスタマイズに加えて、印刷設定の設定画面や、印刷能力情報等に対してカスタマイズを行う場合の例について説明する。
【０１９６】
（インストール処理）
図１６は、第２の実施形態に係るプリンタドライバのインストール処理の例を示すフローチャートである。図１６に示す処理のうち、ステップＳ１００１〜Ｓ１００７に示す処理は、図１０に示す第１の実施形態に係るインストール処理と同様なので、ここでは、第１の実施形態に係る処理との相違点を中心に説明を行う。
【０１９７】
ステップＳ１６０１において、インストーラ６１０の変更情報保存部６１５は、変更情報取得部６１２が取得した変更情報Ａ６２１を、設定情報記憶部６３０に保存する。このとき、設定情報記憶部６３０に保存された変更情報を、以下の説明の中で、変更情報Ｂ６３１と呼ぶ。
【０１９８】
上記の処理により、変更情報Ｂ６３１を、ストアデバイスアプリ３０４、プリンタドライバ３０３の拡張設定部３１３、設定制御部３２３、及び描画部３３３等から参照することができるようになる。なお、設定情報記憶部６３０に保存された変更情報Ｂ６３１の保存場所は、例えば、ステップＳ１００１においてプリンタドライバ３０３をインストールしたときの論理プリンタ名（プリンタアイコン名）等から特定することができる。
【０１９９】
（変更情報の設定画面への反映処理）
図６に示すように、プリンタドライバ３０３の拡張設定部３１３は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１を、拡張設定部３１３が表示させる印刷の設定情報の設定画面に反映させる変更情報反映部６５３を有している。
【０２００】
また、ストアデバイスアプリ３０４は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１を、ストアデバイスアプリ３０４が表示させる印刷の設定情報の設定画面に反映させる変更情報反映部６６３を有している。
【０２０１】
なお、ストアデバイスアプリ３０４の変更情報反映部６６３の処理内容は、拡張設定部３１３の変更情報反映部６５３の処理内容と同様なので、ここでは、拡張設定部３１３の変更情報反映部６５３について説明を行う。
【０２０２】
図１７は、第２の実施形態に係る変更情報の設定画面への反映処理の例を示すフローチャートである。プリンタドライバ３０３の拡張設定部３１３に含まれる変更情報反映部６６３は、例えば、印刷設定を行う設定画面を表示させるときに、図１７に示す処理を実行する。
【０２０３】
なお、図１７に示す処理において、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報には、Ｎｍａｘ個の設定項目（機能名）が含まれており、変更情報反映部６５３は、Ｎ＝１からＮ＝Ｎｍａｘまで１項目ずつステップＳ１７０３〜Ｓ１７１０の処理を実行するものとする。
【０２０４】
ステップＳ１７０１において、プリンタドライバ３０３の拡張設定部３１３に含まれる変更情報反映部６５３は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１、及び対応情報６３２を読み出す。
【０２０５】
ステップＳ１７０２において、変更情報反映部６５３は、変数Ｎ（Ｎは１以上の整数）を１に初期化する。
【０２０６】
ステップＳ１７０３において、変更情報反映部６５３は、プリンタドライバ３０３のＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報におけるＮ番目の機能名を、例えば、図１４に示すような対応情報６３２を用いて、変更情報Ｂ６３１の機能名に変換する。
【０２０７】
ステップＳ１７０４において、変更情報反映部６５３は、ステップＳ１７０３で変換した機能名が、ステップＳ１７０１で読み出した変更情報Ｂ６３１に含まれるかを判断する。
【０２０８】
変換した機能名が変更情報Ｂ６３１に含まれない場合、変更情報反映部６５３は、処理をステップＳ１７０９に移行させる。一方、変換した機能名が変更情報Ｂ６３１に含まれる場合、変更情報反映部６５３は、処理をステップＳ１７０５に移行させる。
【０２０９】
ステップＳ１７０５に移行すると、変更情報反映部６５３は、変換した機能名に対応する設定項目が、ＵＩを非表示にする設定項目であるかを判断する。
【０２１０】
変換した機能名に対応する設定項目が、ＵＩを非表示にする設定項目である場合、変更情報反映部６５３は、処理をステップＳ１７０６に移行させる。一方、変換した機能名に対応する設定項目が、ＵＩを非表示にする設定項目でない場合、変更情報反映部６５３は、処理をステップＳ１７０７に移行させる。
【０２１１】
ステップＳ１７０６に移行すると、変更情報反映部６５３は、変換した機能名に対応する設定項目を非表示に設定する。
【０２１２】
ステップＳ１７０７に移行すると、変更情報反映部６５３は、変換した機能名に対応する設定項目が、選択肢を限定する設定項目であるかを判断する。
【０２１３】
変換した機能名に対応する設定項目が、選択肢を限定する設定の設定項目でない場合、変更情報反映部６５３は、処理をステップＳ１９０９に移行させる。一方、変換した機能名に対応する設定項目が、選択肢を限定する設定の設定項目である場合、変更情報反映部６５３は、処理をステップＳ１９０８に移行させる。
【０２１４】
ステップＳ１７０８に移行すると、変更情報反映部６５３は、変換した機能名に対応する設定項目のうち、限定（又は許可）されている選択肢以外の設定項目を非表示に設定する。
【０２１５】
ステップＳ１７０９に移行すると、ＮがＮｍａｘ未満であるかを判断する、言い換えると、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報における全ての機能名についてステップＳ１７０３〜Ｓ１７０８の処理を実行したかを判断する。
【０２１６】
ＮがＮｍａｘ未満である場合、変更情報反映部６５３は、処理をステップＳ１７１０に移行させる。一方、ＮがＮｍａｘ未満でない場合、変更情報反映部６５３は、処理をステップＳ１７１１に移行させる。
【０２１７】
ステップＳ１７１０に移行すると、変更情報反映部６５３は、Ｎに１を加算して、ステップＳ１７０３〜Ｓ１７０８の処理を再び実行する。
【０２１８】
ステップＳ１７１１に移行すると、拡張設定部３１３の設定画面表示部６５１は、変更情報Ｂ６３１が反映された設定画面を、表示装置１０２等に表示させる。
【０２１９】
（設定画面の例）
図１８は、第２の実施形態に係る設定画面のイメージを示す図である。
【０２２０】
図１８（ａ）は、プリンタドライバ３０３の拡張設定部３１３に含まれる設定画面表示部６５１が、表示装置１０２等に表示させる設定画面１８１０の一例のイメージを示している。図１８（ａ）に示す変更前の設定画面１８１０には、例えば、用紙サイズ１８１１、カラー設定１８１２、両面１８１３、集約１８１４、及び用紙種類１８１５等の設定項目が含まれる。また、各設定項目の既定値が黒丸で示されている。例えば、用紙サイズ１８１１の既定値は「Ａ４」、カラー設定１８１２の既定値は「カラー」、両面１８１３の既定値は「しない」、集約１８１４の既定値は「しない」、用紙種類１８１５の既定値は「普通紙」に設定されている。
【０２２１】
また、例えば、図１２に示す変更情報１２００には、「用紙種類（mediatype）の既定値を特別紙（special）に設定する」変更情報１２０１、「両面（duplexｘ）のＵＩ表示をしない（hidden"yes"）に設定する」変更情報１２０２が含まれている。
【０２２２】
さらに、変更情報１２００には、「カラー／モノクロ設定（colorbw）を、モノクロ固定（fixvalue="blackandwhite"）に設定する」変更情報１２０３、「集約（layout）の選択肢を、２ｉｎ１／４ｉｎ１（"2pagespersheet" / "4pagespersheet"）に限定する」変更情報１２０４等が含まれている。
【０２２３】
したがって、変更情報反映部６５３は、例えば、図１８（ａ）に示されるような変更前の設定画面１８１０に、図１２に示すような変更情報１２００を反映した場合、設定画面表示部６５１は、図１８（ｂ）に示すような変更後の設定画面１８２０を表示させる。
【０２２４】
図１８（ｂ）に示す変更後の設定画面１８２０において、用紙種類１８１５の既定値は、図１２に示す「用紙種類（mediatype）の既定値を特別紙（special）に設定する」変更情報１２０１が反映され、「特別紙」に変更されている。
【０２２５】
また、変更後の設定画面１８２０において、図１２に示す「両面（duplexｘ）のＵＩ表示をしない（hidden"yes"）に設定する」変更情報１２０２が反映され、変更前の設定画面１８１０に表示されていた両面１８１３の設定項目が非表示となっている。
【０２２６】
さらに、変更後の設定画面１８２０において、集約１８１４の設定項目は、図１２に示す「集約（layout）の選択肢を、２ｉｎ１／４ｉｎ１に限定する」変更情報１２０４が反映され、選択肢が２ｉｎ１／４ｉｎ１のみとなっている。
【０２２７】
このように、プリンタドライバ３０３の拡張設定部３１３に含まれる変更情報反映部６５３は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１を、拡張設定部３１３が表示する設定情報の設定画面に反映させることができる。
【０２２８】
同様に、ストアデバイスアプリ３０４に含まれる変更情報反映部６６３は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１を、ストアデバイスアプリ３０４が表示する設定情報の設定画面に反映させることができる。
【０２２９】
（変更情報の設定能力情報への反映処理）
プリンタドライバ３０３の設定制御部３２３は、図６に示すように、設定情報記憶部６３０に記憶された変更情報Ｂ６３１を、プリンタドライバ３０３で設定可能な設定値を示す設定能力情報に反映する設定能力情報管理部６４２を有している。ここでは、設定能力情報管理部６４２による、変更情報Ｂ６３１の設定能力情報への反映する処理の例について説明する。
【０２３０】
図１９は、第２の実施形態に係る変更情報の設定能力情報への反映処理の例を示すフローチャートである。設定能力情報管理部６４２は、例えば、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報を生成するときに、図１９に示す処理を実行する。
【０２３１】
なお、図１９に示す処理において、ＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報には、Ｎｍａｘ個の設定項目（機能名）が含まれており、設定能力情報管理部６４２は、Ｎ＝１からＮ＝Ｎｍａｘまで１項目ずつステップＳ１９０３〜Ｓ１９１０の処理を実行するものとする。
【０２３２】
ステップＳ１９０１において、プリンタドライバ３０３の設定制御部３２３に含まれる設定能力情報管理部６４２は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１、及び対応情報６３２を読み出す。
【０２３３】
ステップＳ１９０２において、設定能力情報管理部６４２は、変数Ｎ（Ｎは１以上の整数）を１に初期化する。
【０２３４】
ステップＳ１９０３において、設定能力情報管理部６４２は、プリンタドライバ３０３のＰｒｉｎｔＴｉｃｋｅｔ形式の設定情報におけるＮ番目の機能名を、例えば、図１４に示すような対応情報６３２を用いて、変更情報Ｂ６３１の機能名に変換する。
【０２３５】
ステップＳ１９０４において、設定能力情報管理部６４２は、ステップＳ１９０３で変換した機能名が、ステップＳ１９０１で読み出した変更情報Ｂ６３１に含まれるかを判断する。
【０２３６】
変換した機能名が変更情報Ｂ６３１に含まれない場合、設定能力情報管理部６４２は、処理をステップＳ１９０９に移行させる。一方、変換した機能名が変更情報Ｂ６３１に含まれる場合、設定能力情報管理部６４２は、処理をステップＳ１９０５に移行させる。
【０２３７】
ステップＳ１９０５に移行すると、設定能力情報管理部６４２は、変換した機能名に対応する設定項目が、既定値を変更する設定項目であるかを判断する。
【０２３８】
変換した機能名に対応する設定項目が既定値を変更する設定項目である場合、設定能力情報管理部６４２は、処理をステップＳ１９０６に移行させる。一方、変換した機能名に対応する設定項目が既定値を変更する設定項目でない場合、設定能力情報管理部６４２は、処理をステップＳ１９０７に移行させる。
【０２３９】
ステップＳ１９０６に移行すると、設定能力情報管理部６４２は、変換した機能名に対応する設定項目の既定値を、変更情報に従って変更する。
【０２４０】
ステップＳ１９０７に移行すると、設定能力情報管理部６４２は、変換した機能名に対応する設定項目が、選択肢を限定する情報であるかを判断する。
【０２４１】
変換した機能名に対応する設定項目が、選択肢を限定する設定の設定項目でない場合、設定能力情報管理部６４２は、処理をステップＳ１９０９に移行させる。一方、変換した機能名に対応する設定項目が、選択肢を限定する設定の設定項目である場合、設定能力情報管理部６４２は、処理をステップＳ１９０８に移行させる。
【０２４２】
ステップＳ１９０８に移行すると、設定能力情報管理部６４２は、変換した機能名に対応する設定項目のうち、限定（又は許可）されている選択肢以外の設定項目を無効に設定する。
【０２４３】
ステップＳ１９０９に移行すると、ＮがＮｍａｘ未満であるかを判断する。
【０２４４】
ＮがＮｍａｘ未満である場合、設定能力情報管理部６４２は、処理をステップＳ１９１０に移行させる。一方、ＮがＮｍａｘ未満でない場合、設定能力情報管理部６４２は、処理をステップＳ１９１１に移行させる。
【０２４５】
ステップＳ１９１０に移行すると、設定能力情報管理部６４２は、Ｎに１を加算して、ステップＳ１９０３〜Ｓ１９０８の処理を再び実行する。
【０２４６】
ステップＳ１９１１に移行すると、設定能力情報管理部６４２は、変更情報Ｂ６３１が反映された設定能力情報を出力する。例えば、設定能力情報管理部６４２は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報の取得を要求するＯＳ３０２、アプリケーション等に、変更情報Ｂ６３１が反映された設定能力情報を提供する。
【０２４７】
図２１は、第２の実施形態に係る変更前の設定能力情報のイメージを示す図である。設定能力情報２０００は、プリンタドライバ３０３が設定可能な印刷設定値の一覧を、ＸＭＬ形式のデータで表す情報である。
【０２４８】
図２１に示す設定能力情報２０００は、プリンタドライバ３０３の設定能力情報のうち、集約（psk:JobNUpAllDocumentsContiguously）に関する設定項目２００１を抜粋したものである。
【０２４９】
プリンタドライバ３０３は、集約に関する設定項目２００１の既定値として、図２０に示すように、「集約しない（１／１）」１５０２、「２ｉｎ１」１５０３、「４ｉｎ１」１５０４、及び「９ｉｎ１」の４つの選択肢を有している。
【０２５０】
一方、図１２に示す変更情報１２００には、「集約（layout）の選択肢を、２ｉｎ１／４ｉｎ１（"2pagespersheet" / "4pagespersheet"）に限定する」変更情報１２０４が含まれている。
【０２５１】
この場合、設定能力情報管理部６４２は、図２０に示す設定能力情報２０００に、図１２に示す変更情報１２００を反映して、例えば、図２１に示すような変更後の設定能力情報２１００を作成する。
【０２５２】
なお、図２０に示す設定能力情報２０００、及び図２１に示す設定能力情報２１００は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式の設定能力情報である。
【０２５３】
図２１は、第２の実施形態に係る変更情報を反映した設定能力情報のイメージを示す図である。図２１に示す変更後の設定能力情報２１００では、集約に関する設定項目２００１の選択肢が、「２ｉｎ１」２００３、及び「４ｉｎ１」２００４の２つに変更されている。
【０２５４】
上記のように、プリンタドライバ３０３の設定制御部３２３に含まれる設定能力情報管理部６４２は、設定情報記憶部６３０に記憶された変更情報Ｂ６３１を、プリンタドライバ３０３の設定能力情報に反映させる。したがって、アプリケーション３０１は、設定能力情報を参照し、変更情報Ｂ６３１によって変更されたプリンタドライバ３０３の設定能力情報を認識することができるようになる。
【０２５５】
なお、図６に示すクライアント装置１０の機能構成は一例である。例えば、インストーラ６１０に含まれる各機能構成の少なくとも一部は、プリンタドライバ３０３に含まれていても良い。
【０２５６】
また、クライアント装置１０は、プリンタドライバ３０３がインストールされる情報処理装置の一例である。プリンタドライバ３０３がインストールされる情報処理装置は、例えば、図１に示すサーバ装置３０等であっても良い。
【符号の説明】
【０２５７】
１          情報処理システム
１０        クライアント装置（情報処理装置）
２０        画像形成装置
３０        サーバ装置
３０１      アプリケーション
３０２      ＯＳ
３０３      プリンタドライバ
３０４      ストアデバイスアプリ
３０５      ＵＩ部
３１１      ストアアプリ
３１３      拡張設定部
３２１      デスクトップアプリ
３２３      設定制御部
３３３      描画部
６１１      インストール部
６１２      変更情報取得部
６１３      設定情報変更部
６１４      設定情報設定部
６１５      変更情報保存部
６２０      変更情報記憶部
６３０      設定情報記憶部
６４２      設定能力情報管理部
６５３、６６３      変更情報反映部
６５１、６６１      設定画面表示部
【先行技術文献】
【特許文献】
【０２５８】
【特許文献１】特開２０１３−１９０８９７号公報
【図１】
2018073089.tif 000004
【図２】
2018073089.tif 000005
【図３】
2018073089.tif 000006
【図４】
2018073089.tif 000007
【図５】
2018073089.tif 000008
【図６】
2018073089.tif 000009
【図７】
2018073089.tif 000010
【図８】
2018073089.tif 000011
【図９】
2018073089.tif 000012
【図１０】
2018073089.tif 000013
【図１１】
2018073089.tif 000014
【図１２】
2018073089.tif 000015
【図１３】
2018073089.tif 000016
【図１４】
2018073089.tif 000017
【図１５】
2018073089.tif 000018
【図１６】
2018073089.tif 000019
【図１７】
2018073089.tif 000020
【図１８】
2018073089.tif 000021
【図１９】
2018073089.tif 000022
【図２０】
2018073089.tif 000023
【図２１】
2018073089.tif 000024