(57)【要約】      （修正有）【課題】第２のプリンタドライバが制御対象の機器固有の、利用できない機能や用紙の組み合わせに関する禁則情報を持たない場合であっても、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバで行うことができる情報処理装置を提供する。【解決手段】情報処理装置は、第１のプリンタドライバと、第２のプリンタドライバを有する。第１のプリンタドライバは、制御対象の機器（プリンタ１５０）固有の禁則情報を有する。第２のプリンタドライバは、関連付手段が、第１のプリンタドライバとの関連付けを行い、受付手段が、印刷設定を受け付け、関連付手段によって関連付けられた第１のプリンタドライバが有する禁則情報に基づき変換された印刷設定に基づく印刷データを、制御対象の機器に送信する。【選択図】図１
2020046910.tif 000002
【特許請求の範囲】
【請求項１】
第１のプリンタドライバと、
第２のプリンタドライバと、
を有し、
前記第１のプリンタドライバは、制御対象の機器固有の禁則情報を有し、
前記第２のプリンタドライバは、
前記第１のプリンタドライバとの関連付けを行う関連付手段と、
印刷設定を受け付ける受付手段と、
を有し、
前記第２のプリンタドライバは、前記関連付手段によって関連付けられた第１のプリンタドライバが有する前記禁則情報に基づき変換された印刷設定に基づく印刷データを、前記制御対象の機器に送信する、
情報処理装置。
【請求項２】
前記第２のプリンタドライバは、前記受付手段によって受け付けられた印刷設定を、前記関連付手段によって関連付けられた第１のプリンタドライバに渡し、
前記第１のプリンタドライバは、前記第２のプリンタドライバから渡された印刷設定を、前記禁則情報に基づき変換して該第２のプリンタドライバに返す、
請求項１に記載の情報処理装置。
【請求項３】
前記受付手段は、表示制御手段を有し、
前記第１のプリンタドライバは、前記機器で利用可能な機能及び用紙に関する情報を生成し、
前記第２のプリンタドライバは、前記第１のプリンタドライバから前記情報を受け取り、
前記表示制御手段は、前記第２のプリンタドライバによって受け取られた前記情報に基づき、前記機器で利用可能な機能及び用紙に関する情報のみを選択可能に、表示部に表示させるように制御する、
請求項１または２に記載の情報処理装置。
【請求項４】
前記表示制御手段は、前記第２のプリンタドライバで設定可能な機能及び用紙に関する情報のみを選択可能に、表示部に表示させるように制御する、
請求項３に記載の情報処理装置。
【請求項５】
前記第２のプリンタドライバは、利用可能な機能又は用紙が異なる複数の種類の機器を制御可能である、
請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第２のプリンタドライバは、制御対象の機器固有の利用可能な機能及び用紙に関する情報を有しない、
請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記第２のプリンタドライバは、制御対象の機器固有の禁則情報を有しない、
請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項８】
前記第２のプリンタドライバは、前記複数の種類の機器で共通して利用可能な機能及び用紙に基づく共通禁則情報を有しており、前記第１のプリンタドライバで変換された前記印刷設定について当該共通禁則情報に基づく再変換を行う、
請求項５〜７のいずれか１項に記載の情報処理装置。
【請求項９】
前記関連付手段は、前記第２のプリンタドライバが利用しているポートと同じポートを利用している第１のプリンタドライバを前記第２のプリンタドライバに関連付ける、
請求項１または２に記載の情報処理装置。
【請求項１０】
前記関連付手段は、前記ポートと同じポートを利用している第１のプリンタドライバが複数ある場合は、前記第２のプリンタドライバに関連付ける第１のプリンタドライバを、ユーザに選択させる、
請求項９に記載の情報処理装置。
【請求項１１】
前記第２のプリンタドライバは、前記機器で利用可能な機能及び用紙の問い合わせを受け付けた場合は、前記第１のプリンタドライバに対して、該機器で利用可能な機能及び用紙の問い合わせを行い、
前記第１のプリンタドライバは、前記問い合わせを受けた場合は、前記第２のプリンタドライバに対して、前記機器で利用可能な機能及び用紙を返信し、
前記第２のプリンタドライバは、問い合わせ元に対して、前記第１のプリンタドライバから返信された前記機器で利用可能な機能及び用紙を返信する、
請求項１または２に記載の情報処理装置。
【請求項１２】
前記第２のプリンタドライバは、前記第１のプリンタドライバから返信された前記機器で利用可能な機能及び用紙に、該第２のプリンタドライバが有している共通機器情報を併合して、該併合した情報を問い合わせ元に対して返信する、
請求項１１に記載の情報処理装置。
【請求項１３】
制御対象の機器固有の禁則情報を持つ第１のプリンタドライバがインストールされているコンピュータに、
前記第１のプリンタドライバとの関連付けを行うステップと、
印刷設定を受け付けるステップと、
前記関連付手段によって関連付けられた第１のプリンタドライバが有する前記禁則情報に基づき変換された印刷設定に基づく印刷データを、前記制御対象の機器に送信するステップと、
を実行させる情報処理プログラム。
【請求項１４】
受け付けた印刷設定を前記第１のプリンタドライバに渡すステップと、
前記第１のプリンタドライバが前記禁則情報に基づいて変換した変換後の印刷設定を受け取るステップと、
をさらに含む請求項１３に記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、従来プリンタドライバインストーラでは、旧アーキテクチャから新アーキテクチャのプリンタドライバの置き換えでは、印刷設定や環境設定等の煩雑な設定等をユーザが自ら行う必要があったことを課題とし、第１のプリントキューの印刷設定（ＤＥＶＭＯＤＥ）の一部又は全部を第２のプリンタドライバで採用される形式の印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）に変換し、作成した第２のプリンタドライバで採用される形式の印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）を第２のプリントキューの印刷設定に適用することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１５７０４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
第１のプリンタドライバと第２のプリンタドライバがインストールされている情報処理装置において、第１のプリンタドライバは制御対象の機器固有の、利用できない機能や用紙の組み合わせに関する禁則情報を有し、第２のプリンタドライバが当該禁則情報を有していない場合、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバでできないことがある。一方で、たとえば第２のプリンタドライバの方がバージョンが新しいなどの理由（理由はこれに限らない）で、第２のプリンタドライバを使用したい状況も存在する。
本発明は、第２のプリンタドライバが制御対象の機器固有の、利用できない機能や用紙の組み合わせに関する禁則情報を持たない場合であっても、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバで行うことができる情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、第１のプリンタドライバと、第２のプリンタドライバと、を有し、前記第１のプリンタドライバは、制御対象の機器固有の禁則情報を有し、前記第２のプリンタドライバは、前記第１のプリンタドライバとの関連付けを行う関連付手段と、印刷設定を受け付ける受付手段と、を有し、前記第２のプリンタドライバは、前記関連付手段によって関連付けられた第１のプリンタドライバが有する前記禁則情報に基づき変換された印刷設定に基づく印刷データを、前記制御対象の機器に送信する、情報処理装置である。
【０００６】
請求項２の発明は、前記第２のプリンタドライバは、前記受付手段によって受け付けられた印刷設定を、前記関連付手段によって関連付けられた第１のプリンタドライバに渡し、前記第１のプリンタドライバは、前記第２のプリンタドライバから渡された印刷設定を、前記禁則情報に基づき変換して該第２のプリンタドライバに返す、請求項１に記載の情報処理装置である。
【０００７】
請求項３の発明は、前記受付手段は、表示制御手段を有し、前記第１のプリンタドライバは、前記機器で利用可能な機能及び用紙に関する情報を生成し、前記第２のプリンタドライバは、前記第１のプリンタドライバから前記情報を受け取り、前記表示制御手段は、前記第２のプリンタドライバによって受け取られた前記情報に基づき、前記機器で利用可能な機能及び用紙に関する情報のみを選択可能に、表示部に表示させるように制御する、請求項１または２に記載の情報処理装置である。
【０００８】
請求項４の発明は、前記表示制御手段は、前記第２のプリンタドライバで設定可能な機能及び用紙に関する情報のみを選択可能に、表示部に表示させるように制御する、請求項３に記載の情報処理装置である。
【０００９】
請求項５の発明は、前記第２のプリンタドライバは、利用可能な機能又は用紙が異なる複数の種類の機器を制御可能である、請求項１〜４のいずれか１項に記載の情報処理装置である。
【００１０】
請求項６の発明は、前記第２のプリンタドライバは、制御対象の機器固有の利用可能な機能及び用紙に関する情報を有しない、請求項１〜５のいずれか１項に記載の情報処理装置である。
【００１１】
請求項７の発明は、前記第２のプリンタドライバは、制御対象の機器固有の禁則情報を有しない、請求項１〜５のいずれか１項に記載の情報処理装置である。
【００１２】
請求項８の発明は、前記第２のプリンタドライバは、前記複数の種類の機器で共通して利用可能な機能及び用紙に基づく共通禁則情報を有しており、前記第１のプリンタドライバで変換された前記印刷設定について当該共通禁則情報に基づく再変換を行う、請求項５〜７のいずれか１項に記載の情報処理装置である。
【００１３】
請求項９の発明は、前記関連付手段は、前記第２のプリンタドライバが利用しているポートと同じポートを利用している第１のプリンタドライバを前記第２のプリンタドライバに関連付ける、請求項１または２に記載の情報処理装置である。
【００１４】
請求項１０の発明は、前記関連付手段は、前記ポートと同じポートを利用している第１のプリンタドライバが複数ある場合は、前記第２のプリンタドライバに関連付ける第１のプリンタドライバを、ユーザに選択させる、請求項９に記載の情報処理装置である。
【００１５】
請求項１１の発明は、前記第２のプリンタドライバは、前記機器で利用可能な機能及び用紙の問い合わせを受け付けた場合は、前記第１のプリンタドライバに対して、該機器で利用可能な機能及び用紙の問い合わせを行い、前記第１のプリンタドライバは、前記問い合わせを受けた場合は、前記第２のプリンタドライバに対して、前記機器で利用可能な機能及び用紙を返信し、前記第２のプリンタドライバは、問い合わせ元に対して、前記第１のプリンタドライバから返信された前記機器で利用可能な機能及び用紙を返信する、請求項１または２に記載の情報処理装置である。
【００１６】
請求項１２の発明は、前記第２のプリンタドライバは、前記第１のプリンタドライバから返信された前記機器で利用可能な機能及び用紙に、該第２のプリンタドライバが有している共通機器情報を併合して、該併合した情報を問い合わせ元に対して返信する、請求項１１に記載の情報処理装置である。
【００１７】
請求項１３の発明は、制御対象の機器固有の禁則情報を持つ第１のプリンタドライバがインストールされているコンピュータに、前記第１のプリンタドライバとの関連付けを行うステップと、印刷設定を受け付けるステップと、前記関連付手段によって関連付けられた第１のプリンタドライバが有する前記禁則情報に基づき変換された印刷設定に基づく印刷データを、前記制御対象の機器に送信するステップと、を実行させる情報処理プログラムである。
【００１８】
請求項１４の発明は、受け付けた印刷設定を前記第１のプリンタドライバに渡すステップと、前記第１のプリンタドライバが前記禁則情報に基づいて変換した変換後の印刷設定を受け取るステップと、をさらに含む請求項１３に記載の情報処理プログラムである。
【発明の効果】
【００１９】
請求項１の情報処理装置によれば、第２のプリンタドライバが制御対象の機器固有の、利用できない機能や用紙の組み合わせに関する禁則情報を持たない場合であっても、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバで行うことができる。
【００２０】
請求項２の情報処理装置によれば、第２のプリンタドライバが制御対象の機器固有の、利用できない機能や用紙の組み合わせに関する禁則情報を持たない場合であっても、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバで行うことができる。
【００２１】
請求項３の情報処理装置によれば、制御対象の機器では利用できない印刷設定をユーザにさせないようにすることができる。
【００２２】
請求項４の情報処理装置によれば、第２のプリンタドライバ側でサポートしてない機能は、ユーザに選択させないようにすることができる。
【００２３】
請求項５の情報処理装置によれば、利用可能な機能又は用紙が異なる複数の種類の機器に対して、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバで行うことができる。
【００２４】
請求項６の情報処理装置によれば、第２のプリンタドライバは、制御対象の機器固有の利用可能な機能及び用紙に関する情報を有していなくても、機器を制御することができる。
【００２５】
請求項７の情報処理装置によれば、第２のプリンタドライバは、制御対象の機器固有の禁則情報を有していなくても、機器を制御することができる。
【００２６】
請求項８の情報処理装置によれば、第２のプリンタドライバは、第１のプリンタドライバで変換された印刷設定について共通禁則情報に基づく再変換を行うことができる。
【００２７】
請求項９の情報処理装置によれば、ユーザが指定しなくても、第２のプリンタドライバと制御対象を同じくする第１のプリンタドライバを、第２のプリンタドライバに関連付けることができる。
【００２８】
請求項１０の情報処理装置によれば、機器が利用しているポートと同じポートを利用している第１のプリンタドライバが複数ある場合は、第２のプリンタドライバに関連付ける第１のプリンタドライバを、ユーザが選択することができる。
【００２９】
請求項１１の情報処理装置によれば、第２のプリンタドライバは、機器で利用可能な機能及び用紙の問い合わせを受け付けた場合は、その回答を返信することができる。
【００３０】
請求項１２の情報処理装置によれば、第２のプリンタドライバは、機器で利用可能な機能及び用紙に、共通機器情報を併合して返信することができる。
【００３１】
請求項１３の情報処理プログラムによれば、第２のプリンタドライバが制御対象の機器固有の、利用できない機能や用紙の組み合わせに関する禁則情報を持たない場合であっても、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバで行うことができる。
【００３２】
請求項１４の情報処理プログラムによれば、第２のプリンタドライバが制御対象の機器固有の、利用できない機能や用紙の組み合わせに関する禁則情報を持たない場合であっても、第１のプリンタドライバで設定されているのと同等の禁則処理を第２のプリンタドライバで行うことができる。
【図面の簡単な説明】
【００３３】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を利用したシステム構成例を示す説明図である。
【図３】本実施の形態を用いない場合の処理例（従来の処理例）を示すフローチャートである。
【図４】本実施の形態による処理例を示すフローチャートである。
【図５】本実施の形態による処理例を示す説明図である。
【図６】本実施の形態による処理例（ポートの設定例）を示す説明図である。
【図７】本実施の形態による処理例（ポートの設定例）を示す説明図である。
【図８】本実施の形態による処理例（印刷設定画面の表示例）を示す説明図である。
【図９】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００３４】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続のほか、論理的な接続（データの授受、指示、データ間の参照関係、ログイン等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態にしたがって、又はそれまでの状況・状態にしたがって定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。また、「Ａ、Ｂ、Ｃ」等のように事物を列挙した場合は、断りがない限り例示列挙であり、その１つのみを選んでいる場合（例えば、Ａのみ）を含む。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスクドライブ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００３５】
本実施の形態である情報処理装置１００は、プリンタ１５０（機器の一例）に対して印刷の指示を行うものであって、図１の例に示すように、プリンタドライバ（Ａ）１０５、プリンタドライバ（Ｂ）１１５を有している。
プリンタドライバ（Ａ）１０５は専用ドライバともいわれ、プリンタドライバ（Ｂ）１１５は共通ドライバともいわれる。本実施の形態では、プリンタドライバ（Ａ）は情報処理装置１００に予めインストールされており、プリンタドライバ（Ｂ）はその後に（例えば、ＯＳがサポートするプリンタドライバアーキテクチャのバージョンアップ等によって）インストールされる。
プリンタ１５０は、情報処理装置１００のプリンタドライバ（Ｂ）１１５と接続されている。プリンタ１５０は、プリンタドライバ（Ｂ）１１５によって制御されるものであり、画像処理装置（プリンタ、印刷装置、画像形成装置等ともいわれる）である。
【００３６】
プリンタドライバ（Ａ）１０５は、制御対象であるプリンタ１５０の固有の禁則情報１１０を有しており、プリンタドライバ（Ｂ）１１５と接続されている。
プリンタドライバ（Ｂ）１１５は、関連付モジュール１２０、受付モジュール１２５、共通禁則情報１３５を有しており、プリンタドライバ（Ａ）１０５、プリンタ１５０と接続されている。プリンタドライバ（Ｂ）１１５は、関連付モジュール１２０によって関連付けられたプリンタドライバ（Ａ）１０５が有する禁則情報１１０に基づき変換された印刷設定に基づく印刷データを、制御対象のプリンタ１５０に送信する。ここで「関連付け」とは、印刷データの送受信や印刷設定の受け渡しを行う相手となるプリンタドライバを特定することをいう。
また、プリンタドライバ（Ｂ）１１５は、受付モジュール１２５によって受け付けられた印刷設定を、関連付モジュール１２０によって関連付けられたプリンタドライバ（Ａ）１０５に渡すようにしてもよい。
そして、プリンタドライバ（Ａ）１０５は、プリンタドライバ（Ｂ）１１５から渡された印刷設定を、禁則情報に基づき変換して、そのプリンタドライバ（Ｂ）１１５に返すようにしてもよい。
【００３７】
禁則とは、制御対象のプリンタ１５０において、利用できない機能や用紙、利用できない機能と用紙の組み合わせをいい、禁則情報１１０とは禁則に関する情報であって、禁則処理に用いられる。そして、「禁則処理」とは、制御対象のプリンタ１５０において、利用できない機能や用紙の指定、利用できない機能と用紙の組み合わせの指定を禁止する処理である。また、禁止する処理として、その指定そのものを提示しないこと、その指定の提示は行うが、その指定を選択できないようにすること、その指定が行われた場合は利用できないメッセージを提示すること、その指定が行われた場合は他の指定（いわゆるデフォルト設定）に変更すること等がある。
「機器固有」とは、他の機種でも共通して有しているものではないということであり、その機種の機器のみで有しているもののほか、一部の他の機種（全ての機種ではない）でも有しているものを含めてもよい。
プリンタドライバ（Ｂ）１１５は機器固有の禁則処理ができないので、プリンタドライバ（Ａ）１０５に印刷設定を受け渡す。そして、プリンタドライバ（Ａ）１０５は禁則処理を行い、禁則処理後の印刷設定をプリンタドライバ（Ｂ）１１５に返す。そして、プリンタドライバ（Ｂ）１１５は、印刷指示を行うアプリケーション又はＯＳに対して、機器固有の禁則処理が施された印刷設定を渡すことができるようになる。
【００３８】
関連付モジュール１２０は、プリンタドライバ（Ａ）１０５との関連付けを行う。
受付モジュール１２５は、表示制御モジュール１３０を有している。受付モジュール１２５は、プリンタ１５０に対しての印刷指示である印刷設定を受け付ける。
プリンタドライバ（Ａ）１０５は、プリンタ１５０で利用可能な機能及び用紙に関する情報を生成するようにしてもよい。
プリンタドライバ（Ｂ）１１５は、プリンタドライバ（Ａ）１０５から情報（プリンタ１５０で利用可能な機能及び用紙に関する情報）を受け取るようにしてもよい。
そして、表示制御モジュール１３０は、プリンタドライバ（Ｂ）１１５によって受け取られた情報に基づきプリンタ１５０で利用可能な機能及び用紙に関する情報のみを選択可能に表示装置に表示させるよう制御するようにしてもよい。
また、表示制御モジュール１３０は、プリンタドライバ（Ｂ）１１５で設定可能な機能及び用紙に関する情報のみを選択可能に表示装置に表示させるよう制御するようにしてもよい。
共通禁則情報１３５は、複数の種類の機器（プリンタ１５０を含む）に共通して利用できない機能や用紙、及び利用できない機能と用紙の組み合わせに関する情報である。つまり、対応可能な全ての機種の機器が有している禁則情報である。
【００３９】
また、プリンタドライバ（Ｂ）１１５は、利用可能な機能又は用紙が異なる複数の種類の機器を制御可能である。
また、プリンタドライバ（Ｂ）１１５は、制御対象のプリンタ１５０の固有の利用可能な機能及び用紙に関する情報を有しない。
また、プリンタドライバ（Ｂ）１１５は、制御対象のプリンタ１５０の固有の禁則情報を有しない。
なお、プリンタドライバ（Ｂ）１１５は「制御対象のプリンタ１５０の固有の禁則情報を有しない」として、「制御対象のプリンタ１５０の固有の禁則情報の全てを有しない」場合のほかに、「制御対象のプリンタ１５０の固有の禁則情報の一部を有していない」場合を含めてもよい。後者は、結果として、制御対象のプリンタ１５０の固有の禁則情報の一部を有することになるが、制御対象のプリンタ１５０の固有の禁則情報の全てを有しているわけではなく、有していない一部の禁則情報は、プリンタドライバ（Ａ）１０５が有していることになる。
【００４０】
プリンタドライバ（Ｂ）１１５は、複数の種類の機器で共通して利用可能な機能及び用紙に基づく共通禁則情報１３５を有しており、プリンタドライバ（Ａ）１０５で変換された印刷設定について共通禁則情報１３５に基づく再変換を行うようにしてもよい。
共通禁則情報１３５について、プリンタドライバ（Ｂ）１１５は、共通禁則情報１３５そのものを有していてもよいし、複数の種類の機器で共通して利用可能な機能及び用紙を用いて、共通禁則情報１３５を生成するようにしてもよい。
【００４１】
関連付モジュール１２０は、プリンタドライバ（Ｂ）１１５が利用しているポートと同じポートを利用しているプリンタドライバ（Ａ）１０５を、プリンタドライバ（Ｂ）１１５に関連付けるようにしてもよい。
また、関連付モジュール１２０は、プリンタドライバ（Ｂ）１１５が利用しているポートと同じポートを利用しているプリンタドライバ（Ａ）１０５が複数ある場合は、関連付モジュール１２０に関連付けるプリンタドライバ（Ａ）１０５を、ユーザに選択させるようにしてもよい。
【００４２】
また、プリンタドライバ（Ｂ）１１５は、プリンタ１５０で利用可能な機能及び用紙の問い合わせを受け付けた場合は、プリンタドライバ（Ａ）１０５に対して、プリンタ１５０で利用可能な機能及び用紙の問い合わせを行うようにしてもよい。
プリンタドライバ（Ａ）１０５は、その問い合わせを受けた場合は、プリンタドライバ（Ｂ）１１５に対して、プリンタ１５０で利用可能な機能及び用紙を返信してもよい。
プリンタドライバ（Ｂ）１１５は、問い合わせ元に対して、プリンタドライバ（Ａ）１０５から返信されたプリンタ１５０で利用可能な機能及び用紙を返信するようにしてもよい。
また、プリンタドライバ（Ｂ）１１５は、プリンタドライバ（Ａ）１０５から返信されたプリンタ１５０で利用可能な機能及び用紙に、プリンタドライバ（Ｂ）１１５が有している共通禁則情報１３５を併合して、その併合した情報を問い合わせ元に対して返信するようにしてもよい。
【００４３】
図２は、本実施の形態を利用したシステム構成例を示す説明図である。
図２（ａ）の例は、スタンドアロン型のシステムを示している。
情報処理装置１００とプリンタ１５０は、接続されている。情報処理装置１００は、複数のプリンタ１５０と接続されていてもよい。
図２（ｂ）の例は、ネットワーク型のシステムを示している。
情報処理装置１００Ａ、情報処理装置１００Ｂ、情報処理装置１００Ｃ、プリンタＡ１５０Ａ、プリンタＢ１５０Ｂは、通信回線２９０を介してそれぞれ接続されている。通信回線２９０は、無線、有線、これらの組み合わせであってもよく、例えば、通信インフラとしてのインターネット、イントラネット等であってもよい。
情報処理装置１００のプリンタドライバ（Ｂ）１１５は、プリンタドライバ（Ａ）１０５内の禁則情報１１０を利用して、プリンタ１５０に対して印刷の指示を行う。
【００４４】
Ｗｉｎｄｏｗｓ（登録商標）ＯＳにおいて、プリンタドライバのアーキテクチャがＶｅｒｓｉｏｎ３からＶｅｒｓｉｏｎ４に変更になる。
Ｖｅｒｓｉｏｎ４は、Ｖｅｒｓｉｏｎ３に比べてセキュリティの強化及び印刷品質の向上が図られている。また、ストアアプリからの詳細な印刷設定は、Ｖｅｒｓｉｏｎ３のプリンタドライバではできない。
既存の機種（プリンタ１５０）に対してもＶｅｒｓｉｏｎ４のプリンタドライバを提供する必要がある。
一般的には、既存の機種は機種毎に専用のＶｅｒｓｉｏｎ３のプリンタドライバを提供済だが、Ｖｅｒｓｉｏｎ４のプリンタドライバは未提供である。
市場のＶｅｒｓｉｏｎ４のニーズが高まると、既存の機種に対してもＶｅｒｓｉｏｎ４のプリンタドライバの提供が求められる。
ここで、既存の機種全てに専用のＶｅｒｓｉｏｎ４のプリンタドライバを提供するのは困難である。つまり、既存の機種は数百機種ある。そのため、数百のＶｅｒｓｉｏｎ４のプリンタドライバを新たに開発する必要があるが、その工数は捻出できないのが一般的である。
そこで、機種共通に利用できる共通のプリンタドライバ（本実施の形態におけるプリンタドライバ（Ｂ）１１５）として提供する。
【００４５】
機種共通のプリンタドライバでも適切な禁則を実施する必要がある。
ここで、「禁則」とは、利用できない機能や用紙の指定、利用できない機能と用紙の組み合わせの指定を禁止する処理である。
なお、専用のプリンタドライバ（例えば、前述のＶｅｒｓｉｏｎ３のプリンタドライバ）では機種毎に適切な禁則処理を実施している。例えば、機種毎に用紙と各出力機能（両面、ステープル、パンチ、紙折り等）の組み合わせ可否が異なる。
必要な禁則処理は機種毎に異なる。以下に例を挙げる。
例１）Ｂ６サイズの用紙の両面可否は機種によって異なる。具体的には、機種ＡではＢ６サイズの両面の印刷ができないが、機種ＢではＢ６サイズの両面の印刷が可能であるので、Ｂ６サイズの両面可否が異なっており、機種Ａでは禁則処理が必要となる。
例２）Ａ３ノビサイズの利用可否は機種によって異なる。
例３）ラベル紙の利用可否は機種によって異なる。
例４）重厚紙へのステープル可否は機種によって異なる。
適切な禁則処理を実施するためには、機種毎の情報（利用可能な用紙や機能、その組み合わせの情報）が必要になる。
そのため、既存の機種に対して機種毎の情報を用意するとなると、その開発工数が膨大になる。さらに、機種毎の情報を保持するためプリンタドライバのサイズが大きくなる。
【００４６】
図３の例を用いて、本実施の形態を理解する上で、必要となる知識を説明する。
例えば、Ｗｉｎｄｏｗｓのプリンタドライバには下記の仕組みがある。Ｖｅｒｓｉｏｎ３のプリンタドライバとＶｅｒｓｉｏｎ４のプリンタドライバともに、当てはまることである。
（１）利用可能な用紙や機能を取得する仕組み
具体的には、ＧｅｔＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ  ＡＰＩを利用する。これは、ＸＭＬ（ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式）で利用可能な機能や用紙の一覧を取得可能なＡＰＩである。そして、禁則となっている機能や選択肢も判別可能である。
（２）指定した印刷設定の禁則処理を行う仕組み
具体的には、ＶａｌｉｄａｔｅＰｒｉｎｔＴｉｃｋｅｔ  ＡＰＩを利用する。これは、ＸＭＬ（ＰｒｉｎｔＴｉｃｋｅｔ形式）で印刷設定を指定すると禁則処理した印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）を取得可能である。
【００４７】
図３は、本実施の形態を用いない場合の処理例（従来の処理例）を示すフローチャートである。外部モジュール３８０とプリンタドライバ３９０との間で、以下の処理を行う。外部モジュール３８０は、ＯＳ又はアプリケーションの一部である。
ステップＳ３０２では、外部モジュール３８０は、プリンタドライバ３９０に対して、利用可能な機能／用紙情報を要求する（具体的には、前述のＧｅｔＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ  ＡＰＩ）。
ステップＳ３０４では、プリンタドライバ３９０は、利用可能な機能、用紙をＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ形式で生成する。
ステップＳ３０６では、プリンタドライバ３９０は、外部モジュール３８０に対して、利用可能な機能、用紙の情報（ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ（ＸＭＬ）形式）を送信する。
【００４８】
ステップＳ３０８では、外部モジュール３８０は、プリンタドライバ３９０に対して、印刷設定の禁則処理を要求する（具体的には、前述のＶａｌｉｄａｔｅＰｒｉｎｔＴｉｃｋｅｔ  ＡＰＩ）。引数で対象の印刷設定を指定する。
ステップＳ３１０では、プリンタドライバ３９０は、指定された印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）に禁則があれば禁則処理する。例えば、用紙サイズに対してステープルできない位置にステープルが指定されていたらステープル指定を解除する。
ステップＳ３１２では、プリンタドライバ３９０は、外部モジュール３８０に対して、禁則処理済の印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ（ＸＭＬ）形式）を行う。
【００４９】
図４は、本実施の形態による処理例を示すフローチャートである。
共通ドライバ４８０（プリンタドライバ（Ｂ）１１５の一例）と専用ドライバ４９０（プリンタドライバ（Ａ）１０５の一例）との間で、以下の処理を行う。共通ドライバ４８０は、ユーザ４７０によって操作され、ユーザ４７０に対して表示する。つまり、ユーザ４７０は、専用ドライバ４９０に対する操作を行うことなく、共通ドライバ４８０を利用して印刷を行わせることができる。
【００５０】
まず、ステップＳ４０２では、共通ドライバ４８０は、専用ドライバ４９０との関連付けを行う。つまり、印刷を行わせるプリンタ１５０の専用ドライバ４９０との関連付けを行う。
共通ドライバ４８０と専用ドライバ４９０との関連付けは、例えば、以下のように行う。
（方法１）手動で関連付ける専用ドライバ４９０を指定する。
共通ドライバ４８０は、既にインストールされている専用ドライバ４９０を列挙して表示し、ユーザ４７０に関連付ける専用ドライバ４９０を指定させる。
（方法２）同じポートを利用している専用ドライバ４９０を自動的に検出して関連付ける。具体的には、以下のように行う。
１）既にインストールされている専用ドライバ４９０を抽出する。
２）各専用ドライバ４９０の利用ポートを検出する。
３）共通ドライバ４８０自身と同じポートを利用している専用ドライバ４９０を関連付ける。
【００５１】
ステップＳ４０４では、ユーザ４７０は、共通ドライバ４８０に対して、印刷設定ユーザインタフェースのオープン要求を行う。例えば、印刷指示が該当する。
ステップＳ４０６では、共通ドライバ４８０は、専用ドライバ４９０に対して、プリンタ１５０で利用可能な機能／用紙情報を要求する。
ステップＳ４０８では、専用ドライバ４９０は、共通ドライバ４８０に対して、プリンタ１５０で利用可能な機能／用紙の情報を送信する。
ステップＳ４１０では、共通ドライバ４８０は、ユーザ４７０に対して、プリンタ１５０で利用可能な機能／用紙の情報を反映したユーザインタフェースを表示する。例えば、印刷可能な用紙がＡ４サイズまでのプリンタ１５０の場合、Ａ３サイズは無効表示となる。無効表示として、Ａ３サイズそのものを表示しない、Ａ３サイズを選択できないように表示（薄く表示等）等がある。
ステップＳ４１２では、ユーザ４７０は、共通ドライバ４８０に対して、印刷設定を指定する。
【００５２】
ステップＳ４１４では、共通ドライバ４８０は、専用ドライバ４９０に対して、プリンタ１５０での禁則処理を要求する。
ステップＳ４１６では、専用ドライバ４９０は、共通ドライバ４８０に対して、プリンタ１５０での禁則処理済の印刷設定を行う。
ステップＳ４１８では、共通ドライバ４８０は、ユーザ４７０に対して、禁則処理の結果を通知する。例えば、「指定された位置にステープルができないため、ステープルの設定を解除しました」と通知する。
【００５３】
本実施の形態は、機器（プリンタ１５０等）の機種共通で利用できる共通ドライバ４８０を提供している。その共通ドライバ４８０自身には機種毎の禁則情報を持たない。
そして、図４の例に示したフローチャートのように、共通ドライバ４８０と既存の機種専用ドライバである専用ドライバ４９０を関連付けるようにしている。共通ドライバ４８０は、関連付けされた専用ドライバ４９０に禁則処理を委譲することができる。そして、ユーザ４７０からの印刷設定ユーザインタフェースの要求に対して、関連付けされた専用ドライバ４９０から利用可能な機能／用紙情報を取得し、それを反映したユーザインタフェースを表示する。ユーザ４７０からの印刷設定の指定に対して、関連付けされた専用ドライバ４９０に禁則処理を要求し、結果をユーザ４７０に通知する。
【００５４】
図５は、本実施の形態による処理例を示す説明図である。
Ｖ４機種共通ドライバ５４４は、ドライバ関連付モジュール５４６、印刷設定処理モジュール５４８、印刷ジョブ生成／出力モジュール５５８を有している。Ｖ４機種共通ドライバ５４４は、プリンタドライバ（Ｂ）１１５を具体化した一例である。
ドライバ関連付モジュール５４６は、関連付モジュール１２０を具体化した一例である。
印刷設定処理モジュール５４８は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５５０、ＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５５４を有している。印刷設定処理モジュール５４８は、受付モジュール１２５を具体化した一例である。
ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５５０は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ生成要求モジュール５５２を有している。
ＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５５４は、ＰｒｉｎｔＴｉｃｋｅｔ競合解決要求モジュール５５６を有している。
【００５５】
Ｖ３機種毎の専用ドライバ５６２は、印刷設定処理モジュール５６４を有している。Ｖ３機種毎の専用ドライバ５６２は、プリンタドライバ（Ａ）１０５を具体化した一例である。
印刷設定処理モジュール５６４は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５６６、ＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５６８を有している。
ＸＰＳスプールファイル５７４は、印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）５７６、描画データ５７８を有している。
【００５６】
（１）まず、Ｖ４機種共通ドライバ５４４とＶ３機種毎の専用ドライバ５６２との関連付けの処理例を説明する。ステップＳ５０１からステップＳ５０２までの処理、又は、ステップＳ５０３の処理、のいずれかを行えばよい。
（方法１）Ｖ４機種共通ドライバ５４４と既存のＶ３機種毎の専用ドライバ５６２との関連付け（手動）
ステップＳ５０１では、ユーザ５４０は、プリンタプロパティユーザインタフェース５４２を開き、既存のＶ３機種毎の専用ドライバ５６２の印刷キューを指定する。
ステップＳ５０２では、ドライバ関連付モジュール５４６は、ユーザ５４０が選択した印刷キューを印刷設定処理の問い合わせ先として記憶する（関連付け処理）。
【００５７】
（方法２）Ｖ４機種共通ドライバ５４４と既存のＶ３機種毎の専用ドライバ５６２との関連付け（自動）
ステップＳ５０３では、ドライバ関連付モジュール５４６は、同じポート５６０を利用しているＶ３機種毎の専用ドライバ５６２の印刷キューを検索して印刷設定処理の問い合わせ先として記憶する。なお、同じポート５６０を利用しているＶ３機種毎の専用ドライバ５６２の印刷キューが複数あった場合は、その複数のＶ３機種毎の専用ドライバ５６２において（方法１）で示した手動設定となる。
【００５８】
図６は、本実施の形態による処理例（ポートの設定例）を示す説明図である。（方法１）又は（方法２）による処理結果の例を示すものである。
例えば、図６に示すように、Ｖ４機種共通ドライバ５４４のドライバープロパティ画面６００を開いた場合に、ユーザ５４０によってポートタグ６０５が選択されると、ポート表示領域６１０内の該当するポートが選択されている。
【００５９】
図７は、本実施の形態による処理例（ポートの設定例）を示す説明図である。（方法１）による処理例を示すものである。
例えば、図７に示すように、Ｖ４機種共通ドライバ５４４のドライバープロパティ画面７００を開いた場合に、ユーザ５４０によってデバイス設定タグ７０５が選択されると、関連付けプリンタ設定欄７１０が表示される。そして、ユーザ５４０によって、関連付けプリンタ設定欄７１０でＶ３機種毎の専用ドライバ５６２が選択される。
【００６０】
（２）印刷設定ユーザインタフェースの表示処理例を説明する。ステップＳ５０４からステップＳ５０９までの処理が該当する。
ステップＳ５０４、ステップＳ５０５では、ユーザ５４０の操作にしたがって、アプリケーション／ＯＳ５７０から印刷設定ユーザインタフェース５７２を起動する。
ステップＳ５０６では、印刷設定ユーザインタフェース５７２は、Ｖ４機種共通ドライバ５４４に対してＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓを要求する。
なお、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓとは、Ｗｉｎｄｏｗｓ  ＯＳの標準のフォーマットであってＸＭＬ形式でプリンタドライバ（Ｖ４機種共通ドライバ５４４、Ｖ３機種毎の専用ドライバ５６２）が提供する機能（用紙サイズ、Ｎアップ等）、その機能における選択肢（用紙サイズとして、Ａ４、Ａ３、Ｌｅｔｔｅｒ等、Ｎアップとして、２ＵＰ、４ＵＰ、８ＵＰ等）及び機能や選択肢の有効／無効についての情報が記載されている。
【００６１】
ステップＳ５０７では、Ｖ４機種共通ドライバ５４４のＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５５０は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ生成要求モジュール５５２を通して、ドライバ関連付モジュール５４６が記憶するＶ３機種毎の専用ドライバ５６２（つまり、関連付けられたＶ３機種毎の専用ドライバ５６２）に対してＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓを要求する。
ステップＳ５０８では、Ｖ３機種毎の専用ドライバ５６２は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５６６によりＶ３機種毎の専用ドライバ５６２自身のＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓを生成して返す。
【００６２】
ステップＳ５０９では、Ｖ４機種共通ドライバ５４４のＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５５０は、Ｖ３機種毎の専用ドライバ５６２より返されたＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓをＶ４機種共通ドライバ５４４自身のＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓと併合（マージ）して印刷設定ユーザインタフェース５７２に返す。印刷設定ユーザインタフェース５７２は、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓの内容をユーザインタフェースに反映してユーザ５４０に提示する。
なお、Ｖ４機種共通ドライバ５４４自体（プリンタ１５０ではなく、Ｖ４機種共通ドライバ５４４自体）がサポートしていない機能や選択肢は、Ｖ３機種毎の専用ドライバ５６２のＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓでサポートとなっていても非サポートに変更する必要がある。
例えば、印刷設定画面８００をユーザ５４０に表示する。図８は、本実施の形態による処理例（印刷設定画面８００の表示例）を示す説明図である。印刷設定画面８００には、原稿サイズ選択領域８１０を表示する。例えば、原稿サイズ選択領域８１０では、Ａ４サイズ、Ｂ５サイズが可能であることを示しており、非サポートであるほかのサイズ（Ａ５サイズ、Ｂ６サイズ等）は選択できないようにしている。
【００６３】
（３）印刷の設定指示例を説明する。ステップＳ５１０からステップＳ５１４での処理が該当する。
ステップＳ５１０では、ユーザ５４０は、印刷設定ユーザインタフェース５７２を利用して印刷設定を編集する。
ステップＳ５１１では、アプリケーション／ＯＳ５７０は、ユーザ５４０の編集した印刷設定内容をＰｒｉｎｔＴｉｃｋｅｔ形式でＶ４機種共通ドライバ５４４に整合処理を依頼する。具体的には、設定内容に矛盾がないかの確認を依頼するものである。
ステップＳ５１２では、Ｖ４機種共通ドライバ５４４のＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５５４は、ＰｒｉｎｔＴｉｃｋｅｔ競合解決要求モジュール５５６を通してＶ３機種毎の専用ドライバ５６２にＰｒｉｎｔＴｉｃｋｅｔの整合処理を依頼する。
ステップＳ５１３では、Ｖ３機種毎の専用ドライバ５６２のＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５６８は、依頼されたＰｒｉｎｔＴｉｃｋｅｔの整合処理（具体的には、矛盾がないかを確認して、矛盾があれば矛盾のないように設定変更）を実施して返す。
ステップＳ５１４では、Ｖ４機種共通ドライバ５４４のＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５５４は、Ｖ３機種毎の専用ドライバ５６２によって整合処理が行われたＰｒｉｎｔＴｉｃｋｅｔに対して、さらにＶ４機種共通ドライバ５４４自身の整合処理を実施してアプリケーション／ＯＳ５７０に返す。
【００６４】
（４）印刷指示の処理例、そして、印刷の処理例を説明する。ステップＳ５１５からステップＳ５２３での処理が該当する。
ステップＳ５１５では、ユーザ５４０が、アプリケーション／ＯＳ５７０に対して印刷実行を指示する。
ステップＳ５１６では、アプリケーション／ＯＳ５７０が出力した描画データ５７８（描画命令ともいわれる）及び印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）５７６を、アプリケーション／ＯＳ５７０（特に、ＯＳ）がＸＰＳ系式でスプールする。
ステップＳ５１７、ステップＳ５１８、ステップＳ５１９では、Ｖ４機種共通ドライバ５４４のＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５５４は、ＸＰＳスプールファイル５７４に格納されている印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）５７６の整合処理を再度実施する。整合処理済の印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）５７６が格納されているが、正常な処理であっても、１回目の整合処理の後に用紙サイズ等の変更がありえるためである。前述したステップＳ５１２からステップＳ５１３の処理と同様に、ＰｒｉｎｔＴｉｃｋｅｔ競合解決要求モジュール５５６を通してＶ３機種毎の専用ドライバ５６２に印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）５７６の整合処理を依頼し、その処理結果を取得する。
ステップＳ５２０、ステップＳ５２１、ステップＳ５２２、ステップＳ５２３では、印刷ジョブ生成／出力モジュール５５８が、整合処理済の印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）５７６と描画データ５７８から印刷ジョブを生成して、ポート５６０を通して、プリンタ１５０に出力する。その後、プリンタ１５０は、印刷ジョブにしたがって印刷を行う。
【００６５】
このように、本実施の形態は、特に、以下の処理を行っている。
１）ユーザ５４０に適切（具体的には、利用可能な機能、利用可能な用紙を判別可能としている）な印刷設定ユーザインタフェースを提供するために、既存のＶ３機種毎の専用ドライバ５６２のＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５６６によるＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理を利用している。
２）ユーザ５４０が設定した印刷設定の整合処理をするために、既存のＶ３機種毎の専用ドライバ５６２のＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５６８によるＰｒｉｎｔＴｉｃｋｅｔ処理を利用している。
そのために、以下のように行ってもよい。
１）Ｖ４機種共通ドライバ５４４は禁則処理を行わずに、完全にＶ３機種毎の専用ドライバ５６２の禁則処理のみを利用する。
２）Ｖ４機種共通ドライバ５４４自体も禁則処理を行う。つまり、共通禁則情報に基づく禁則処理を行う。
そのために、以下のように処理を行う。
２−１）Ｖ３機種毎の専用ドライバ５６２の作成したＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓとＶ４機種共通ドライバ５４４自身のＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓをマージする。具体的には、機能単位でより制限の強い方を採用すればよい。
または、
２−２）Ｖ３機種毎の専用ドライバ５６２が整合処理を行ったＰｒｉｎｔＴｉｃｋｅｔに対して、Ｖ４機種共通ドライバ５４４自身で再度整合処理を行う。
【００６６】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図９に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ９０１を用い、記憶装置としてＲＡＭ９０２、ＲＯＭ９０３、ＨＤＤ９０４を用いている。ＨＤＤ９０４として、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、フラッシュ・メモリであるＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等を用いてもよい。プリンタドライバ（Ａ）１０５、プリンタドライバ（Ｂ）１１５、関連付モジュール１２０、受付モジュール１２５、表示制御モジュール１３０、共通ドライバ４８０、専用ドライバ４９０、プリンタプロパティユーザインタフェース５４２、Ｖ４機種共通ドライバ５４４、ドライバ関連付モジュール５４６、印刷設定処理モジュール５４８、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５５０、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ生成要求モジュール５５２、ＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５５４、ＰｒｉｎｔＴｉｃｋｅｔ競合解決要求モジュール５５６、印刷ジョブ生成／出力モジュール５５８、Ｖ３機種毎の専用ドライバ５６２、印刷設定処理モジュール５６４、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ処理モジュール５６６、ＰｒｉｎｔＴｉｃｋｅｔ処理モジュール５６８、アプリケーション／ＯＳ５７０、印刷設定ユーザインタフェース５７２、ＸＰＳスプールファイル５７４等のプログラムを実行するＣＰＵ９０１と、そのプログラムやデータを記憶するＲＡＭ９０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ９０３と、禁則情報１１０、共通禁則情報１３５、ＸＰＳスプールファイル５７４、印刷設定（ＰｒｉｎｔＴｉｃｋｅｔ）５７６、描画データ５７８等を記憶する補助記憶装置であるＨＤＤ９０４と、キーボード、マウス、タッチスクリーン、マイク、カメラ（視線検知カメラ等を含む）等に対する利用者の操作（動作、音声、視線等を含む）に基づいてデータを受け付ける受付装置９０６と、ＣＲＴ、液晶ディスプレイ、スピーカー等の出力装置９０５と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース９０７、そして、それらをつないでデータのやりとりをするためのバス９０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００６７】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図９に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図９に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）や再構成可能な集積回路（ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ：ＦＰＧＡ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続している形態でもよく、さらに図９に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータのほか、携帯情報通信機器（携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む）、情報家電、ロボット、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００６８】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書き換え可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラムの全体又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分若しくは全部であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００６９】
１００…情報処理装置
１０５…プリンタドライバ（Ａ）
１１０…禁則情報
１１５…プリンタドライバ（Ｂ）
１２０…関連付モジュール
１２５…受付モジュール
１３０…表示制御モジュール
１３５…共通禁則情報
１５０…プリンタ
２９０…通信回線
３８０…外部モジュール
３９０…プリンタドライバ
【図１】
2020046910.tif 000003
【図２】
2020046910.tif 000004
【図３】
2020046910.tif 000005
【図４】
2020046910.tif 000006
【図５】
2020046910.tif 000007
【図６】
2020046910.tif 000008
【図７】
2020046910.tif 000009
【図８】
2020046910.tif 000010
【図９】
2020046910.tif 000011