(57)【特許請求の範囲】
【請求項１】
複数のプリンタと通信可能に接続され、受信した該プリンタへの印刷データの出力を制御する印刷制御装置において、
第１のプリンタ宛ての印刷データを第２のプリンタへ出力させるよう設定された印刷制御設定情報が記憶された設定情報記憶手段と、
前記設定情報に記憶された第１のプリンタに対応した第１の仮想プリンタを一時停止状態にする状態設定手段と、
前記印刷制御装置のスプール領域に対する印刷データとしてのスプールファイルの出力を検出する検出手段と、
前記検出手段により検出したスプールファイルが前記状態設定手段により一時停止状態にされた第１の仮想プリンタのスプールファイルであった場合、当該印刷データの出力先を前記第２のプリンタへ変更するデータ操作手段を有することを特徴とする印刷制御装置。
【請求項２】
前記スプールファイルに出力先として前記第１のプリンタが設定されていた場合、該スプールファイルに含まれるフォームＩＤに対応したフォームデータがオーバレイされた印刷データを作成するオーバレイ手段と、
前記オーバレイ手段により作成された印刷データを前記印刷設定情報に記憶された第２のプリンタへ出力する出力制御手段と、
を有することを特徴とする請求項１記載の印刷制御装置。
【請求項３】
前記検出手段は、前記印刷設定情報に定義されているポーリング間隔で検出しており、
前記スプールファイルを前記スプール領域より取得する取得手段と、
前記取得手段がスプールファイルの取得に失敗した場合に、該定義されているポーリング間隔を短く設定し、一方該取得に失敗したスプールファイルの取得が成功した場合に、該ポーリング間隔を印刷設定情報に定義されている間隔に戻すポーリング制御手段と、
を有することを特徴とする請求項１または２記載の印刷制御装置。
【請求項４】
前記第１の仮想プリンタの状態を確認する状態確認手段と、
前記状態確認手段により前記第１の仮想プリンタの状態が一時停止状態でなかった場合に一時停止状態に変更する状態変更手段を更に有することを特徴とする請求項１乃至３のいずれか１項に記載の印刷制御装置。
【請求項５】
複数のプリンタと通信可能に接続され、受信した該プリンタへの印刷データの出力を制御し、第１のプリンタ宛ての印刷データを第２のプリンタへ出力させるよう設定された印刷制御設定情報が記憶された設定情報記憶手段を有する印刷制御装置の制御方法において、
前記設定情報に記憶された第１のプリンタに対応した第１の仮想プリンタを一時停止状態にする状態設定工程と、
前記印刷制御装置のスプール領域に対する印刷データとしてのスプールファイルの出力を検出する検出工程と、
前記検出工程により検出したスプールファイルが前記状態設定工程により一時停止状態にされた第１の仮想プリンタのスプールファイルであった場合、当該印刷データの出力先を前記第２のプリンタへ変更するデータ操作工程を有することを特徴とする印刷制御装置の制御方法。
【請求項６】
複数のプリンタと通信可能に接続され、受信した該プリンタへの印刷データの出力を制御し、第１のプリンタ宛ての印刷データを第２のプリンタへ出力させるよう設定された印刷制御設定情報が記憶された設定情報記憶手段を有する印刷制御装置を、
前記設定情報に記憶された第１のプリンタに対応した第１の仮想プリンタを一時停止状態にする状態設定手段と、
前記印刷制御装置のスプール領域に対する印刷データとしてのスプールファイルの出力を検出する検出手段と、
前記検出手段により検出したスプールファイルが前記状態設定手段により一時停止状態にされた第１の仮想プリンタのスプールファイルであった場合、当該印刷データの出力先を前記第２のプリンタへ変更するデータ操作手段を有することを特徴とする印刷制御装置として機能させるためのプログラム。
【請求項７】
請求項６に記載のプログラムを格納することを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータから受信した印刷データの出力先を変更して再印刷する印刷制御装置および印刷制御方法および印刷制御プログラムおよびコンピュータが読み取り可能なプログラムを格納した記憶媒体に関する。
【背景技術】
【０００２】
ホストコンピュータからデータを印刷する際、ホストコンピュータで作成されたデータは、クライアントコンピュータに仮想プリンタとして存在するプリンタドライバを介してＰＤＬデータ（印刷データ）に変換されプリンタに出力されている。その印刷先のプリンタはホストコンピュータ側のアプリケーションプログラムで設定されている場合が多くあり、クライアントコンピュータで出力先のプリンタを変更することはできなかった。
【０００３】
特開平９−３０５３３２には、出力先のプリンタが故障している際に代替のプリンタを検索し、出力先を変更するシステムが開示されている。
【特許文献１】特開平９−３０５３３２
【発明の開示】
【発明が解決しようとする課題】
【０００４】
一般にホストコンピュータ側のアプリケーションは該当するシステム専用に作りこまれている場合が多く、変更することは大変であった。
特許文献１によれば出力先のプリンタが故障しているときにのみ代替印刷が可能であるので、プリンタが故障していないような場合、出力先を変更することはできないという問題点があった。例えば、プリンタは故障していないが別のプリンタに出力したいような場合、特許文献１では対応できないことになる。
【０００５】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、ホストコンピュータからデータを印刷する際、ホストコンピュータで作成されたデータの出力先を、ホストコンピュータ側で設定されているプリンタから任意のプリンタへ変更できるようにすることである。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に関る、複数のプリンタと通信可能に接続され、受信した該プリンタへの印刷データの出力を制御する印刷制御装置において、  第１のプリンタ宛ての印刷データを第２のプリンタへ出力させるよう設定された印刷制御設定情報が記憶された設定情報記憶手段と、  前記設定情報に記憶された第１のプリンタに対応した第１の仮想プリンタを一時停止状態にする状態設定手段と、  前記印刷制御装置のスプール領域に対する印刷データとしてのスプールファイルの出力を検出する検出手段と、  前記検出手段により検出したスプールファイルが前記状態設定手段により一時停止状態にされた第１の仮想プリンタのスプールファイルであった場合、当該印刷データの出力先を前記第２のプリンタへ変更するデータ操作手段を有することを特徴としている。 
【発明の効果】
【０００７】
本発明によれば、ホストコンピュータからデータを印刷する際、ホストコンピュータで作成されたデータの出力先を、ホストコンピュータ側で設定されているプリンタから任意のプリンタへ変更できるという効果を奏する。
【発明を実施するための最良の形態】
【０００８】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【０００９】
＜第１実施形態＞
図１は、本発明の一実施形態を示す印刷制御システム構成の一例を示すシステム構成図である。
【００１０】
図１において、１００はホストコンピュータであり、汎用コンピュータ等の情報処理装置により構成される。また、このホストコンピュータ１００は所定の通信網５００を介してクライアントコンピュータ２００と通信可能に接続されている。具体的には、ＩＰ−ＶＰＮや企業内ＬＡＮにより接続される。さらに、このホストコンピュータ１００上では、図示しないＯＳ，アプリケーションが稼動している。
【００１１】
このアプリケーションは、クライアントコンピュータ２００や図示しないその他の端末より印刷要求を受けた際に、印刷に必要なデータをクライアントコンピュータ２００のプリンタドライバに送信する。この時の印刷に必要なデータにはデータ自身の他、フォーム印刷の有無や出力先のプリンタに関する情報が含まれている。
【００１２】
プリンタドライバは、アプリケーションから印刷命令を受け取り、それをプリンタ３００が解釈可能な形で出力している。
【００１３】
プリンタＡ３０１はフォームデータを保持しており、プリンタドライバから受け取ったデータにフォームの指定があった場合にはフォームをオーバレイして印刷を実行することができる。
【００１４】
また、フォームデータを保持していないプリンタＢ３０２が、アプリケーションから受信したデータにフォーム印刷に関する情報が含まれている場合には、クライアントコンピュータ２００はフォームデータをオーバレイして該当するプリンタＢ３０２に出力する。ここでは、プリンタＡ３０１がフォームデータを保持しており、プリンタＢ３０２はフォームデータを保持していないものとしているが、これに限ったものではない。
【００１５】
クライアントコンピュータ２００では、ホストコンピュータ１００より受信したスプール領域に存在する印刷データを解析し、該当するプリンタであれば出力先を変更して出力する。
【００１６】
なお、プリンタ３００（３０１、３０２を含む）は、レーザビーム方式であっても、レーザビーム方式以外の電子写真方式（例えばＬＥＤ方式）でも、液晶シャッタ方式、インクジェット方式、熱転写方式、昇華方式でもその他のプリント方式であっても本発明は適用可能である。
【００１７】
図２は、図１に示したクライアントコンピュータ２００を適用可能な情報処理装置のハードウェア構成を示すブロック図である。なお、図２に示すハードウェア構成は一例であり、用途や目的に応じて様々な構成例がある。
【００１８】
図２において、２０１はＣＰＵであり、システムバス２２０に接続される各デバイスやコントローラを統括的に制御する。ＲＯＭ２０２あるいは外部記憶２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Basic Input / Output System）やオペレーティングシステムプログラム（以下、ＯＳ）や、アプリケーション、プリンタドライバ１００に対応するプログラムコード、各サーバ或いは各ＰＣの実行する機能を実現するために必要な各種プログラム等がコンピュータ読取可能に記憶されている。
【００１９】
ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２又は外部記憶２１１又は図示しないその他の記録媒体からＲＡＭ２０３にロードして、該プログラムをＲＡＭ２０３上で実行することで各種動作を実現するものである。
【００２０】
また、入力コントローラ（入力Ｃ）２０５は、キーボード，ポインティングデバイス（ＰＤ）２０９からの入力を制御する。なお、ポインティングデバイスは、マウス、トラックボール、その他のポインティングデバイスであってもよい。ビデオコントローラ（ＶＣ）２０６は、表示装置２１０への表示を制御する。表示装置２１０は、液晶ディスプレイであってもＣＲＴディスプレイであっても、他の表示装置であっても構わない。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【００２１】
メモリコントローラ（ＭＣ）２０７は、外部記憶２１１へのアクセスを制御する。外部記憶２１１は、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体を含む。この外部記憶２１１は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する。
【００２２】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００２３】
プリンタコントローラ（ＰＲＴＣ）２０４は、プリンタ３００との双方向な通信を可能としている。
【００２４】
プリンタ３００はクライアントコンピュータ２００に接続されており、ＰＲＴＣ２０４から受け取った印刷命令を実行することができる。なお、ホストコンピュータ２００とプリンタ３００との接続形態はローカル接続に限るものではなく、ネットワーク経由の接続でも構わない。また複数台数接続されていても構わない。
【００２５】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上に不図示のマウスカーソル等を表示制御して不図示のマウス等のポインティングデバイスからのユーザ指示を可能とする。
【００２６】
なお、本発明を実現するための印刷制御プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００２７】
図３は、本発明の印刷制御装置における処理フローを示す機能ブロック図である。
【００２８】
印刷制御プログラム３１０はクライアントコンピュータ２００で稼動するモジュールである。このプログラムは常駐アプリケーションとして実装され、Ｗｉｎｄｏｗｓ（登録商標）起動時にＯＳのＲＵＮサービスから起動される。印刷制御プログラム３１０は以下３１１〜３１５の各処理部を有している。
【００２９】
スプール監視部３１１は、クライアントコンピュータのスプール領域３２０をポーリングにより常時監視している。このスプール領域３２０は、ホストコンピュータ１００から受信する印刷データを処理する場合以外にも、クライアントコンピュータ２００に登録されているプリンタのスプール領域としても利用されている。よって印刷制御プログラム３１０により処理された別のプリンタへの出力の際にもこのスプール領域３２０が利用される。
【００３０】
本実施形態では、ホストコンピュータ１００のホストアプリケーション１１０で設定されている印刷先を変更したい場合には、予め該当の仮想プリンタを監視対象プリンタとして一時停止するように設定しておき、変更したい印刷先とプリンタを定義しておくものとする。これらの定義方法については図８を利用して詳細に説明する。
【００３１】
図８は本実施形態における印刷制御プログラム設定画面８００である。監視対象プリンタ８０１では、ホストコンピュータ１００のホストアプリケーション１１０で設定されている今回監視の対象としたいプリンタを設定する。
【００３２】
監視対象プリンタに設定された仮想プリンタは、一時停止の状態となり、印刷データはスプール領域３２０に溜まったままの状態になる。一時停止状態でない通常のステータスの仮想プリンタの印刷データは印刷が成功すると無くなるのでスプール領域３２０に溜まることはない。プリンタ名欄の右側のプルダウンボタンを押すと、クライアントコンピュータ２００に設定されている仮想プリンタが表示され、その中から選択できるようになっている。
【００３３】
出力先プリンタ８０２は、変更後に出力したいプリンタを設定する。プリンタ名欄と同じように、右側のプルダウンボタンを押すとクライアントコンピュータ２００に設定されているコンピュータが表示されるようになっている。また、ここでは登録されている仮想プリンタから選択するようにしているが、自分で検索して任意の仮想プリンタを選択できるように構成してもよい。異なるプリンタドライバ言語を利用するプリンタを指定することも可能である。
【００３４】
ポーリング間隔８０３では、スプール監視部３１１がスプール領域３２０を監視するポーリング間隔の設定をするようになっている。
【００３５】
一時停止確認有無欄８０４では、監視対象プリンタ８０１で設定されたプリンタが一時停止状態になっているかの確認が必要かどうかを設定している。詳細については後述する。８０５、８０６はそれぞれＯＫボタンとキャンセルボタンとなっており、それぞれの用途に利用される。また、ここで設定された情報は、印刷制御プログラム設定情報として外部記憶２１１に記憶され利用される。
【００３６】
以下図３の説明に戻る。
【００３７】
データ処理・操作部３１２では、ホストコンピュータ１００から受信した印刷データをスプール領域３２０から取得して解析し、該当のデータであった場合に別のプリンタへ出力可能なようにデータを変換する。オーバレイ印刷部３１３では、出力先の変更後のプリンタ３００がオーバレイ機能を持っていない場合にオーバレイを行う。この時オーバレイするフォームデータは、フォームＤＢ３３０に記憶されているものを利用する。プリンタ監視部３１４では、本印刷制御プログラム３１０の実行時にプリンタ３００の状態を監視する。エラー処理部３１５では各種エラーが発生したときの処理を行う。
【００３８】
図４は、本発明の情報制御装置における第１の制御処理手順の一例を示すフローチャートであり、クライアントコンピュータ２００による印刷制御処理に対応する。なお、このフローチャートの処理は、図２に示したクライアントコンピュータ２００のＣＰＵ２０１が外部記憶２１１等に格納されるプログラム（印刷制御プログラム３１０）をＲＡＭ２０３上にロードして実行することにより実現される。また、図中、Ｓ４０１〜Ｓ４０２は各ステップを示す。
【００３９】
ＣＰＵ２０１により印刷制御プログラム３１０が起動されることにより本フローチャートの処理が開始する。
【００４０】
スプール監視部３１１は定期的なポーリングによりスプール領域３２０を監視することで、ステップＳ４０１においてスプール領域３２０にデータが存在するか確認する。具体的には、後述する図１０に示すスプールファイルが存在するかどうかを判断している。スプール領域３２０内にデータが無い場合、設定された間隔に従いポーリングを続行する。ポーリング間隔は図８で設定したポーリング間隔８０３の設定に従うものとする。ここでデータが存在すると判断された場合に、ステップＳ４０２に進む。
【００４１】
図９はクライアントコンピュータ２００の仮想プリンタが表示されているプリンタフォルダ９００のイメージ図であり、プリンタ名称９０１にはクライアントコンピュータ２００に登録されている仮想プリンタ名、ドキュメント９０２欄には各仮想プリンタに滞留しているドキュメントの数、状態９０３には各仮想プリンタの状態が表示されている。図８の監視対象プリンタ８０１で設定されたプリンタは、状態欄９０３が一時停止になっておりこの仮想プリンタにデータが１つ出力された場合には、ドキュメント欄９０２に１カウントされることになる。同様にデータが２つ出力されればカウントは２となる。
【００４２】
図１０は、プリンタフォルダ９００に登録されている仮想プリンタがデータを出力するのに利用する領域であり、図３ではスプール領域３２０で示されている。
【００４３】
１つの印刷データに対して２つのファイルからなり、例えばスプールファイル１００１は、「０００１．ｓｈｄ」と「０００１．ｓｐｌ」ファイルからなっている。ステップＳ４０１では、このスプールファイル１００１が存在しているかを確認していることになる。どちらかのファイルがあれば存在するとしてもよいし、２つのファイルが揃っている場合に存在するとしてもよい。
【００４４】
以下、図４のフローチャートの説明に戻る。
【００４５】
ステップＳ４０２では、出力先を変更するプリンタ出力先変更処理を実行する。
【００４６】
図５は、本発明の情報制御装置における第２の制御処理手順の一例を示すフローチャートであり、前述の図４に示した出力先変更処理Ｓ５０２の詳細についての一例を示すフローチャートである。図中、Ｓ５０１〜Ｓ５１０は各ステップを示す。
【００４７】
まず、ステップＳ５０１において、スプール領域３２０内の設定ファイルを解析する。出力先プリンタを記してあるスプールファイル（図１１）の内容を解析し、Ｓ５０２において該当の印刷データかどうかを判断する。該当のファイルでない場合は処理を終了する。
【００４８】
図１１は、ステップＳ５０１において解析するスプールファイルの一例である。ホストコンピュータ１００またはその他のコンピュータから受信した印刷データはスプール領域３２０にスプールファイル１００１のように２つのファイルで対になって記憶される。
【００４９】
本実施例では出力先プリンタ（Ｐｒｉｎｔｅｒ）１１０２について設定されている第1のスプールファイル１１０１と、フォームＩＤ１１０４を含む第２のスプールファイル１１０３が対になって記憶されるものとする。第１のスプールファイル１１０１には主に印刷に関する設定、第２のスプールファイル１１０３にはそれ以外のデータ自身やフォーム印刷に関する内容が含まれており第１のスプールファイル１１０１よりサイズが大きい場合が多い。該当ファイルであるかどうかはＰｒｉｎｔｅｒ欄１１０２で指定されているプリンタ名が図８の８０１で指定されたものと一致するかどうかで判断している。
【００５０】
ここでは一致していれば該当ファイルであると判断する。また、ステップＳ４０１におけるキュー内にデータがあるかどうかの判断は、出力先プリンタ１１０２について設定されている第１のスプールファイル１１０１があるかどうかでも行うことができる。
以下、図５のフローチャートの説明に戻る。
【００５１】
一方、該当ファイルであった場合、ステップＳ５０３でスプール領域３２０からスプールファイル１００１をクライアントコンピュータ２００の一時記憶領域にコピーする。この一時記憶領域は、データ処理・操作部３１２によってスプールファイル１００１を加工できる領域であればどこでも構わない。（例えばＲＡＭ２０３や外部記憶２１１など）
【００５２】
ステップＳ５０４では、スプールファイル１００１のコピーが正常にできたかどうかを判断し、コピーが失敗した場合には、ステップＳ５０５にてポーリング制御処理を実行する。（本ポーリング制御処理については、図６で説明する。）
【００５３】
第２のスプールファイル１１０３は前述のとおりサイズが大きめなのでスプーリングに時間がかかる場合がある。そのような場合に、第１のスプールファイル１１０１がスプーリングされていても、第２のスプールファイル１１０３のスプーリングが完了せずコピーに失敗することになる。
【００５４】
一方、正常にコピーできた場合は、ステップＳ５０６に処理を移す。正常にコピーできた状態とは第１・第２のスプールファイル１１０１・１１０３が対になってコピーできている状態をいう。ステップＳ５０６では、出力先プリンタ１１０２を示してある第１のスプールファイル１１０１と対になっている第２のスプールファイル１１０３を解析する。
【００５５】
該当のスプールファイル内にフォームＩＤ１１０４が存在するかどうか確認し、フォームＩＤ１１０４が存在した場合は、ステップＳ５０７でオーバレイ処理部３１３によりフォームデータをスプールファイル１１０１に適した形式でオーバレイする。
【００５６】
フォームデータは、クライアントコンピュータ２００の外部記憶２１１に、フォームＩＤとセットでフォームＤＢ３３０として記憶されている。図１１の例では、フォームＩＤは「ＥＰ−１０００−０１」となり、それに対応するフォームデータをフォームＤＢ３３０から取得することになる。一方、フォームＩＤが存在しない時や、対応するフォームデータがないと判断されたときは、何もせずステップＳ５０８に進む。
【００５７】
このとき、あらかじめ用意された標準のフォームデータをオーバレイするようにしてもよい。ステップＳ５０８では図８の８０２で設定された代替出力先のプリンタに出力する。出力の際は８０１で指定したものとは異なるプリンタドライバを利用することも可能である。
【００５８】
ステップＳ５０９では、正常に印刷が終了したかを確認し、正常に完了した場合はステップＳ５１０で元のデータ（例えばスプール領域３２０のスプールファイル１００１）を削除する。ここでの完了の判断はＯＳやプリンタドライバ機能を利用して行われるものとし、出力が完了しない場合は、エラーとして終了させてもよい。
【００５９】
＜第２実施形態＞
図６は、本発明の情報制御装置における第３の制御処理手順の一例を示すフローチャートであり、前述の図５ステップＳ５０５ポーリング制御処理の詳細についての一例を示すフローチャートである。図中、Ｓ６０１〜Ｓ６０３は各ステップを示す。
【００６０】
前述のとおり、スプールファイル１００１のスプーリングが完了していない状態だと処理が完了しない場合がある。この問題を解決するために設定してあるポーリングの間隔を該当のデータの処理が終るまでの間短くする処理を行い、該当のデータの処理が製正常に完了した場合、元のポーリング間隔に戻す処理を行う。
【００６１】
ステップＳ６０１ではポーリング間隔の変更を行う。これは、図８のポーリング間隔８０３に設定されている間隔を、印刷制御プログラムにあらかじめ設定してある間隔に変更する（例えば１分間隔など）。次にステップＳ６０２では先程コピーに失敗したファイル（例えば第２のスプールファイル１１０３）のコピーが成功したかどうかを判断する。
【００６２】
具体的には図１１で言えば「０００１．ｓｈｄ」に対応した「０００１．ｓｐｌ」でエラーが発生しているのであれば、「０００１．ｓｐｌ」ファイルのコピーが成功したかどうかを判断する。コピーが成功するまで短い間隔でのポーリングを繰り返し、コピーが成功した場合には、ステップＳ６０３においてポーリング間隔を元に戻して処理を終了する。
【００６３】
これにより、印刷データのコピーが完了しなかった場合に変換処理が始まるまでの時間を短縮することができ、ユーザを待たせないことと同時に処理がたまってしまうことを防ぐことができる。
【００６４】
＜第３実施形態＞
第１および第２実施形態では、印刷させたくないプリンタを一時停止しておくように設定（図８の８０１で設定された仮想プリンタ）しており、それを前提に処理が行われている。しかしクライアントコンピュータ２００上の仮想プリンタはマウス操作などで簡単に再開状態（例えば、図９の状態９０３を「一時停止」から「準備完了」に変更）にすることができてしまうため、ユーザの誤操作等により一度設定したプリンタの一時停止の状態が保たれていないような場合がある。
このような場合、印刷させたくないプリンタに印刷が行われてしまうことになり、本来設定してある出力させたいプリンタ（図８の代替出力先プリンタ８０２）への出力がうまくいない等の問題がある。
【００６５】
そこで本サービスの起動時、出力させたくないプリンタの仮想プリンタが一時停止状態になっているかを確認し、なっていない場合には一時停止する構成にした。
【００６６】
図７は、本発明の情報制御装置における第４の制御処理手順の一例を示すフローチャートであり、図４に示す第１の制御処理を開始する前に実行する処理を示すフローチャートである。図中、Ｓ７０１〜Ｓ７０４は各ステップを示す。
【００６７】
このフローは図８の一時停止設定確認有無欄８０４で「有」が設定されているときに行われる。
【００６８】
ステップＳ７０１において、監視対象のプリンタが一時停止状態であるかどうかチェックする。この処理は、プリンタ監視部３１４が図８の監視対象プリンタ８０１に対して行う。ここで対象プリンタが一時停止状態であった場合、その後の処理を進めてもなんら問題がないので、ステップＳ７０３の処理を開始する。
【００６９】
一方、対象プリンタが一時停止状態にない場合、一時停止状態にした後ステップＳ７０３を開始する。この後のステップＳ７０３とステップＳ７０４の処理は、図４で示したＳ４０１とＳ４０２の処理と同様であるので説明は省略する。
【００７０】
これにより、何らかの要因により対象のプリンタが一時停止状態になかったような場合でも、本来出力させたくなかったプリンタへの出力を防ぐと同時に、本来出力させたいプリンタへ出力させることが出来るという効果を奏する。
【００７１】
上述した描画命令を示すデータ等の構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【００７２】
以上、実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００７３】
以下、図１２に示すメモリマップを参照して本発明に係る情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。
【００７４】
図１２は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【００７５】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【００７６】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【００７７】
本実施形態における図４〜図７に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【００７８】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００７９】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【００８０】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８１】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８２】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００８３】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００８４】
なお、上述した各実施形態及び各変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【００８５】
【図１】本発明の一実施形態を示す印刷制御システムの構成の一例を示すシステム構成図である。
【図２】図１に示したクライアントコンピュータを適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【図３】本発明の印刷制御装置における処理フローを示す機能ブロック図である。
【図４】本発明の印刷制御装置における第１の制御処理手順の一例を示すフローチャートである。
【図５】本発明の印刷制御装置における第２の制御処理手順の一例を示すフローチャートである。
【図６】本発明の印刷制御装置における第３の制御処理手順の一例を示すフローチャートである。
【図７】本発明の印刷制御装置における第４の制御処理手順の一例を示すフローチャートである。
【図８】本発明の実施形態における印刷制御プログラム設定画面の一例を示す図である。
【図９】本発明の印刷制御装置における仮想プリンタが表示されているプリンタフォルダの一例を示す図である。
【図１０】本発明の印刷制御装置におけるスプール領域の一例を示す一例を示す図である。
【図１１】本発明の印刷制御装置におけるスプールファイルの一例を示す図である。
【図１２】本発明に係る印刷制御装置で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【符号の説明】
【００８６】
１００    ホストコンピュータ
１１０    ホストアプリケーション
２００    クライアントコンピュータ
２０１    ＣＰＵ
２０２    ＲＯＭ
２０３    ＲＡＭ
２０４    ＰＲＴＣ
２０５    入力コントローラ
２０６    ビデオコントローラ
２０７    メモリコントローラ
２０８    通信Ｉ／Ｆコントローラ
２０９    キーボードＰＤ
２１０    表示装置
２１１    外部記憶装置
２２０    システムバス
３００    プリンタ
３０１    プリンタＡ
３０２    プリンタＢ
３１０    印刷制御プログラム
３１１    スプール監視部
３１２    データ処理・操作部
３１３    オーバレイ処理部
３１４    プリンタ監視部
３１５    エラー処理部
３２０    スプール領域
３３０    フォームＤＢ
５００    通信網
【図１】
0004836072.tif 000002
【図２】
0004836072.tif 000003
【図３】
0004836072.tif 000004
【図４】
0004836072.tif 000005
【図５】
0004836072.tif 000006
【図６】
0004836072.tif 000007
【図７】
0004836072.tif 000008
【図８】
0004836072.tif 000009
【図９】
0004836072.tif 000010
【図１０】
0004836072.tif 000011
【図１１】
0004836072.tif 000012
【図１２】
0004836072.tif 000013