(57)【要約】【課題】  印刷装置の出荷設定や拡張機能の種別、接続状態を含むステータス情報と出力する印刷データの印刷設定情報に基づいて、適切な印刷の実行を制御することができる情報処理装置及びその制御方法、プログラムを提供する。【解決手段】  印刷装置における出荷設定及び拡張機能情報から取得する。設定された印刷設定情報と、取得した出荷設定及び拡張機能情報とを比較する。比較結果に基づいて、出力対象の印刷データを前記印刷装置への出力の実行あるいは中止を制御する。【選択図】  図１
2006011713.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置と接続され、該印刷装置を制御する情報処理装置であって、
前記印刷装置における出荷設定及び拡張機能情報から取得する取得手段と、
設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを用いて、出力対象の印刷データを前記印刷装置への出力の実行あるいは中止を制御する出力制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記印刷装置における印刷設定画面を介して印刷設定を行う設定手段を更に備え、
前記取得手段は、前記印刷設定画面を表示する際に、前記出荷設定及び拡張機能情報を取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記印刷設定画面の表示内容を制御する表示制御手段を更に備え、
前記表示制御手段は、前記取得手段で前記出荷設定及び拡張機能情報を取得できた場合、該出荷設定及び拡張機能情報に基づいて、印刷設定画面の表示内容を制御し、一方、前記取得手段で前記出荷設定及び拡張機能情報を取得できなかった場合、所定の出荷設定及び拡張機能情報に基づいて、印刷設定画面の表示内容を制御する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを比較する比較手段と、
前記設定された印刷設定情報を変更する変更手段とを更に備え、
前記取得手段は、前記出力対象の印刷データを作成する際に、前記出荷設定及び拡張機能情報を取得し、
前記比較手段は、前記出力対象の印刷データを作成する際に、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを比較し、
前記変更手段は、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合しない場合、前記設定された印刷設定情報を変更する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記出力対象の印刷データの前記印刷装置への出力を中止する旨を示す警告情報を表示する表示手段を更に備え、
前記取得手段は、前記出力対象の印刷データを前記印刷装置へ出力する際に、前記出荷設定及び拡張機能情報を取得し、
前記比較手段は、前記出力対象の印刷データを前記印刷装置へ出力する際に、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを比較し、
前記表示手段は、前記出力対象の印刷データを前記印刷装置へ出力する際に、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合しない場合、前記出力対象の印刷データの前記印刷装置への出力を中止する旨を示す警告情報を表示する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記制御手段は、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合しない場合、前記出力対象の印刷データの前記印刷装置への出力を中止し、一方、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合する場合、前記出力対象の印刷データの前記印刷装置への出力を実行する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項７】
前記取得手段は、前記印刷装置から、前記出荷設定及び拡張機能情報を記憶する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項８】
前記印刷装置における出荷設定及び拡張機能情報を記憶する記憶手段を更に備え、
前記取得手段は、前記記憶手段から前記出荷設定及び拡張機能情報を取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項９】
前記取得手段は、少なくとも当該取得手段を実現する制御プログラムが当該情報処理装置に記憶される際に、前記出荷設定及び拡張機能情報を取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項１０】
前記記憶手段は、前記取得手段で前記出荷設定及び拡張機能情報を取得できた場合、該出荷設定及び拡張機能情報を記憶し、一方、前記取得手段で前記出荷設定及び拡張機能情報を取得できなかった場合、所定の出荷設定及び拡張機能情報を記憶する
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１１】
前記取得手段は、前記制御手段による制御の完了後、前記出荷設定及び拡張機能情報を取得し、
前記記憶手段は、前記制御手段による制御の完了後、前記取得手段で取得した前記出荷設定及び拡張機能情報で自身の内容を更新する
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１２】
前記取得手段は、前記制御手段による制御の完了後、前記出荷設定及び拡張機能情報を取得し、
前記制御手段によって前記出力対象の印刷データの前記印刷装置への出力が中止され、前記取得手段で前記出荷設定及び拡張機能情報を取得できず、かつ前記記憶手段に既に前記出荷設定及び拡張機能情報が格納されている場合、該記憶手段は、所定の出荷設定及び拡張機能情報で自身の内容を更新する
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１３】
印刷装置と接続され、該印刷装置を制御する情報処理装置の制御方法であって、
前記印刷装置における出荷設定及び拡張機能情報から取得する取得工程と、
設定された印刷設定情報と、前記取得工程で取得した出荷設定及び拡張機能情報とを用いて、出力対象の印刷データを前記印刷装置への出力の実行あるいは中止を制御する出力制御工程と
を備えることを特徴とする情報処理装置の制御方法。
【請求項１４】
印刷装置と接続され、該印刷装置を制御する情報処理装置の制御を実現するプログラムであって、
前記印刷装置における出荷設定及び拡張機能情報から取得する取得工程のプログラムコードと、
設定された印刷設定情報と、前記取得工程で取得した出荷設定及び拡張機能情報とを用いて、出力対象の印刷データを前記印刷装置への出力の実行あるいは中止を制御する出力制御工程のプログラムコードと
を備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置と接続され、該印刷装置を制御する情報処理装置及びその制御方法、プログラムに関するものである。
【背景技術】
【０００２】
従来、プリンタとプリンタドライバは一対一で開発され、さらに販売市場が複数になるとその販売市場に適した仕様にカスタマイズされた、それぞれのプリンタとプリンタドライバが開発されていた。
【０００３】
しかし，近年では、すべての販売市場で要求される機能を包含したベースプリンタと、そのベースプリンタが持つ全ての機能を使用可能にするプリンタドライバが全販売市場に出荷されるようになってきた。
【０００４】
この方法によれば、最初から各市場向けに複数週類のプリンタを開発するのに比べ、コストが抑制されるというメリットがある。
【０００５】
また、プリンタには機能を拡張するための拡張オプションが接続されることがあるが、プリンタで拡張オプションを使用する場合、プリンタドライバで拡張オプションを使用できる機能が入っていなくてはならない。このため、プリンタドライバは全ての拡張オプションの機能をも包含されて、出荷されるようになってきた。
【０００６】
また、特許文献１によれば、ユーザ毎に、または拡張オプションの接続状況に応じて、デバイスが出力するデバイスＩＤを変更する技術が開示されている。
【特許文献１】特開平１１−３３４１８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記の従来例では次のような問題が発生する。
【０００８】
即ち、従来においては、全ての機能がプリンタドライバに存在するため、使用される地域では、使用できない機能まで存在することになる。
【０００９】
例えば、はがきは全市場で存在するようなメディアではないが、アメリカやヨーロッパ向けの製品にも存在し、ユーザが選択することが可能になってしまう。
【００１０】
また、拡張オプションについても、例えば、特定の地域のみ出荷された拡張オプションがあった場合、その拡張オプションが存在しない地域であっても選択が可能になる。
【００１１】
このように、従来では地域ごとにカスタマイズされていたため選択することができなかった機能が選択可能になり、そのような機能を使用した場合、正常には印刷できないという問題が発生する場合がある。
【００１２】
本発明は上記の課題に鑑みてなされたものであり、印刷装置の出荷設定や拡張機能の種別、接続状態を含むステータス情報と出力する印刷データの印刷設定情報に基づいて、適切な印刷の実行を制御することができる情報処理装置及びその制御方法、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記の目的を達成するための本発明による印刷装置は以下の構成を備える。即ち、
印刷装置と接続され、該印刷装置を制御する情報処理装置であって、
前記印刷装置における出荷設定及び拡張機能情報から取得する取得手段と、
設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを用いて、出力対象の印刷データを前記印刷装置への出力の実行あるいは中止を制御する出力制御手段と
を備える。
【００１４】
また、好ましくは、前記印刷装置における印刷設定画面を介して印刷設定を行う設定手段を更に備え、
前記取得手段は、前記印刷設定画面を表示する際に、前記出荷設定及び拡張機能情報を取得する。
【００１５】
また、好ましくは、前記印刷設定画面の表示内容を制御する表示制御手段を更に備え、
前記表示制御手段は、前記取得手段で前記出荷設定及び拡張機能情報を取得できた場合、該出荷設定及び拡張機能情報に基づいて、印刷設定画面の表示内容を制御し、一方、前記取得手段で前記出荷設定及び拡張機能情報を取得できなかった場合、所定の出荷設定及び拡張機能情報に基づいて、印刷設定画面の表示内容を制御する。
【００１６】
また、好ましくは、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを比較する比較手段と、
前記設定された印刷設定情報を変更する変更手段を更に備え、
前記取得手段は、前記出力対象の印刷データを作成する際に、前記出荷設定及び拡張機能情報を取得し、
前記比較手段は、前記出力対象の印刷データを作成する際に、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを比較し、
前記変更手段は、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合しない場合、前記設定された印刷設定情報を変更する。
【００１７】
また、好ましくは、前記出力対象の印刷データの前記印刷装置への出力を中止する旨を示す警告情報を表示する表示手段を更に備え、
前記取得手段は、前記出力対象の印刷データを前記印刷装置へ出力する際に、前記出荷設定及び拡張機能情報を取得し、
前記比較手段は、前記出力対象の印刷データを前記印刷装置へ出力する際に、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とを比較し、
前記表示手段は、前記出力対象の印刷データを前記印刷装置へ出力する際に、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合しない場合、前記出力対象の印刷データの前記印刷装置への出力を中止する旨を示す警告情報を表示する。
【００１８】
また、好ましくは、前記制御手段は、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合しない場合、前記出力対象の印刷データの前記印刷装置への出力を中止し、一方、前記比較手段の比較の結果、前記設定された印刷設定情報と、前記取得手段で取得した出荷設定及び拡張機能情報とが整合する場合、前記出力対象の印刷データの前記印刷装置への出力を実行する。
【００１９】
また、好ましくは、前記取得手段は、前記印刷装置から、前記出荷設定及び拡張機能情報を記憶する。
【００２０】
また、好ましくは、前記印刷装置における出荷設定及び拡張機能情報を記憶する記憶手段を更に備え、
前記取得手段は、前記記憶手段から前記出荷設定及び拡張機能情報を取得する。
【００２１】
また、好ましくは、前記取得手段は、少なくとも当該取得手段を実現する制御プログラムが当該情報処理装置に記憶される際に、前記出荷設定及び拡張機能情報を取得する。
【００２２】
また、好ましくは、前記記憶手段は、前記取得手段で前記出荷設定及び拡張機能情報を取得できた場合、該出荷設定及び拡張機能情報を記憶し、一方、前記取得手段で前記出荷設定及び拡張機能情報を取得できなかった場合、所定の出荷設定及び拡張機能情報を記憶する。
【００２３】
また、好ましくは、前記取得手段は、前記制御手段による制御の完了後、前記出荷設定及び拡張機能情報を取得し、
前記記憶手段は、前記制御手段による制御の完了後、前記取得手段で取得した前記出荷設定及び拡張機能情報で自身の内容を更新する
また、好ましくは、前記取得手段は、前記制御手段による制御の完了後、前記出荷設定及び拡張機能情報を取得し、
前記制御手段によって前記出力対象の印刷データの前記印刷装置への出力が中止され、前記取得手段で前記出荷設定及び拡張機能情報を取得できず、かつ前記記憶手段に既に前記出荷設定及び拡張機能情報が格納されている場合、該記憶手段は、所定の出荷設定及び拡張機能情報で自身の内容を更新する。
【００２４】
上記の目的を達成するための本発明による情報処理装置の制御方法は以下の構成を備える。即ち、
印刷装置と接続され、該印刷装置を制御する情報処理装置の制御方法であって、
前記印刷装置における出荷設定及び拡張機能情報から取得する取得工程と、
設定された印刷設定情報と、前記取得工程で取得した出荷設定及び拡張機能情報とを用いて、出力対象の印刷データを前記印刷装置への出力の実行あるいは中止を制御する出力制御工程と
を備える。
【００２５】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
印刷装置と接続され、該印刷装置を制御する情報処理装置の制御を実現するプログラムであって、
前記印刷装置における出荷設定及び拡張機能情報から取得する取得工程のプログラムコードと、
設定された印刷設定情報と、前記取得工程で取得した出荷設定及び拡張機能情報とを用いて、出力対象の印刷データを前記印刷装置への出力の実行あるいは中止を制御する出力制御工程のプログラムコードと
を備える。
【発明の効果】
【００２６】
本発明によれば、印刷装置の出荷設定や拡張機能の種別、接続状態を含むステータス情報と出力する印刷データの印刷設定情報に基づいて、適切な印刷の実行を制御することができる情報処理装置及びその制御方法、プログラムを提供できる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【００２８】
＜実施形態１＞
図１は本発明の実施形態１の印刷システムの構成を示す図である。
【００２９】
図１の印刷システムは、ホストコンピュータ１とプリンタ２（印刷装置）とが相互に接続されて構成される。
【００３０】
ホストコンピュータ１は、入力インタフェース１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、外部記憶装置１５、出力インタフェース１６、表示部１７、キーボード１０、マウス１８、入出力インタフェース１９を有する。
【００３１】
ＲＯＭ１３には、初期化プログラム等の各種制御プログラムが記憶されている。ＲＡＭ１４は、図柄情報記憶部１４ａと印刷データ記憶部１４ｂとプログラムロード領域１４ｃ等の各種記憶領域を有し、外部記憶装置１５に記憶される各種制御プログラムに従って各部を制御するものである。
【００３２】
外部記憶装置１５には、図２に示すように、アプリケーションプログラム群３０とオペレーションシステム（以降、ＯＳ）４０、プリンタドライバ５０、各種データが保存されているデータ領域６０等の各種記憶領域が構成されている。
【００３３】
また、表示部１７は、例えば、ＣＲＴやＬＣＤで構成され、ＯＳ４０やプリンタドライバ５０によって提供されるＵＩ（ユーザインタフェース）を含む各種ＵＩを表示する。
【００３４】
また、入出力インタフェース１９は、例えば、シリアルインタフェースであるＵＳＢを想定しているが、この他に、ＩＥＥＥ１３９４、Ｅｔｈｅｒｎｅｔ（登録商標）、ＩｒＤＡ、ＩＥＥＥ８０２．１１、電力線等のシリアルインタフェースを想定することができる。また、シリアルインタフェースに限らず、パラレルインタフェースとして、セントロニクス、ＳＣＳＩ等の各種インタフェースを想定することができる。いずれにしても、ホストコンピュータ１とプリンタ２間で双方向の通信を実現するものであれば、有線／無線を問わずどのような通信インタフェースであっても構わない。
【００３５】
プリンタ２は、インタフェース部２１とＲＡＭ２２、ＲＯＭ２３、ＣＰＵ２４、プリンタエンジン２５を有する。インタフェース部２１は、コンピュータ１の入出力インタフェース１９に接続してある。また、この入出力インタフェース１９に、プリンタ２の機能を拡張するための拡張機能（あるいは拡張装置）が接続される。
【００３６】
尚、この拡張機能には、例えば、両面印刷ユニットや、プリンタサーバ装置や、ペーパフィードカセット、プリントコントローラ等の物理的な拡張装置に加えて、両面印刷機能、ダイレクトプリント機能、フチなしイン機能、ＤＶＤ／ＣＤダイレクト印刷機能等の各種印刷機能が含まれる。
【００３７】
ＲＯＭ２３は、制御プログラムが記憶されており、ＣＰＵ２４はＲＯＭ２３に記憶されている制御プログラムに従ってプリンタ２の各部を制御する。ＲＡＭ２２は、ＣＰＵ２４の主メモリとワークメモリとして用いられ、受信したデータを一旦保存するための受信バッファを有する。プリンタエンジン２５は、ＲＡＭ２２に保存されたデータに基づき印刷を行う。
【００３８】
尚、プリンタ２の印刷方式としては、インクジェット方式、レーザビーム方式、熱転写方式等の各種印刷方式を想定することができる。
【００３９】
また、プリンタ２は、出荷される市場向け（出荷設定）に自身が持つ機能を切り替える切替機能と、ホストコンピュータ１の要求により出荷設定情報をホストコンピュータ１に通知する通知機能と、自身の機能を拡張する拡張機能を持つ場合、その拡張機能を識別する識別機能と、ホストコンピュータ１の要求により識別した拡張機能情報をコンピュータ１に通知する通知機能を有する。これらの各種機能は、ＣＰＵ２４が実行する制御プログラム及びプリンタ２に搭載されるセンサ等の各種ハードウェアによって実現される。
【００４０】
次に、外部記憶装置１５の構成について、図２を用いて説明する。
【００４１】
図２は本発明の実施形態１の外部記憶装置の構成を示す図である。
【００４２】
上述したように、外部記憶装置１５には、アプリケーションプログラム群３０、ＯＳ４０、プリンタドライバ５０が構成されている。この内、アプリケーションプログラム群３０には、各種のアプリケーションがあり、これには、例えば、ユーザに作画環境と印刷開始を命令するためのプログラムである印刷アプリケーションプログラム３１がある。
【００４３】
ＯＳ４０には、ＯＳが用意する様々なサービスプログラムがあるが、印刷環境を提供するプリントサービスプログラム４１や物理的なＩ／Ｏポートを管理し、入出力インタフェース１９を通じてデータ書込／読込を実際に行う、インタフェース制御プログラム４２がある。
【００４４】
プリンタドライバ５０には、ＵＩ表示プログラム５１、印刷データ生成プログラム５２、データ送受信制御プログラム５３等の各種プログラムがある。ＵＩ表示プログラム５１は、印刷方法やメディア（記録媒体）等の印刷設定をユーザに通知し、ユーザによる印刷設定変更機能を提供するプログラムである。また、ＵＩ表示プログラム５１は、ユーザによって設定された印刷設定を印刷アプリケーションプログラム３１に通知する。
【００４５】
印刷データ生成プログラム５２は、印刷アプリケーションプログラム３１から印刷が実行された場合、プリントサービスプログラム４１によって起動され、ＵＩ表示プログラム５１から通知された印刷設定に基づき印刷アプリケーションプログラム３１が作画した図柄情報をプリンタコマンド（印刷データ）に変換する。
【００４６】
データ送受信制御プログラム５３は、インタフェース制御プログラム４２を介してプリンタ２と双方向通信を行うプログラムで、印刷データ生成プログラム５２によって作成された印刷データをプリントサービスプログラム４１から受け取り、インタフェース制御プログラム４２を介してプリンタ２に送信する。さらに、インタフェース制御プログラム４２を介してプリンタ２の出荷設定及び拡張機能情報を含むステータス情報を取得する。
【００４７】
尚、この出荷設定及び拡張機能情報は、プリンタ２の出荷先（仕向け）を示す出荷設定と、プリンタ２における拡張機能の種別・接続の有無を示す情報から構成される。
【００４８】
データ領域６０には、各種アプリケーションやＯＳ等で使用するファイル等のデータがあり、プリンタドライバ５０が使用するプリンタドライバデータ６１がある。
【００４９】
ここでは、例として、ホストコンピュータ１の処理分担を上記のように示したが、特にこの分担形態に限らず他の形態であってもよい。
【００５０】
次に、実施形態１のＵＩ表示プログラム５１の動作について、図３を用いて説明する。
【００５１】
図３は本発明の実施形態１のＵＩ表示プログラムの動作を示すフローチャートである。
【００５２】
印刷アプリケーションプログラム３１によって起動されたＵＩ表示プログラム５１は、まず、データ送受信制御プログラム５３、またはインタフェース制御プログラム４２を介してプリンタ２から、出荷設定及び拡張機能情報を含むステータス情報を取得する（ステップＳ１０１）。
【００５３】
ここで、データ送受信制御プログラム５３を介してステータス情報を取得する場合、データ送受信制御プログラム５３は、インタフェース制御プログラム４２を介してステータス情報を取得する。
【００５４】
次に、ステータス情報の取得の成功の是非を判定する（ステップＳ１０２）。ステータス情報の取得が成功した場合（ステップＳ１０２でＹＥＳ）、ステップＳ１０４に進む。一方、ステータス情報の取得が失敗した場合（ステップＳ１０２でＮＯ）、プリンタ２の出荷設定及び拡張機能情報を、あらかじめ設定しておいた所定のデフォルト情報（デフォルトの出荷設定及び拡張機能情報）に設定する（ステップＳ１０３）。
【００５５】
その後、ステップＳ１０４で取得したステータス情報中の出荷設定及び拡張機能情報、あるいはステップＳ１０３で設定した所定のデフォルト情報に応じて、印刷設定可能な項目からなる印刷設定テーブルを作成する（ステップＳ１０４）。
【００５６】
例えば、出荷設定情報に、プリンタ２が日本仕向け設定であれば、メディア種の項目にハガキを追加したり、メディアサイズにハガキサイズを追加したりする。また、拡張機能情報に、「両面印刷を自動的に行う自動両面印刷ユニットが接続状態にある」という情報があれば、印刷方法に「自動両面」を追加する。
【００５７】
次に、作成した印刷設定テーブルに基づいて、印刷設定ダイアログ１０００（印刷設定画面）を表示する（ステップＳ１０５）。つまり、ＵＩ表示プログラム５１は、印刷設定テーブルに基づいて、印刷設定ダイアログの表示内容を制御する。
【００５８】
この印刷設定ダイアログ１０００は、ユーザに印刷設定の変更機能を提供するユーザインタフェースであり、ユーザは、ステップＳ１０４で作成した印刷設定項目の範囲で、印刷設定ダイアログ２０００に示すように変更することが可能である（ステップＳ１０６）。
【００５９】
ＵＩ表示プログラム５１は、ユーザが、印刷設定ダイアログ１０００上の確定ボタンを押下するまで設定可能な状態のまま待機し、ユーザがいずれかの確定ボタンあるいは中止ボタンを押下した場合に、印刷設定ダイアログを閉じる（ステップＳ１０７及びステップＳ１０８）。
【００６０】
押下されたボタンが、確定ボタンである場合、印刷設定ダイアログ１０００において設定されている印刷設定情報を印刷アプリケーションプログラム３１に通知する（ステップＳ１１０）。一方、中止ボタンが押下された場合、そのまま処理を終了する。
【００６１】
次に、印刷データ生成プログラム５２の動作について図４を用いて説明する。
【００６２】
図４は本発明の実施形態１の印刷データ生成プログラムの動作を示すフローチャートである。
【００６３】
印刷アプリケーションプログラム３１が、プリントサービスプログラム４１に印刷開始を命令すると、プリントサービスプログラム４１が印刷アプリケーションプログラム３１で作成した図柄情報と、ＵＩ表示プログラム５１で設定された印刷設定情報を印刷データ生成プログラム５２に渡す。
【００６４】
印刷データ生成プログラム５２は、まず、データ送受信制御プログラム５３、またはインタフェース制御プログラム４２を介してプリンタ２から、出荷設定及び拡張機能情報を含むステータス情報を取得する（ステップＳ２０１）。
【００６５】
次に、ステータス情報の取得の成功の是非を判定する（ステップＳ２０２）。ステータス情報の取得が失敗した場合（ステップＳ２０２でＮＯ）、ステップＳ２０５に進む。一方、ステータス情報の取得が成功した場合（ステップＳ２０２でＹＥＳ）、取得したステータス情報から得られる印刷設定情報（出荷設定及び拡張機能情報）と、プリントサービスプログラム４１から渡された印刷設定情報とを比較し、両者の印刷設定が有効な組み合わせであるか否かを判定する（ステップＳ２０３）。
【００６６】
印刷設定が有効な組み合わせである場合（ステップＳ２０３でＹＥＳ）、ステップＳ２０５に進む。一方、印刷設定が有効な組み合わせでない場合（ステップＳ２０３でＮＯ）、プリントサービスプログラム４１から渡された印刷設定情報を、ステップＳ２０１で取得したステータス情報で有効な任意の印刷設定情報に変更する（ステップＳ２０４）。
【００６７】
この処理は、ＵＩ表示プログラム５１で印刷設定した段階と印刷が開始されるまでにタイムラグが存在するために、そのタイムラグの間にプリンタ２が異なる機種に変更されたり、拡張機能が変更されたりした場合、ＵＩ表示プログラム５１で設定された印刷設定が既に無効になって正常に印刷ができなくなることを防ぐためである。
【００６８】
その後、プリントサービスプログラム４１から渡された印刷設定情報、もしくはステップＳ２０４で変更した印刷設定情報に従い、図柄情報を変換してプリンタコマンド（印刷データ）を作成し（ステップＳ２０５）、その作成了後、プリントサービスプログラム４１に印刷データの作成完了を通知して（ステップＳ２０６）、処理を終了する。
【００６９】
次に、データ送受信制御プログラム５３の動作について、図５を用いて説明する。
【００７０】
図５は本発明の実施形態１のデータ送受信制御プログラムの動作を示すフローチャートである。
【００７１】
プリントサービスプログラム４１は、印刷データ生成プログラム５２が生成した印刷データをデータ送受信制御プログラム５３に渡す。その後、データ送受信制御プログラム５３は、まず、インタフェース制御プログラム４２を介してプリンタ２から出荷設定及び拡張機能情報を含むステータス情報を取得する（ステップＳ３０１）。
【００７２】
次に、ステータス情報の取得の成功の是非を判定する（ステップＳ３０２）。ステータス情報の取得が失敗した場合（ステップＳ３０２でＮＯ）、ステップＳ３０６に進む。一方、ステータス情報の取得が成功した場合（ステップＳ３０２でＹＥＳ）、プリントサービスプログラム４１から渡された印刷データを解析し、その印刷データの印刷設定情報と取得したステータス情報から得られる印刷設定情報（出荷設定及び拡張機能情報）とを比較し、印刷データの印刷設定が有効な組み合わせであるか否かを判定する（ステップＳ３０３）。
【００７３】
印刷設定が有効な組み合わせである場合（ステップＳ３０３でＹＥＳ）、ステップＳ３０６に進む。一方、印刷設定が有効な組み合わせでない場合（ステップＳ３０３でＮＯ）、印刷データの印刷設定とステータス情報から得られる印刷設定が整合していないことを示す警告画面を表示する（ステップＳ３０４）。さらに、プリントサービスプログラム４１に印刷データの転送失敗を通知して（ステップＳ３０５）、処理を終了する。この際、転送失敗の通知を示す通知画面を表示しても良い。
【００７４】
この処理は、印刷データ生成プログラム５２で生成された段階とデータ送受信制御プログラム５３に印刷データが渡されるまでにタイムラグが存在するために、そのタイムラグの間にプリンタ２が変更されたり、拡張オプションが変更されたりした場合、生成された印刷データの印刷設定が既に無効になって正常に印刷ができなくなることを防ぐためである。
【００７５】
一方、ステップＳ３０２でステータス情報の取得が失敗した場合や、ステップＳ３０３で印刷設定が有効な組み合わせである場合は、印刷データをインタフェース制御プログラム４２を介してプリンタ２に転送する（ステップＳ３０６）。
【００７６】
次に、全印刷データの転送が完了したか否かを判定する（ステップＳ３０７）。転送が完了していない場合（ステップＳ３０７でＮＯ）、ステップＳ３０６に戻る。一方、転送が完了した場合（ステップＳ３０６でＹＥＳ）、プリントサービスプログラム４１に印刷データの転送完了を通知して（ステップＳ３０８）、処理を終了する。
【００７７】
以上説明したように、実施形態１によれば、ホストコンピュータ１において、プリンタ２の出荷設定や拡張機能情報と、ホストコンピュータ１上で設定された印刷設定との整合性を判定して、その判定結果に基づいて、印刷データの出力を制御することで、適切な印刷操作を実行することができる。
【００７８】
また、プリンタ２の出荷設定や拡張機能情報と、ホストコンピュータ１上で設定された印刷設定との整合がとれない場合には、その旨をユーザに通知することができるので、無駄な印刷操作を防止したり、無効な印刷操作が発生していることを注意喚起することができる。
【００７９】
＜実施形態２＞
実施形態１では、ＵＩ表示プログラム５１や印刷データ生成プログラム５２は、それぞれが動作するタイミングでデータ送受信制御プログラム５３やインタフェース制御プログラム４２を介してプリンタ２のステータス情報を取得できることが前提になっている。しかし、データ送受信制御プログラム５３やインタフェース制御プログラム４３は、デバイスに近い部分で動作するため、通常、ＯＳが簡単にはアクセスできないように制限がかけられている場合が多く、ステータス情報を取得できない場合がある。
【００８０】
そのため、たとえ、ＵＩ表示プログラム５１や印刷データ生成プログラム５２がデータ送受信制御プログラム５３やインタフェース制御プログラム４２へアクセスが行えたとしても、プリンタ２の電源がＯＦＦ状態や接続がなされていなかった場合には、ステータス情報を取得することができない。
【００８１】
このため、実施形態１の構成では、ＵＩ表示プログラム５１や印刷データ生成プログラム５２がプリンタ２のステータス情報を取得できず、正しい印刷設定や印刷データが生成されない可能性がある。
【００８２】
そこで、実施形態２では、上述したＵＩ表示プログラム５１や印刷データ生成プログラム５２が動作するタイミングで、プリンタ２のステータス情報が取得できずに正常に印刷できない問題を回避する構成について説明する。
【００８３】
ここで、通常、プリンタドライバ５０のインストール時は、ホストコンピュータ１とプリンタ２を接続して行う場合が多いので、インストール時はホストコンピュータ１とプリンタ２が接続されている可能性が高い。
【００８４】
また、プリンタドライバ５０がホストコンピュータ１にインストールされる過程において、プリンタドライバ５０は、プリンタドライバ５０自身、あるいはＯＳ４０上の論理的なプリンタを初期化するようにＯＳ４０から命令を受け取る。例えば、ＭｉｃｒｏｓｏｆｔＷｉｎｄｏｗｓ（登録商標）に代表されるＷｉｎｄｏｗｓ（登録商標）システムにおいて、プリンタドライバ５０をインストールすると、インストール完了時にＵＩ表示プログラム５１に初期化命令がＯＳ４０からコールされる。
【００８５】
これらのことから、プリンタ２のステータス情報を取得することができる可能性が高い、プリンタドライバ５０をインストールするタイミングにおいて、プリンタ２のステータス情報を取得し、それをホストコンピュータ１上に格納することによって、上記のステータス情報が取得できずに正常に印刷できない場合における問題を解決する。
【００８６】
ここで、実施形態２のＵＩ表示プログラム５１の動作について、図６を用いて説明する。尚、この動作は、プリンタドライバ５０のインストール時にＯＳ４０から初期化命令を受けた時の動作となる。
【００８７】
図６は本発明の実施形態２のプリンタドライバのインストール時のＵＩ表示プログラムの動作を示すフローチャートである。
【００８８】
インストール時に、ＯＳ４０から呼び出されたＵＩ表示プログラム５１は、まず、本来の処理であるプリンタ２及びプリンタドライバ５０の初期化作業を行う（ステップＳ４０１）。その後、データ送受信制御プログラム５３、またはインタフェース制御プログラム４２を介してプリンタ２から仕向け設定や拡張オプションの種別・接続の有無を含むステータス情報を取得する（ステップＳ４０２）。
【００８９】
尚、ステップＳ４０２において、データ送受信制御プログラム５３を介してステータス情報を取得する場合、データ送受信制御プログラム５３は、インタフェース制御プログラム４２を介してステータス情報を取得する。
【００９０】
次に、ステータス情報の取得の成功の是非を判定する（ステップＳ４０３）。ステータス情報の取得が失敗した場合（ステップＳ４０３でＮＯ）、ステップＳ４０４へ進み、プリンタ２の出荷設定及び拡張機能情報を、あらかじめ設定しておいた所定のデフォルト情報（デフォルトの出荷設定及び拡張機能情報）に設定する（ステップＳ４０４）。一方、ステータス情報の取得が成功した場合（ステップＳ４０４でＹＥＳ）、ステップＳ４０５に進む。
【００９１】
その後、ステップＳ４０２で取得したステータス情報から得られる印刷設定情報、あるいはステップＳ４０４で設定した所定のデフォルト情報を、ホストコンピュータ１の外部記憶装置１５上のプリンタドライバデータ６１として格納し（ステップＳ４０５）、処理を終了する。
【００９２】
次に、外部記憶装置１５上のプリンタドライバデータ６１を参照することによって表示を制御するＵＩ表示プログラム５１の動作について、図７を用いて説明する。
【００９３】
図７は本発明の実施形態２のＵＩ表示プログラムの動作を示すフローチャートである。
【００９４】
尚、図７において、実施形態１の図３と同一のステップには、同一のステップ番号を付加して、その説明を省略する。
【００９５】
図７に示すように、実施形態１の図３との相違点は、図３のステップＳ１０１〜ステップＳ１０４の代りに、ステップＳ５０１及びステップＳ５０２を実行する点にある。
【００９６】
つまり、図７では、まず、プリンタドライバデータ６１を参照して、プリンタ２の出荷設定や拡張機能情報を取得する（ステップＳ５０１）。次に、取得した出荷設定や拡張機能情報に応じて、印刷設定可能な項目からなる印刷設定テーブルを作成する（ステップＳ５０２）。そして、以降は、作成した印刷設定テーブルに応じて、ステップＳ１０５以降の処理を実行する。
【００９７】
次に、印刷アプリケーションプログラム３１からプリントサービスプログラム４１に印刷開始命令後の印刷データ生成プログラム５２の動作について、図８を用いて説明する。
【００９８】
図８は本発明の実施形態２の印刷データ生成プログラムの動作を示すフローチャートである。
【００９９】
尚、図８において、実施形態１の図４と同一のステップには、同一のステップ番号を付加して、その説明を省略する。
【０１００】
図８に示すように、実施形態１の図４との相違点は、図４のステップＳ２０１及びステップＳ２０２の代りに、ステップＳ６０１を実行する点にある。
【０１０１】
つまり、図８では、まず、プリンタドライバデータ６１を参照して、プリンタ２から出荷設定及び拡張機能情報を取得する（ステップＳ６０１）。そして、以降は、取得した出荷設定及び拡張機能情報に応じて、ステップＳ２０３以降の処理を実行する。
【０１０２】
次に、生成された印刷データがプリントサービスプログラム４１から渡された場合のデータ送受信制御プログラム５３の動作について、図９を用いて説明する。
【０１０３】
図９は本発明の実施形態２のデータ送受信制御プログラムの動作を示すフローチャートである。
【０１０４】
尚、図９において、実施形態１の図５と同一のステップには、同一のステップ番号を付加して、その説明を省略する。
【０１０５】
図９に示すように、実施形態１の図５との相違点は、図４のステップＳ３０１及びステップＳ３０２の代りに、ステップＳ７０１を実行する点にある。
【０１０６】
つまり、図９では、まず、プリンタドライバデータ６１を参照して、プリンタ２から出荷設定及び拡張機能情報を取得する（ステップＳ７０１）。そして、以降は、取得した出荷設定及び機能拡張情報に応じて、ステップＳ３０３以降の処理を実行する。
【０１０７】
尚、データ送受信制御プログラム５３は、プリンタ２と双方向通信を提供するプログラムであるので、必要に応じて、実施形態１の図５と同様に、プリンタ２からステータス情報情報を取得して、そのステータス情報から得られる印刷設定情報と、印刷データの印刷設定情報を比較し、その比較結果に基づいて、印刷データの転送を制御したり、警告表示を実行するようにしても良い。
【０１０８】
以上説明したように、実施形態２によれば、実施形態１で説明した効果に加えて、プリンタドライバ５０をインストール時等のプリンタ２のステータス情報を取得することができる可能性が高タイミングにおいて、プリンタ２のステータス情報を印刷データの生成に先立って取得しておくことで、そのステータス情報から印刷設定と、実際の印刷データの印刷設定との整合性を判定することができる。
【０１０９】
これにより、印刷データの生成時に、プリンタ２のステータス情報が取得できない場合でも、最低限の印刷設定の整合性を判定することができる。
【０１１０】
＜実施形態３＞
実施形態２では、プリンタドライバ５０がインストールされる時にホストコンピュータ１上の外部記憶装置１５にプリンタ２の出荷設定及び拡張機能情報を格納していた。この構成によって、ＵＩ表示プログラム５１や印刷データ生成プログラム５２が動作するタイミングでプリンタ２からステータス情報を取得できなくても、プリンタ２に適した印刷データの作成が可能になる。
【０１１１】
しかし、実施形態２の構成では、あまり変更されることのない出荷設定に関わる印刷設定に関しては問題が少ないが、拡張機能のように頻繁に変更される可能性が高いものは、常に、プリンタ２の最新のステータス情報を取得して、印刷データの印刷設定との整合性を判定できることがより望ましい。
【０１１２】
そこで、実施形態３では、ＵＩ表示プログラム５１や印刷データ生成プログラム５２が動作するタイミングで、プリンタの出荷設定及び拡張機能情報が取得できない状態で、かつ最新のステータス情報を取得する構成について説明する。
【０１１３】
尚、ＵＩ表示プログラム５１、印刷データ生成プログラム５２の動作については、実施形態２の図６、図７、図８と同様であるため、ここでは省略する。
【０１１４】
次に、印刷データがプリントサービスプログラム４１から渡された場合のデータ送受信制御プログラム５３の動作について、図１０を用いて説明する。
【０１１５】
図１０は本発明の実施形態３のデータ送受信制御プログラムの動作を示すフローチャートである。
【０１１６】
データ送受信制御プログラム５３は、まず、プリンタドライバデータ６１よりプリンタ２の出荷設定及び拡張機能情報を取得する（ステップＳ７０１）。次に、プリントサービスプログラム４１から渡された印刷データを解析し、ステップＳ７０１で取得したプリンタ２のステータス情報から得られる印刷設定情報（出荷設定及び拡張機能情報）と、印刷データの印刷設定情報とを比較し、両者の印刷設定が有効な組み合わせであるか否かを判定する（ステップＳ７０２）。
【０１１７】
印刷設定が有効な組み合わせである場合（ステップＳ７０２でＹＥＳ）、印刷データをインタフェース制御プログラム４２を介してプリンタ２に転送する（ステップＳ７０３）。
【０１１８】
次に、全印刷データの転送が完了したか否かを判定する（ステップＳ７０４）。転送が完了していない場合（ステップＳ７０４でＮＯ）、ステップＳ７０３に戻る。一方、転送が完了した場合（ステップＳ７０４でＹＥＳ）、インタフェース制御プログラム４２を介してプリンタ２から出荷設定及び拡張機能情報を含むステータス情報を取得する（ステップＳ７０５）。
【０１１９】
次に、ステータス情報の取得の成功の是非を判定する（ステップＳ７０６）。ステータス情報の取得が失敗した場合（ステップＳ７０６でＮＯ）、そのまま、プリントサービスプログラム４１に印刷データの転送完了を通知して（ステップＳ７０８）、処理を終了する。一方、ステータス情報の取得が成功した場合（ステップＳ７０６でＹＥＳ）、取得したステータス情報をプリンタドライバデータ６１として更新する（ステップＳ７０７）。その後、プリントサービスプログラム４１に印刷データの転送完了を通知して（ステップＳ７０８）、処理を終了する。
【０１２０】
一方、ステップＳ７０２で、印刷設定が有効な組み合わせでない場合（ステップＳ７０２でＮＯ）、ユーザに警告を表示する（ステップＳ７０９）。その後、インタフェース制御プログラム４２を介してプリンタ２から出荷設定及び拡張機能情報を含むステータス情報を取得する（ステップＳ７１０）。
【０１２１】
次に、ステータス情報の取得の成功の是非を判定する（ステップＳ７１１）。ステータス情報の取得が成功した場合（ステップＳ７１１でＹＥＳ）、取得したステータス情報をプリンタドライバデータ６１として更新する（ステップＳ７１２）。その後、プリントサービスプログラム４１に印刷データの転送失敗を通知して（ステップＳ７１５）、処理を終了する。
【０１２２】
一方、ステータス情報の取得が失敗した場合（ステップＳ７１１でＮＯ）、プリンタドライバデータ６１に、既に出荷設定及び拡張機能情報が格納されているか否かを判定する（ステップＳ７１３）。格納されていない場合（ステップ７１３でＮＯ）、プリンタドライバデータ６１を、あらかじめ設定しておいた所定のデフォルト情報（デフォルトの出荷設定及び拡張機能情報）で更新する（ステップＳ７１４）。その後、プリントサービスプログラム４１に印刷データの転送失敗を通知して（ステップＳ７１５）、処理を終了する。
【０１２３】
一方、ステップＳ７１３において、既に出荷設定及び拡張機能情報が格納されている場合（ステップＳ７１３でＹＥＳ）、そのまま、プリントサービスプログラム４１に印刷データの転送失敗を通知して（ステプＳ７１５）、処理を終了する。
【０１２４】
以上説明したように、実施形態３によれば、実施形態２で説明した効果に加えて、プリンタ２の最新のステータス情報を取得できる場合は、そのステータス情報をプリンタドライバデータ６１として更新することで、次回以降の印刷操作において、プリンタ２の最新のステータス情報を参照して、印刷データの転送を制御したり、警告表示を実行することができる。
【０１２５】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１２６】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１２７】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１２８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０１２９】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０１３０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１３１】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１３２】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０１３３】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１３４】
【図１】本発明の実施形態１の印刷システムの構成を示す図である。
【図２】本発明の実施形態１の外部記憶装置の構成を示す図である。
【図３】本発明の実施形態１のＵＩ表示プログラムの動作を示すフローチャートである。
【図４】本発明の実施形態１の印刷データ生成プログラムの動作を示すフローチャートである。
【図５】本発明の実施形態１のデータ送受信制御プログラムの動作を示すフローチャートである。
【図６】本発明の実施形態２のプリンタドライバのインストール時のＵＩ表示プログラムの動作を示すフローチャートである。
【図７】本発明の実施形態２のＵＩ表示プログラムの動作を示すフローチャートである。
【図８】本発明の実施形態２の印刷データ生成プログラムの動作を示すフローチャートである。
【図９】本発明の実施形態２のデータ送受信制御プログラムの動作を示すフローチャートである。
【図１０】本発明の実施形態３のデータ送受信制御プログラムの動作を示すフローチャートである。
【符号の説明】
【０１３５】
１  コンピュータ
１０  キーボード
１１  入力インタフェース
１２  ＣＰＵ
１３  ＲＯＭ
１４  ＲＡＭ
１４ａ  図柄情報記憶部
１４ｂ  印刷データ記憶部
１４ｃ  プログラムロード領域
１５  外部記憶装置
１６  出力インタフェース
１７  表示部
１８  マウス
１９  入出力インタフェース
２  プリンタ
２１  インタフェース部
２２  ＲＡＭ
２３  ＲＯＭ
２４  ＣＰＵ
２５  プリンタエンジン
３０  アプリケーションプログラム群
３１  印刷アプリケーションプログラム
４０  オペレーションシステム
４１  プリントサービスプログラム
４２  インタフェース制御プログラム
５０  プリンタドライバ
５１  ＵＩ表示プログラム
５２  印刷データ生成プログラム
５３  データ送受信制御プログラム
【図１】
2006011713.tif 000003
【図２】
2006011713.tif 000004
【図３】
2006011713.tif 000005
【図４】
2006011713.tif 000006
【図５】
2006011713.tif 000007
【図６】
2006011713.tif 000008
【図７】
2006011713.tif 000009
【図８】
2006011713.tif 000010
【図９】
2006011713.tif 000011
【図１０】
2006011713.tif 000012