(57)【特許請求の範囲】
【請求項１】
印刷における各設定項目の設定値及び識別情報を含む印刷設定情報であり、ＯＳに用いられる該印刷設定情報を記憶する第１記憶部と、
プリンタドライバに含まれる、所定の設定項目のデフォルト値及び識別情報を含むカスタマイズ情報を記憶する第２記憶部と、
前記第１記憶部からＯＳが読み取った印刷設定情報を取得した場合、該印刷設定情報に含まれる識別情報と、前記第２記憶部に記憶される識別情報とが異なるとき、前記印刷設定情報の設定値を前記デフォルト値に、前記印刷設定情報の識別情報を前記カスタマイズ情報の識別情報に更新し、更新された印刷設定情報を前記ＯＳに返す更新部と、
を備える情報処理装置。
【請求項２】
前記印刷設定情報を保持するアプリケーションをさらに備え、
前記更新部は、
前記アプリケーションから前記印刷設定情報を取得した場合、該印刷設定情報に含まれる第１識別情報と、前記第２記憶部に記憶される第２識別情報とが異なるとき、前記印刷設定情報の設定値を前記デフォルト値に、前記印刷設定情報の識別情報を前記カスタマイズ情報の識別情報に更新し、更新された印刷設定情報を前記アプリケーションに返す請求項１記載の情報処理装置。
【請求項３】
前記プリンタドライバがインストールされた場合、前記カスタマイズ情報に含まれるデフォルト値に基づいて各設定項目のデフォルトの設定値を生成し、生成された設定値及び前記カスタマイズ情報に含まれる識別情報により生成した印刷設定情報を前記ＯＳに出力するカスタマイズ部をさらに備え、
前記第１記憶部は、
前記カスタマイズ部により生成された印刷設定情報を記憶する請求項１又は２記載の情報処理装置。
【請求項４】
前記第１記憶部は、デフォルトの印刷設定情報を記憶する第３記憶部と、ユーザー別の印刷設定情報を記憶する第４記憶部とを有する請求項１乃至３いずれか一項に記載の情報処理装置。
【請求項５】
印刷における各設定項目の設定値及び識別情報を含む印刷設定情報を記憶する第１記憶部からＯＳが読み出した該印刷設定情報を取得する第１取得ステップと、
プリンタドライバに含まれる、所定の設定項目のデフォルト値及び識別情報を含むカスタマイズ情報を記憶する第２記憶部から該カスタマイズ情報を取得する第２取得ステップと、
取得された前記印刷設定情報に含まれる識別情報と、取得された前記カスタマイズ情報に含まれる識別情報とが異なるとき、前記印刷設定情報の設定値を前記デフォルト値に、前記印刷設定情報の識別情報を前記カスタマイズ情報の識別情報に更新し、更新された印刷設定情報を前記ＯＳに返す更新ステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷設定に従って印刷を制御する情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来から、印刷システムの環境により、プリンタドライバのカスタマイズを行いたいという要望がある。その要望に対し、プリンタドライバをカスタマイズする技術が知られている。
【０００３】
例えば、特許文献１には、カスタマイズされているカスタマイズドライバを特定するための識別情報を発行し、発行された識別情報と、カスタマイズドライバとを関連付けて記憶する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、印刷設定情報に含まれる設定値のデフォルト値をカスタマイズ情報として保持するプリンタドライバがある。また、ＯＳ（オペレーティングシステム）や所定のアプリケーション（アプリとも呼ぶ）は、プリンタドライバが有する印刷設定情報を基に生成されたデフォルトの印刷設定情報を有する。
【０００５】
このとき、従来技術では、ＯＳが保持するデフォルトの印刷設定情報や、アプリケーションが保持する印刷設定情報は、プリンタドライバをアップデートするときに、プリンタドライバのカスタマイズ情報を用いて更新されない。
【０００６】
つまり、プリンタドライバのアップデート時にカスタマイズ情報を更新することによってプリンタドライバの印刷設定情報のデフォルト値を更新しても、ＯＳや所定のアプリが保持するデフォルトの印刷設定情報には反映されないという問題があった。
【０００７】
この問題が起こる理由としては、次のことが考えられる。アプリが保持する印刷設定情報は、プリンタドライバからは更新することができない。また、ＯＳが保持している印刷設定情報は、プリンタドライバからは更新することは困難である。
【０００８】
また、ＯＳの印刷設定を更新するためのDrvConvertDevmodeというプリンタドライバのインターフェースがあるが、このインターフェースは、DEVMODEのバージョンが変わった場合、又は構造自体が変更した場合にしかＯＳによって呼び出されない。そのため、DEVMODEを扱っているプリンタドライバのバイナリファイルを全て更新する必要があり、現実的ではない。例えば、お客様がカスタマイズ情報を更新してアップデートインストールするようなシナリオでは使えない。
【０００９】
また、プリンタドライバのカスタマイズ情報を、ＯＳやアプリが保持する印刷設定情報に反映させるには、プリンタドライバをアンインストールし、再インストールする方法がある。しかし、サーバークライアント環境において、クライアントＰＣが膨大にある場合、各クライアントＰＣのプリンタドライバをアンインストールし、再インストールすることは現実的ではない。
【００１０】
そこで、本発明は、上記問題に鑑みてなされたものであり、プリンタドライバのアップデートの際に印刷設定情報のデフォルト値をカスタマイズし、ＯＳが保持する印刷設定情報に対してカスタマイズしたデフォルト値を反映させることができる情報処理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明における一態様の情報処理装置は、印刷における各設定項目の設定値及び識別情報を含む印刷設定情報であり、ＯＳに用いられる該印刷設定情報を記憶する第１記憶部と、プリンタドライバに含まれる、所定の設定項目のデフォルト値及び識別情報を含むカスタマイズ情報を記憶する第２記憶部と、前記第１記憶部からＯＳが読み取った印刷設定情報を取得した場合、該印刷設定情報に含まれる識別情報と、前記第２記憶部に記憶される識別情報とが異なるとき、前記印刷設定情報の設定値を前記デフォルト値に、前記印刷設定情報の識別情報を前記カスタマイズ情報の識別情報に更新し、更新された印刷設定情報を前記ＯＳに返す更新部と、を備える。
【００１２】
また、本発明における他の態様のプログラムは、印刷における各設定項目の設定値及び識別情報を含む印刷設定情報を記憶する第１記憶部からＯＳが読み出した該印刷設定情報を取得する第１取得ステップと、プリンタドライバに含まれる、所定の設定項目のデフォルト値及び識別情報を含むカスタマイズ情報を記憶する第２記憶部から該カスタマイズ情報を取得する第２取得ステップと、取得された前記印刷設定情報に含まれる識別情報と、取得された前記カスタマイズ情報に含まれる識別情報とが異なるとき、前記印刷設定情報の設定値を前記デフォルト値に、前記印刷設定情報の識別情報を前記カスタマイズ情報の識別情報に更新し、更新された印刷設定情報を前記ＯＳに返す更新ステップと、をコンピュータに実行させる。
【００１３】
また、本発明は、前述したプログラムを記録した記録媒体を、コンピュータに読み取らせて実現することも可能である。
【発明の効果】
【００１４】
本発明によれば、プリンタドライバのアップデートの際に印刷設定情報のデフォルト値をカスタマイズし、ＯＳが保持する印刷設定情報に対してカスタマイズしたデフォルト値を反映させることができる。
【図面の簡単な説明】
【００１５】
【図１】実施例１における印刷システムの一例を示す図。
【図２】実施例１におけるサーバーＰＣのハードウェアの一例を示すブロック図。
【図３】実施例１におけるサーバーＰＣの構成の一例を示すブロック図。
【図４】アプリケーションの構成の一例を示すブロック図。
【図５】プリンタドライバの構成の一例を示すブロック図。
【図６】記憶部の各記憶領域の一例を示す図。
【図７】印刷設定情報の一例を示す図。
【図８】カスタマイズ情報（その１）の一例を示す図。
【図９】カスタマイズ情報（その２）の一例を示す図。
【図１０】サーバークライアント環境における更新の概要を示す図。
【図１１】サーバーＰＣにプリンタドライバをインストールする際に実行される処理の一例を示すフローチャート。
【図１２】クライアントＰＣにプリンタドライバをインストールする際に実行される処理の一例を示すフローチャート。
【図１３】サーバーＰＣでプリンタドライバが更新される際に実行される処理の一例を示すフローチャート。
【図１４】クライアントＰＣで、プリンタドライバが更新される際に実行される処理の一例を示すブローチャート。
【図１５】ＯＳがデフォルトの印刷設定を取得する処理の一例を示すフローチャート。
【図１６】印刷設定情報が更新される処理の一例を示すフローチャート。
【図１７】ＯＳが印刷設定画面を開き、ユーザーに印刷設定を変更させる際の処理の一例を示すフローチャート。
【図１８】アプリが印刷設定画面を開き、ユーザーに印刷設定情報を変更させる際の処理の一例を示すフローチャート。
【図１９】プリンタドライバが、記憶部に記憶されている印刷設定情報を出力する処理の一例を示すフローチャート。
【図２０】印刷時の処理の一例を示すフローチャート。
【発明を実施するための形態】
【００１６】
以下、添付図面を参照して、本発明における実施例を詳細に説明する。
【００１７】
［実施例１］
＜システム＞
図１は、実施例１における印刷システムの一例を示す図である。図１に示す印刷システム１は、サーバーＰＣ（Personal Computer）１０と、プリンタ２０と、複数のクライアントＰＣ３０、４０、５０とを有する。サーバーＰＣ、クライアントＰＣは、例えば情報処理装置である。
【００１８】
プリンタドライバの利用形態は、例えば２つある。１つは、サーバーＰＣ１０にインストールされた後、クライアントＰＣ３０、４０、５０にコピーされ、各クライアントＰＣ上で利用されるケース（サーバークライアント環境）である。もう一つは、利用するＰＣにそのままインストールし、利用されるケース（スタンドアローン環境）である。実施例１では、サーバークライアント環境を対象にして説明する。
【００１９】
＜ハードウェア＞
図２は、実施例１におけるサーバーＰＣ１０のハードウェアの一例を示すブロック図である。図２に示すように、サーバーＰＣ１０は、制御部１１、主記憶部１２、補助記憶部１３、外部記録装置Ｉ／Ｆ部１４、ネットワークＩ／Ｆ部１６、入力部１７、表示部１８を含む。これら各構成は、バスを介して相互にデータ送受信可能に接続されている。
【００２０】
制御部１１は、コンピュータの中で、各装置の制御やデータの演算、加工を行うＣＰＵである。また、制御部１１は、主記憶部１２に記憶されたプログラムを実行する演算装置であり、入力装置や記憶装置からデータを受け取り、演算、加工した上で、出力装置や記憶装置に出力する。
【００２１】
主記憶部１２は、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などであり、制御部１１が実行する基本ソフトウェアであるＯＳやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
【００２２】
補助記憶部１３は、ＨＤＤ（Hard Disk Drive）などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
【００２３】
外部記録装置Ｉ／Ｆ部１４は、ＵＳＢ（Universal Serial Bus）などのデータ伝送路を介して接続された記録媒体１５（例えば、フラッシュメモリなど）とサーバーＰＣ１０とのインターフェースである。
【００２４】
また、記録媒体１５に、所定のプログラムを格納し、この記録媒体１５に格納されたプログラムは外部記録装置Ｉ／Ｆ部１４を介してサーバーＰＣ１０にインストールされ、インストールされた所定のプログラムはサーバーＰＣ１０により実行可能となる。
【００２５】
ネットワークＩ／Ｆ部１６は、ネットワークを介して接続された通信機能を有する周辺機器とサーバーＰＣ１０とのインターフェースである。ネットワークは、有線及び／又は無線回線などのデータ伝送路により構築されたＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）などである。
【００２６】
入力部１７は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、表示部１８の表示画面上でキーの選択等を行うためのマウスやスライスパット等を有する。また、入力部１７は、ユーザーが制御部１１に操作指示を与えたり、データを入力したりするためのユーザインタフェースである。
【００２７】
表示部１８は、ＣＲＴ（Cathode Ray Tube）やＬＣＤ（Liquid Crystal Display）等により構成され、制御部１１から入力される表示データに応じた表示が行われる。なお、入力部１７、表示部１８は、サーバーＰＣ１０には必ずしも必要な構成ではない。
【００２８】
また、クライアントＰＣ３０、４０、５０は、サーバーＰＣ１０と同様のハードウェアを有するため、その説明を省略する。
【００２９】
＜構成＞
図３は、実施例１におけるサーバーＰＣ１０の構成の一例を示すブロック図である。クライアントＰＣ３０、４０、５０もサーバーＰＣ１０と同様の構成を有するため、以下では、サーバーＰＣ１０の構成について説明する。
【００３０】
図３に示すサーバーＰＣ１０は、ＯＳ（Operating System）１０１、アプリケーション１０２、記憶部１０３、プリンタドライバ１０４、通信部１０５を有する。
【００３１】
ＯＳ１０１は、プリンタ２０の印刷に関する各設定項目の設定値を含む印刷設定情報を記憶部１０３に保存又は読み出しが可能である。ＯＳ１０１は、記憶部１０３から取得した印刷設定情報をプリンタドライバ１０４に出力する。また、ＯＳ１０１は、アプリケーション１０２から印刷設定情報を取得した場合、プリンタドライバ１０４に印刷設定情報を出力する。また、ＯＳ１０１は、アプリケーション１０２から印刷対象のデータを取得した場合、そのデータをプリンタドライバ１０４に出力する。
【００３２】
アプリケーション１０２は、自身でプリンタ２０に対して印刷データの生成などは行わず、印刷を実行したい印刷対象となるデータをＯＳ１０１に出力する。このとき、アプリケーション１０２は、印刷設定情報を保持している場合は、その印刷設定情報をＯＳ１０１に出力する。
【００３３】
記憶部１０３は、ＯＳ１０１やプリンタドライバ１０４から書き込まれた印刷設定情報を記憶する。記憶部１０３は、例えばレジストリである。記憶部１０３の詳細は後述する。
【００３４】
プリンタドライバ１０４は、ＯＳ１０１から印刷対象のデータを取得すると、プリンタ２０が解釈可能な印刷命令に変更する。プリンタドライバ１０４は、印刷命令を、通信部１０５を介してプリンタ２０に送信する。ここで、印刷設定情報に含まれる設定値をカスタマイズしたい場合に、カスタマイズされたデフォルト値を有するカスタマイズ情報をアップデートする。
【００３５】
通信部１０５は、プリンタ２０とデータの送受信を行う。例えば、通信部１０５は、プリンタドライバ１０４から取得した印刷命令を、プリンタ２０に送信する。
【００３６】
（アプリケーション１０２）
次に、アプリケーション１０２の構成について説明する。図４は、アプリケーション１０２の構成の一例を示すブロック図である。図４に示すアプリケーション１０２は、記憶部２０１を有する。記憶部２０１は、アプリケーション１０２で用いる印刷設定情報を記憶する。印刷設定情報を保持するアプリケーション１０２としては、例えばＥｘｃｅｌなどがある。Ｅｘｃｅｌは、ワークシート毎に印刷設定情報を保持できる。
【００３７】
図４に示すアプリケーション１０２は、記憶部２０１に保持している印刷設定情報を基に、印刷設定画面をプリンタドライバ１０４に表示させたり、印刷を行わせたりする。
【００３８】
（プリンタドライバ１０４）
次に、プリンタドライバ１０４の構成について説明する。図５は、プリンタドライバ１０４の構成の一例を示すブロック図である。図５に示すプリンタドライバ１０４は、画面表示部３０１、描画部３０２、更新部３０３、記憶部３０４、カスタマイズ部３０５を有する。
【００３９】
画面表示部３０１は、ＯＳ１０１やアプリケーション１０２から印刷設定情報を取得し、印刷設定画面の表示要求を受けた場合、取得した印刷設定情報に基づき生成した印刷設定画面の表示制御を行う。
【００４０】
描画部３０２は、アプリケーション１０２から印刷を要求された印刷対象のデータを、プリンタ２０が解釈可能な印刷命令に変換する。印刷命令は、例えばＰＤＬ（Page Description Language）などである。
【００４１】
更新部３０３は、プリンタドライバ１０４の更新（アップデート）により、カスタマイズ情報が更新された場合、そのカスタマイズ情報で定義されているデフォルト値で、印刷設定情報を更新する。更新部３０３は、ＯＳ１０１やアプリケーション１０２が保持している印刷設定情報に対し、必要があれば、更新されたカスタマイズ情報のデフォルト値を用いて更新を行う。
【００４２】
例えば、更新部３０３は、記憶部３０４又は後述するプリンタドライバ用記憶部４０４からカスタマイズ情報に含まれる識別情報（以下、ＣｕｓｔｏｍＩＤとも呼ぶ）と、ＯＳ１０１やアプリケーション１０２が保持する印刷設定情報内の識別情報とを比較する。更新部３０３は、比較の結果が同じである場合は更新の必要無しと判断する。また、更新部３０３は、これらの識別情報が異なる場合は更新の必要有りと判断する。更新部３０３は、更新した印刷設定情報を、ＯＳ１０１やアプリケーション１０２に返す。
【００４３】
記憶部３０４は、カスタマイズ情報を記憶する。カスタマイズ情報は、カスタマイズ内容を識別する識別情報（ＣｕｓｔｏｍＩＤ）と、カスタマイズされた所定の設定項目におけるデフォルト値とを含む。
【００４４】
カスタマイズ部３０５は、記憶部３０４又は後述するプリンタドライバ用記憶部４０４からカスタマイズ情報を取得し、カスタマイズ情報に含まれるデフォルト値及び識別情報（ＣｕｓｔｏｍＩＤ）に基づき、デフォルトの印刷設定情報を生成する。カスタマイズ部３０５は、生成した印刷設定情報を、ＯＳ１０１に出力する。ＯＳ１０１は、この印刷設定情報を記憶部１０３に書き込む。
【００４５】
（記憶部１０３）
次に、記憶部１０３の各記憶領域について説明する。図６は、記憶部１０３の各記憶領域の一例を示す図である。記憶部１０３は、ＯＳ用記憶部４０１、プリンタドライバ用記憶部４０４の各記憶領域に分けられる。
【００４６】
ＯＳ用記憶部４０１は、ＯＳ１０１が自由に書き込んだり、読み出したりする記憶領域である。プリンタドライバ１０４もこのＯＳ用記憶部４０１を書き込んだり、読み出したりすることができるが、タイミングや権限が限られている。
【００４７】
ＯＳ用記憶部４０１は、共通記憶部４０２、ユーザー毎の記憶部４０３の各記憶領域に分けられる。共通記憶部４０２は、ＯＳ１０１で用いるデフォルトの印刷設定情報を記憶する。ユーザー別の記憶部４０３は、共通記憶部４０２に記憶される印刷設定情報をコピーして生成された印刷設定情報をユーザー毎に記憶する。例えば、ユーザー毎の記憶部４０３は、ユーザーＡの印刷設定情報、ユーザーＢの印刷設定情報などを記憶する。
【００４８】
ユーザー毎の印刷設定情報が生成された場合、ログインしたユーザーに対応する印刷設定情報がユーザー毎の記憶部４０３から読み出され、設定値が変更された場合は、ユーザー毎の記憶部４０３に記憶される。例えばユーザーＡの印刷設定情報が生成されていた場合、ユーザー毎の記憶部４０３に記憶されるユーザーＡの印刷設定情報に対して、書き込みや読み出しが行われる。
【００４９】
プリンタドライバ用記憶部４０４は、カスタマイズ情報を記憶する。このカスタマイズ情報は、プリンタドライバ１０４がインストールされた時や、アップデートされた時に、プリンタドライバ１０４により書き込まれる。
【００５０】
このプリンタドライバ用記憶部４０４は、サーバーＰＣ１０とクライアントＰＣ３０、４０、５０とでＯＳ１０１によって同期されている。よって、サーバーＰＣ１０のプリンタドライバ用記憶部４０４が更新された場合は、ＯＳ１０１により各クライアントＰＣのプリンタドライバ用記憶部に反映される。
【００５１】
＜データ構造＞
次に、情報処理装置１０で用いる各情報のデータ構造について説明する。図７は、印刷設定情報の一例を示す図である。図７に示すように、印刷設定情報は、カスタマイズ内容を識別する識別情報（ＣｕｓｔｏｍＩＤ）を含む。図７に示す例では、ＣｕｓｔｏｍＩＤは「ｃｕｓｔｏｍ１」である。
【００５２】
つまり、図７に示す印刷設定情報は、「ｃｕｓｔｏｍ１」に対応するカスタマイズが行われている時に生成された印刷設定情報であることを示している。
【００５３】
また、図７に示す印刷設定情報は、印刷の設定項目である、カラー設定（ｃｏｌｏｒ＿ｓｅｔｔｉｎｇｓ）、両面設定（ｄｕｐｌｅｘ＿ｓｅｔｔｉｎｇｓ）、集約設定（ｌａｙｏｕｔ＿ｓｅｔｔｉｎｇ）などが含まれる。印刷設定情報は、この各設定項目の設定値を含む。
【００５４】
図７に示すような印刷設定情報が、共通記憶部４０２、ユーザー別の記憶部４０３、アプリケーション１０２の記憶部２０１に記憶される。なお、各記憶部の印刷設定情報は、同じとは限らない。各ユーザーやアプリケーションがそれぞれの印刷設定情報に含まれる設定値を変更することができるためである。
【００５５】
図８は、カスタマイズ情報（その１）の一例を示す図である。図８に示すカスタマイズ情報は、ＪＳＯＮ（JavaScript（登録商標） Object Notation）形式で実現した時の例を示す。カスタマイズ情報は、カスタマイズ内容を識別する識別情報（ＣｕｓｔｏｍＩＤ）と、カスタマイズ内容である印刷設定情報に含まれる設定項目のデフォルト値とを含む。
【００５６】
図８に示す例は、ＣｕｓｔｏｍＩＤが「ｃｕｓｔｏｍ０」であり、デフォルト値のカスタマイズが行われない例である。
【００５７】
図９は、カスタマイズ情報（その２）の一例を示す図である。図９に示すカスタマイズ情報は、ＣｕｓｔｏｍＩＤが「ｃｕｓｔｏｍ２」である。また、デフォルト値が、カラー設定が「白黒（ｂｌａｃｋａｎｄｗｈｉｔｅ）」、両面設定が「左開き（ｏｐｅｎｔｏｐ）」になるようカスタマイズされている。
【００５８】
例えば、図９に示すカスタマイズ情報を含むプリンタドライバがアップデートされた場合、共通記憶部４０２などに記憶される印刷設定情報（例えば図７参照）が、更新部３０３により更新される。この場合、図７に示す印刷設定情報のカラー設定と、両面設定とが図９に示す「白黒」と「左開き」にそれぞれ変更され、さらに、ＣｕｓｔｏｍＩＤが「ｃｕｓｔｏｍ２」に変更される。
【００５９】
プリンタドライバがアップデートされる際、更新部３０３は、印刷設定情報の設定項目のうち、カスタマイズ情報に含まれる設定項目を、カスタマイズ情報のデフォルト値に変更する。印刷設定情報の設定項目のうち、カスタマイズ情報に含まれない設定項目については、そのままでもよいし、ハードコーディングされたデフォルト値に戻してもよい。
【００６０】
そのままにする場合は、各ユーザーにより変更された設定値を維持することができ、ハードコーディングされたデフォルト値に戻す場合は、各ユーザーにより変更された設定値を一度デフォルト値にリセットすることができる。
【００６１】
＜サーバークライアント環境における更新の概要＞
図１０は、サーバークライアント環境における更新の概要を示す図である。図１０に示す例では、サーバーＰＣ１０のプリンタドライバがアップデートされたとする。このとき、プリンタドライバ用記憶部４０４に記憶されるカスタマイズ情報が更新される。
【００６２】
次に、ＯＳ１０１は、プリンタドライバ用記憶部４０４に記憶されるカスタマイズ情報が更新されたことを検知すると、各クライアントＰＣのプリンタドライバ用記憶部５０４と同期をとる。つまり、更新後のカスタマイズ情報が、各クライアントＰＣのプリンタドライバ用記憶部５０４に記憶される。
【００６３】
次に、ＯＳが保持する共通記憶部５０２に記憶される印刷設定情報を取得して、この印刷設定情報をプリンタドライバに出力すると共に印刷を要求したとする。このとき、プリンタドライバの更新部は、印刷設定情報内のＣｕｓｔｏｍＩＤと、カスタマイズ情報内のＣｕｓｔｏｍＩＤとが異なるため、更新処理を行う。例えば、印刷設定情報の設定項目のうち、カスタマイズ情報内の設定項目の値が、カスタマイズ情報内のデフォルト値に更新される。
【００６４】
また、ログインしているユーザーＡが、例えば印刷設定画面を要求する場合には、ユーザーＡの印刷設定情報がＯＳにより読み出され、ＯＳは、プリンタドライバに印刷設定情報を出力する。このとき、プリンタドライバの更新部は、印刷設定情報内のＣｕｓｔｏｍＩＤと、カスタマイズ情報内のＣｕｓｔｏｍＩＤとが異なるため、更新処理を行う。
【００６５】
また、アプリケーションが、例えば印刷設定画面を要求する場合に、自身が保持する印刷設定情報をプリンタドライバに出力する。このとき、プリンタドライバの更新部は、印刷設定情報内のＣｕｓｔｏｍＩＤと、カスタマイズ情報内のＣｕｓｔｏｍＩＤとが異なるため、更新処理を行う。
【００６６】
これにより、プリンタドライバのアップデートの際に印刷設定情報のデフォルト値をカスタマイズし、ＯＳやアプリが保持する印刷設定情報に対してカスタマイズしたデフォルト値を反映させることができる。
【００６７】
＜動作＞
次に、印刷システム内の各装置の動作について説明する。
【００６８】
（サーバーＰＣにプリンタドライバをインストールする処理）
図１１は、サーバーＰＣ１０にプリンタドライバ１０４をインストールする際に実行される処理の一例を示すフローチャートである。
【００６９】
ステップＳ１０１で、サーバーＰＣ１０にインストールされたプリンタドライバ１０４は、自身のカスタマイズ情報をプリンタドライバ用記憶部４０４に書き込む。これにより、サーバーＰＣ１０のＯＳ１０１が用いる印刷設定情報の生成準備が整う。
【００７０】
（クライアントＰＣにプリンタドライバをインストールする処理）
図１２は、クライアントＰＣにプリンタドライバをインストールする際に実行される処理の一例を示すフローチャートである。
【００７１】
ステップＳ２０１で、サーバーＰＣ１０のＯＳ１０１により、サーバーＰＣ１０のプリンタドライバ１０４の各モジュールが、各クライアントＰＣにコピーされる。
【００７２】
ステップＳ２０２で、サーバーＰＣ１０のプリンタドライバ用記憶部４０４に記憶されているカスタマイズ情報が、クライアントＰＣのプリンタドライバ用記憶部にコピーされる。これにより、クライアントＰＣで同じプリンタドライバを利用することが可能となる。
【００７３】
（サーバーＰＣでプリンタドライバを更新する処理）
図１３は、サーバーＰＣ１０でプリンタドライバが更新される際に実行される処理の一例を示すフローチャートである。
【００７４】
ステップＳ３０１で、古いプリンタドライバが、新しいプリンタドライバで上書きされる。
【００７５】
ステップＳ３０２で、新しいプリンタドライバが、自身のカスタマイズ情報をプリンタドライバ用記憶部４０４に上書きする。これにより、サーバーＰＣ１０のプリンタドライバ用記憶部４０４のカスタマイズ情報が更新される。
【００７６】
（クライアントＰＣでプリンタドライバを更新する処理）
図１４は、クライアントＰＣで、プリンタドライバが更新される際に実行される処理の一例を示すブローチャートである。図１４に示す処理は、サーバーＰＣ１０のプリンタドライバが更新された後に、実行される処理である。
【００７７】
ステップＳ４０１で、サーバーＰＣ１０の新しいプリンタドライバで、各クライアントＰＣの古いプリンタドライバが上書きされる。
【００７８】
ステップＳ４０２で、サーバーＰＣ１０のプリンタドライバ用記憶部４０４に記憶されるカスタマイズ情報が、各クライアントＰＣのプリンタドライバ用記憶部にコピーされる。これにより、各クライアントＰＣのプリンタドライバ用記憶部のカスタマイズ情報が更新される。
【００７９】
（ＯＳがデフォルトの印刷設定を取得する処理）
図１５は、ＯＳ１０１がデフォルトの印刷設定を取得する処理の一例を示すフローチャートである。ＯＳ１０１は、プリンタドライバがインストールされた後に、共通の印刷設定を作成するために、プリンタドライバのデフォルト値を取得する。
【００８０】
ステップＳ５０１で、ＯＳ１０１は、デフォルトの印刷設定情報をプリンタドライバ１０４に要求する。
【００８１】
ステップＳ５０２で、カスタマイズ部３０５は、記憶部３０４に記憶されているカスタマイズ情報を読み出す。
【００８２】
ステップＳ５０３で、カスタマイズ部３０５は、取得したカスタマイズ情報を基に、デフォルト値の印刷設定情報を生成する。このとき、カスタマイズ部３０５は、カスタマイズ情報に含まれていない設定項目に関しては、プリンタドライバ１０４にハードコーディングされている値をデフォルト値とする。また、カスタマイズ部３０５は、カスタマイズ情報に含まれる識別情報を印刷設定情報に含める。
【００８３】
ステップＳ５０４で、カスタマイズ部３０５は、ＯＳ１０１にデフォルトの印刷設定情報を渡す。
【００８４】
ステップＳ５０５で、ＯＳ１０１は、デフォルトの印刷設定情報を、共通記憶部４０２に保存する。これにより、ＯＳ１０１が用いるデフォルトの印刷設定情報を生成することができる。
【００８５】
（印刷設定の更新処理）
図１６は、印刷設定情報が更新される処理の一例を示すフローチャートである。新しいカスタマイズ情報ではなく、古いカスタマイズ情報を基に生成された印刷設定情報がプリンタドライバ１０４に入力された場合、新しいカスタマイズ情報に含まれるデフォルト値で、印刷設定情報が更新される。
【００８６】
ステップＳ６０１で、プリンタドライバ１０４は、印刷設定情報をＯＳ１０１やアプリケーション１０２から取得する。
【００８７】
ステップＳ６０２で、更新部３０３は、プリンタドライバ用記憶部４０４からカスタマイズ情報を読み出して取得する。
【００８８】
ステップＳ６０３で、更新部３０３は、印刷設定情報内のＣｕｓｔｏｍＩＤと、カスタマイズ情報内のＣｕｓｔｏｍＩＤとが一致するか否かを判定する。ＣｕｓｔｏｍＩＤ同士が一致する場合（ステップＳ６０３−ＹＥＳ）更新処理を終了し、ＣｕｓｔｏｍＩＤ同士が一致しない場合（ステップＳ６０３−ＮＯ）ステップＳ６０４に進む。
【００８９】
ステップＳ６０４で、更新部３０３は、カスタマイズ情報に含まれる設定項目のデフォルト値で、印刷設定情報内の対応する設定項目の設定値を書き換える。
【００９０】
ステップＳ６０５で、更新部３０３は、カスタマイズ情報に含まれるＣｕｓｔｏｍＩＤで、印刷設定情報内のＣｕｓｔｏｍＩＤを書き換える。
【００９１】
例えば、図８に示すカスタマイズ情報が含まれているプリンタドライバを、図９に示すカスタマイズ情報が含まれているプリンタドライバに更新したとする。このとき、図９に示すカスタマイズ情報を基に生成された印刷設定情報が、ＯＳ１０１やアプリケーション１０２により更新部３０３に入力されることになる。
【００９２】
この時点でのカスタマイズ情報は、図９に示す内容となっているため、更新部３０３により、カラー設定が白黒に、両面設定が左開きに変更される。更新された印刷設定情報に含まれるＣｕｓｔｏｍＩＤは、図９に示すカスタマイズ情報のＣｕｓｔｏｍＩＤ（ｃｕｓｔｏｍ２）に変更される。よって、プリンタドライバ１０４が更新されない限りは、更新部３０３に印刷設定情報が入力されても、デフォルトの設定値が更新部３０３により変更されることはない。
【００９３】
（ＯＳが印刷設定画面を開く際の処理）
図１７は、ＯＳ１０１が印刷設定画面を開き、ユーザーに印刷設定を変更させる際の処理の一例を示すフローチャートである。例えば、プリンタフォルダから印刷設定画面を開く場合の処理である。
【００９４】
ステップＳ７０１で、ＯＳ１０１は、共通記憶部４０２、又はユーザー毎の記憶部４０３から印刷設定情報を読み出して取得する。管理者であれば共通記憶部４０２とユーザー毎の記憶部４０３とのいずれかから印刷設定情報を読み出すことができ、一般ユーザーであれば、ユーザー毎の記憶部４０３から印刷設定情報を読み出す。管理者か一般ユーザーでるかは、ログイン名やログインＩＤなどで判断することができる。
【００９５】
ステップＳ７０２で、ＯＳ１０１は、プリンタドライバ１０４に対して印刷設定情報を出力する。
【００９６】
ステップＳ７０３で、更新部３０３は、入力された印刷設定情報に対し、更新の必要がある場合は更新する。更新部３０３による更新処理は、図１６に示す処理である。
【００９７】
ステップＳ７０４で、画面表示部３０１は、更新した印刷設定情報に基づき、印刷設定画面を表示制御する。
【００９８】
ステップＳ７０５で、プリンタドライバ１０４は、印刷設定画面から、ユーザーによる印刷設定情報の変更を受け付ける。
【００９９】
ステップＳ７０６で、プリンタドライバ１０４は、変更された印刷設定情報をＯＳ１０１に返す。
【０１００】
ステップＳ７０７で、ＯＳ１０１は、印刷設定情報を共通記憶部４０２又はユーザー毎の記憶部４０３に記憶する。
【０１０１】
これにより、ＯＳ１０１が印刷設定画面を表示要求した際に、最新のカスタマイズ情報に基づく印刷設定情報を、ＯＳ１０１が保持する印刷設定情報に反映させることができる。
【０１０２】
（アプリが印刷設定画面を開く際の処理）
図１８は、アプリが印刷設定画面を開き、ユーザーに印刷設定情報を変更させる際の処理の一例を示すフローチャートである。図１８に示す処理は、例えば、アプリケーション１０２から印刷設定画面を開くときの処理である。
【０１０３】
ステップＳ８０１で、アプリケーション１０２は、自身が保持している印刷設定情報をプリンタドライバ１０４に出力する。
【０１０４】
ステップＳ８０２で、更新部３０３は、入力された印刷設定情報を、必要があれば更新する。更新処理は、図１６に示す処理である。
【０１０５】
ステップＳ８０３で、画面表示部３０１は、更新した印刷設定情報に基づき、印刷設定画面を表示制御する。
【０１０６】
ステップＳ８０４で、プリンタドライバ１０４は、印刷設定画面から、ユーザーによる印刷設定情報の変更を受け付ける。
【０１０７】
ステップＳ８０５で、プリンタドライバ１０４は、変更された印刷設定情報をアプリケーション１０２に返す。これにより、アプリケーション１０２が印刷設定画面を表示要求した際に、最新のカスタマイズ情報に基づく印刷設定情報を、アプリケーション１０２が保持する印刷設定情報に反映させることができる。
【０１０８】
（プリンタドライバが印刷設定情報を出力する処理）
図１９は、プリンタドライバ１０４が、記憶部１０３に記憶されている印刷設定情報を出力する処理の一例を示すフローチャートである。この処理は、ＯＳ１０１やアプリケーション１０２により要求されたときに実行される処理である。また、ＯＳ１０１又はアプリケーション１０２は、任意のタイミングで、この処理を要求する。
【０１０９】
ステップＳ９０１で、プリンタドライバ１０４は、ＯＳ１０１又はアプリケーション１０２により印刷設定情報を要求される。
【０１１０】
ステップＳ９０２で、更新部３０３は、共通記憶部４０２又はユーザー毎の記憶部４０３から、印刷設定情報を読み出し取得する。
【０１１１】
ステップＳ９０３で、更新部３０３は、入力された印刷設定情報を、必要があれば更新する。更新処理は、図１６に示す処理である。
【０１１２】
ステップＳ９０４で、プリンタドライバ１０４は、更新された印刷設定情報を、ＯＳ１０１又はアプリケーション１０２に渡す。
【０１１３】
（印刷時の処理）
図２０は、印刷時の処理の一例を示すフローチャートである。図２０に示すステップＳ１００１で、アプリケーション１０２は、プリンタドライバ１０４に対し、印刷設定情報を渡す。
【０１１４】
ステップＳ１００２で、更新部３０３は、入力された印刷設定情報を、必要があれば更新する。更新処理は、図１６に示す処理である。
【０１１５】
ステップＳ１００３で、アプリケーション１０２は、印刷対象のデータを、プリンタドライバ１０４に渡す。
【０１１６】
ステップＳ１００４で、描画部３０２は、更新された印刷設定情報に従って、印刷対象のデータを印刷データに変換する。
【０１１７】
ステップＳ１００５で、通信部１０５は、変換後の印刷データをプリンタ２０に出力する。これにより、アプリケーション１０２が保持する印刷設定情報に基づき、印刷を行う場合でも、最新のカスタマイズ情報に基づく印刷設定情報を反映させて印刷を実行することができる。
【０１１８】
以上、実施例１によれば、プリンタドライバのアップデートの際に印刷設定情報のデフォルト値をカスタマイズし、ＯＳやアプリが保持する印刷設定情報に対してカスタマイズしたデフォルト値を反映させることができる。
【０１１９】
［実施例２］
次に、実施例２における情報処理装置について説明する。実施例２では、実施例１で説明したサーバーＰＣ１０が、スタンドアローン環境における情報処理装置について適用できることを説明する。
【０１２０】
＜ハードウェアと構成＞
実施例２における情報処理装置のハードウェアと構成とは、実施例１におけるサーバーＰＣ１０の図２に示すハードウェアと図３に示す構成と同様である。
【０１２１】
＜動作＞
実施例２では、実施例１で説明した図１２と図１４とに示した処理が不要である。また、図１１に示すインストールと、図１３に示す更新インストールとの対象を、スタンドアローンの情報処理装置にすることで、スタンドアローン環境に適用することができる。
【０１２２】
以上、実施例２によれば、スタンドアローン環境の情報処理装置であっても、プリンタドライバのアップデートの際に印刷設定情報のデフォルト値をカスタマイズし、ＯＳやアプリが保持する印刷設定情報に対してカスタマイズしたデフォルト値を反映させることができる。
【０１２３】
［変形例］
上記各実施例の情報処理装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital Versatile Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【０１２４】
また、各実施例の情報処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、各実施例の情報処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１２５】
また、各実施例の情報処理装置で実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【０１２６】
各実施例の情報処理装置で実行されるプログラムは、前述した各部を含むモジュール構成となっている。実際のハードウェアとしては、制御部１１（プロセッサ）が補助記憶部１３からプログラムを読み出して実行することにより上記各部のうち１又は複数の各部が主記憶部１２上にロードされ、１又は複数の各部が主記憶部１２上に生成されるようになっている。
【０１２７】
なお、本発明は、上記実施例そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施例に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施例に示される全構成要素からいくつかの構成要素を削除してもよい。
【符号の説明】
【０１２８】
１０  サーバーＰＣ
２０  プリンタ
３０、４０、５０  クライアントＰＣ
１１  制御部
１２  主記憶部
１３  補助記憶部
１４  外部記録装置Ｉ／Ｆ部
１５  記録媒体
１６  ネットワークＩ／Ｆ部
１７  入力部
１８  表示部
１０１  ＯＳ
１０２  アプリケーション
１０３、５００  記憶部
１０４  プリンタドライバ
１０５  通信部
２０１  記憶部
３０１  画面表示部
３０２  描画部
３０３  更新部
３０４  記憶部
３０５  カスタマイズ部
４０１、５０１  ＯＳ用記憶部
４０２、５０２  共通記憶部
４０３、５０３  ユーザー毎の記憶部
４０４、５０４  プリンタドライバ用記憶部
【先行技術文献】
【特許文献】
【０１２９】
【特許文献１】特開２００６−３０９７２６号公報
【図１】
0005799698.tif 000002
【図２】
0005799698.tif 000003
【図３】
0005799698.tif 000004
【図４】
0005799698.tif 000005
【図５】
0005799698.tif 000006
【図６】
0005799698.tif 000007
【図７】
0005799698.tif 000008
【図８】
0005799698.tif 000009
【図９】
0005799698.tif 000010
【図１０】
0005799698.tif 000011
【図１１】
0005799698.tif 000012
【図１２】
0005799698.tif 000013
【図１３】
0005799698.tif 000014
【図１４】
0005799698.tif 000015
【図１５】
0005799698.tif 000016
【図１６】
0005799698.tif 000017
【図１７】
0005799698.tif 000018
【図１８】
0005799698.tif 000019
【図１９】
0005799698.tif 000020
【図２０】
0005799698.tif 000021