JP2004240589A - Printing system, method of controlling it, and information processing apparatus and method - Google Patents
Printing system, method of controlling it, and information processing apparatus and method Download PDFInfo
- Publication number
- JP2004240589A JP2004240589A JP2003027606A JP2003027606A JP2004240589A JP 2004240589 A JP2004240589 A JP 2004240589A JP 2003027606 A JP2003027606 A JP 2003027606A JP 2003027606 A JP2003027606 A JP 2003027606A JP 2004240589 A JP2004240589 A JP 2004240589A
- Authority
- JP
- Japan
- Prior art keywords
- printer
- physical
- server
- client
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、アプリケーションからの描画指示に基づいて印刷処理を行う印刷システムにおけるグループプリンタのセットアップを含む印刷制御に関する。
【0002】
【従来の技術】
近年、ネットワーク機器が一般に利用され、ネットワーク上に多数のパソコン(以下、PC)やプリンタが接続されるようになった。このようなネットワーク環境においては、複数あるプリンタを有効に活用するべく、様々な制御方法が提案されている。
【0003】
例えば、上記ネットワーク環境において印刷を行う際、ページ数の多いドキュメントあるいは部数の多いドキュメントについては、いったん印刷ジョブをスプールし、複数のプリンタに頁ごとあるいは部数ごとに分散して出力することにより印刷時間の短縮を図るシステム(分散印刷システム)が提案されている。また上記のようなネットワーク環境において、カラー頁、モノクロ頁が混在する一つのドキュメントに対して、印刷時のコストおよび印刷時間の短縮を図るために、カラー頁はカラープリンタへ、モノクロ頁はモノクロプリンタへ分散して出力するシステム(カラー・モノクロ分散印刷システム)が知られている。
【0004】
さらに、このようなネットワーク環境において、一つのドキュメントを一度の印刷指示で、複数のプリンタに同時に送信し印刷するシステム(同報印刷システム)が知られている。また、このようなネットワーク環境において、一つのプリンタに送信したドキュメントに対し、そのプリンタでエラーが発生した場合は、自動的に他のプリンタに切り替えて印刷するシステム(エラー代行印刷システム)が知られている。さらに、このようなネットワーク環境における印刷システムにおいて、1つの仮想的なプリンタ(グループプリンタ)を有し、そのプリンタに印刷指示を出すと、1つの仮想的なプリンタが一旦印刷ジョブをスプールし、汎用印刷データを生成した後、後段の印刷システムに汎用印刷データを送信し、印刷システムが該汎用印刷データを受け取り処理する方法が知られている。
【0005】
さらに上記のようなネットワーク環境における印刷システムにおいて、1つの仮想的なプリンタ(グループプリンタ)と、それに関連付けられた複数のメンバプリンタを1つのクライアントマシン上に有し、グループプリンタがそれぞれのメンバプリンタの能力を問い合わせ、UIの制御を行う方法が知られている。
【0006】
また、特許文献1には、サーバを介して接続される複数の物理プリンタの各機能に基づく論理プリンタをクライアントに提供する仕組みが開示されている。更に、特許文献2には、仮想プリンタドライバをコンピュータにインストールすることが開示されている。
【0007】
【特許文献1】
特開平09−258930号公報
【特許文献2】
特開2001−290625号公報
【0008】
【発明が解決しようとする課題】
しかしながら、特許文献1によれば、ユーザは複数の物理プリンタの各機能を有用に利用できるものの、所望の出力方法などに従った仮想プリンタを得ることはできなかった。また、特許文献2によれば、仮想プリンタドライバをクライアントにインストールすることは開示されているものの、具体的にどのようにインストールするかを開示するものではなく、仮想プリンタとメンバプリンタとを効率よくクライアントにインストールするという点で改善の余地がある。
【0009】
本発明は上記の課題に鑑みてなされたものであり、複数のメンバプリンタから構成されるグループプリンタを利用して印刷を行うような環境において、効率よくクライアントにグループプリンタとメンバプリンタをインストール可能とすることを目的とする。
【0010】
【課題を解決するための手段】
上記の目的を達成するための本発明による印刷システムの制御方法は、
複数の物理プリンタの各々に対応するセットアップ用データを格納するサーバと該サーバを介して物理プリンタを利用可能なクライアントを含む印刷システムの制御方法であって、
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録工程と、
前記クライアントにおいて、前記登録工程において登録された仮想プリンタを指定する指定工程と、
前記指定工程で指定された仮想プリンタを前記クライアントより前記サーバに通知する通知工程と、
前記通知工程による前記指定された仮想プリンタの通知を受けて、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより前記クライアントに送信する送信工程とを備える。
【0011】
また、上記の目的を達成するための本発明による印刷システムは以下の構成を備える。すなわち、
複数の物理プリンタの各々に対応するセットアップ用データを格納するサーバと該サーバを介して物理プリンタを利用可能なクライアントを含む印刷システムであって、
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録手段と、
前記クライアントにおいて、前記登録手段において登録された仮想プリンタを指定する指定手段と、
前記指定手段で指定された仮想プリンタを前記クライアントより前記サーバに通知する通知手段と、
前記通知手段による前記指定された仮想プリンタの通知を受けて、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより前記クライアントに送信する送信手段とを備える。
【0012】
また、上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。すなわち、
複数の物理プリンタの各々に対応するセットアップ用データを格納し、クライアントからの印刷指示に応じて物理プリンタによる印刷を制御する印刷サーバとして機能する情報処理装置であって、
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録手段と、
前記クライアントより仮想プリンタの指定の通知を受信する受信手段と、
前記通知において指定された仮想プリンタ及び該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記クライアントに送信する送信手段とを備える。
【0013】
また、上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。すなわち、
複数の物理プリンタの各々に対応するセットアップ用データを格納するサーバを介して物理プリンタを利用するクライアントとして機能する情報処理装置であって、
前記サーバに登録された、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを取得する取得手段と、
前記取得手段で取得された仮想プリンタの一つを指定させる指定手段と、
前記指定手段で指定された仮想プリンタを前記サーバに通知し、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより受信する受信手段とを備える。
【0014】
また、上記の目的を達成するための本発明による情報処理方法は、
複数の物理プリンタの各々に対応するセットアップ用データを格納し、クライアントからの印刷指示に応じて物理プリンタによる印刷を制御する印刷サーバとして機能する情報処理方法であって、
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録工程と、
前記クライアントより仮想プリンタの指定の通知を受信する受信工程と、
前記通知において指定された仮想プリンタ及び該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記クライアントに送信する送信工程とを備える。
【0015】
更に、上記の目的を達成するための本発明による情報処理方法は、
複数の物理プリンタの各々に対応するセットアップ用データを格納するサーバを介して物理プリンタを利用するクライアントとして機能する情報処理方法であって、
前記サーバに登録された、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを取得する取得工程と、
前記取得工程で取得された仮想プリンタの一つを指定させる指定工程と、
前記指定工程で指定された仮想プリンタを前記サーバに通知し、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより受信する受信工程とを備える。
【0016】
【発明の実施の形態】
以下、添付の図面を参照して本発明の好適な実施形態について説明する。
【0017】
〔第1実施形態〕
図1は、本発明を適用可能な情報処理システムの構成を説明するブロック図である。なお、本システムにおけるクライアントコンピュータは、1台、または複数台接続されていることを仮定している。
【0018】
図1において、102、103、104はクライアントコンピュータ(クライアント)としての情報処理装置であり、イーサネット(登録商標)などのネットワークケーブルによって、ネットワーク106に接続される。クライアント装置102〜104の各々は、アプリケーションプログラム等の各種のプログラムを実行可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。なお、プリンタドライバは複数のプリンタドライバをサポートするものとする。
【0019】
101は本実施形態のサーバ(以下、プリントサーバと呼ぶ)としての情報処理装置であり、ネットワークケーブルによって、ネットワーク106に接続される。プリントサーバ101は、ネットワークで使用されるファイルを蓄積したり、ネットワーク106の使用状態を監視したりする。プリントサーバ101は、ネットワーク106に接続されている複数のプリンタを管理している。
【0020】
なお、クライアント102〜104とプリントサーバ101は、一般的な情報処理装置にそれぞれ異なる制御を行う印刷制御プログラムを実行可能に格納することにより構成することができる。
【0021】
また、プリントサーバ101として一般的な情報処理装置を用いた場合、クライアント102〜104の機能を同時に持たせることもできる。本実施形態におけるプリントサーバ101は、さらにクライアント102、103、104から出力された印字データを含む印刷ジョブを格納してプリンタに印刷させたり、または、クライアント102、103、104から印字データを含まない印刷ジョブを受け取り、クライアント102、103、104の印刷順序を管理し、印刷順序になったクライアントに対して印字データを含む印刷ジョブの送信許可を通知したり、ネットワークプリンタ105のステータスや印刷ジョブの各種情報を取得し、クライアント102、103、104に通知したりする機能を揃えている。
【0022】
105はネットワークプリンタであり、不図示のネットワークインタフェースを介してネットワーク106と接続されている。ネットワークプリンタ105は、クライアントコンピュータ102〜104から送信される印字データを含む印刷ジョブを解析して1ページずつドットイメージに変換して、1ページ毎に印刷する。106はネットワークであり、クライント102、103、104、サーバ101、ネットワークプリンタ105等と接続している。
【0023】
図2は、本実施形態のクライアント102〜105及びプリントサーバ101として利用可能な情報処理装置の構成を説明するブロック図である。上述したように、クライント102、103、104及びプリントサーバ101は同様のハードウエア構成を有した情報処理装置によって実現可能である。以下、図2をクライアントとサーバの構成を説明するブロック図として説明する。
【0024】
図2において、200は情報処理装置の制御手段であるCPUであり、ハードディスク(HD)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや本発明のネットワークプリンタ制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
【0025】
201はROMであり、内部には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。202は一時記憶手段を提供するRAMであり、CPU200の主メモリ、ワークエリア等として機能する。203はフレキシブルディスク(FD)ドライブであり、後述する図5に示すようにFDドライブ203を通じて記憶媒体としてのFD204に記憶されたプログラム等を本コンピュータシステムにロードすることができる。204は記憶媒体としてのフレキシブルディスク(FD)であり、コンピュータが読み取り可能なプログラムが格納された記憶媒体である。なお、記憶媒体としては、FDに限らず、CD−ROM、CD−R、CD−RW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、任意の媒体を利用できる。
【0026】
205は外部記憶装置の一つであり、大容量メモリとして機能するハードディスク(HD)である。HD205には、アプリケーションプログラム、プリンタドライバプログラム、OS、ネットワークプリンタ制御プログラム、関連プログラム等が格納されている。また、スプール手段であるスプーラはこのHD205に確保される。なお、スプール手段は、クライアント102〜104ではクライアントスプーラのことであり、プリントサーバ101ではサーバスプーラのことである。また、プリントサーバ101では、クライアント102〜104から受けたジョブ情報を格納し、順序制御を行うためのテーブルもこの外部記憶装置(HD205)に生成されて格納される。
【0027】
206は指示入力を行なうためのキーボードである。キーボード206を用いることにより、ユーザがクライアントコンピュータに対して、或いは、オペレータや管理者がプリントサーバに対して、デバイスの制御コマンドの命令等を入力指示する。なお、指示入力を行なうためにポインティングデバイス(不図示)を備えてもよい。
【0028】
207はディスプレイであり、キーボード206から入力したコマンドや、プリンタの状態等を表示したりする。208はシステムバスであり、クライアントやプリントサーバであるコンピュータ内のデータの流れを司る。209はインタフェースであり、該インタフェース209を介して情報処理装置はネットワーク106と接続され、外部装置とのデータのやり取りを行うことが可能となる。
【0029】
図3は、図2に示したRAM202のメモリマップの一例を示す図である。図3には、FD204に格納されている上記ネットワークプリンタ制御プログラムがRAM202にロードされ、実行可能となった状態のメモリマップが示されている。
【0030】
本実施形態では、FD204からネットワークプリンタ制御プログラムおよび関連データを直接RAM202にロードして実行させる例を示すが、これ以外にも、FD204からネットワークプリンタ制御プログラムを動作させる度に、既にネットワークプリンタ制御プログラムがインストールされているHD205からRAM202にロードするようにしてもよい。また、本ネットワークプリンタ制御プログラムを記憶する媒体は、FD以外にCD−ROM、CD−R、PCカード、DVD、ICメモリカード等であってもよい。さらに、本ネットワークプリンタ制御プログラムをROM201に記憶しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。
【0031】
また、本ネットワークプリンタ制御プログラムのことを、簡単に印刷制御プログラムと呼ぶこともある。印刷制御プログラムは、クライアント102〜104において印刷ジョブの印刷先の変更を指示したり、印刷順序の変更を指示するための制御を行うプログラムを含む。また、印刷制御プログラムは、プリントサーバ101において、印刷ジョブの順序制御を行ったり、印刷ジョブの印刷終了や印刷先変更要求などを通知するためのプログラムを含んでいる。また、このような制御を行う本実施形態の印刷制御プログラムは、クライアント102〜104にインストールされるモジュールと、プリントサーバ101にインストールされるモジュールを別々に分けてもよい。或いは、一つの印刷制御プログラムが、実行される環境によりクライアント用として機能したり、またはプリントサーバ用として機能するようにしてもよい。あるいは一台のコンピュータに、クライアント用の機能を持つモジュールと、プリントサーバ用として機能するモジュールをともにインストールし、同時に、あるいは時分割で擬似的に平行動作させる構成をとることも可能である。
【0032】
図3において、301は基本I/Oプログラムであり、本制御装置の電源がONされたときに、HD205からOSがRAM202に読み込まれ、OSの動作を開始させるIPL(イニシャルプログラムローデイング)機能などを有しているプログラムが入っている領域である。302はオペレーティングシステム(OS)、303はネットワークプリンタ制御プログラムであり、それぞれRAM202上に確保された領域に記憶される。304は関連データで、RAM202上に確保される領域に記憶される。305はワークエリアで、CPU200が本実施形態のプリンタ制御プログラム(303)等を実行する際に利用される作業領域が確保されている。
【0033】
図4は、図2に示したFD204のメモリマップの一例を示す図である。図4において、400は上記FD204のデータ内容であり、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403は本実施形態で説明する印刷制御プログラムであるネットワークプリンタ制御プログラム、404はその関連データである。403のネットワークプリンタ制御プログラムは、実施形態で説明するフローチャートに基づいてプログラム化したものであり、本実施例では、クライアント、サーバ共、同様の構成をとっている。
【0034】
図5は、図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図であり、図2と同一のものには同一の符号を付してある。図5において、FD204には、図4で説明したように本実施形態で説明するネットワークプリンタ制御プログラムおよび関連データが格納されている。
【0035】
図6は、本実施形態で扱う汎用印刷ファイルの概略構成例を示す図である。この汎用印刷ファイルには図13により後述する汎用印刷ファイル生成部702によって生成される。なお、本実施形態では、複数のプリンタを1台のプリンタとして仮想的に束ねるプリンタをグループプリンタ、束ねられるプリンタをメンバプリンタと呼ぶ。また、それに対応するプリンタドライバをそれぞれグループプリンタドライバ、メンバプリンタドライバと呼ぶ。なお、グループプリンタは複数の実在するプリンタを束ねた仮想的なプリンタであり、メンバプリンタは実在する物理的なプリンタに対応する。また、グループプリンタドライバは印刷ユーティリティーの一種としてアプリケーションとしてもとらえることができる。
【0036】
本実施形態で使用される汎用印刷ファイルは、後述するグループプリンタに印刷指示をした過程で生成され、印刷指示部6−aとドキュメントデータ部6−bからなる。
【0037】
印刷指示部6−aは、ドキュメントの情報と印刷指示を記述した部分である。また、ドキュメントデータ部6−bは、アプリケーションのドキュメントのデータを汎用的な形式のデータに変換して格納したものであり、プリンタ言語に依存しないデータフォーマットでドキュメントの内容を格納する。この印刷指示部6−aは、後述する図14のフローチャートに従い表示制御がなされたグループプリンタのUIを介して設定された設定情報に基づくものに対応する。
【0038】
また、印刷指示部6−aはヘッダ部601、ページ情報部602、印刷体裁指示部603、出力方法指定部604、グループプリンタ設定情報部605、メンバプリンタ数606、メンバプリンタドライバ名607a,b、メンバプリンタドライバ設定情報部608a,bなどから構成されている。
【0039】
印刷指示部6−aにおいて、ヘッダ部601は本ファイルのバージョン識別やファイル情報などの情報を格納する部分である。ページ情報部602は、ドキュメントデータ部6−bのドキュメントデータのページ数、各ページのサイズなどの情報を格納する部分である。印刷体裁指示部603は、印刷ページ範囲、印刷部数、ドキュメントデータの面付け情報(N−UPや製本印刷など)、ステイプル指示やパンチ指示など、出力体裁に関する情報を格納する部分である。出力方法指定部604は、出力方法として、分散印刷、カラーモノクロ分散印刷、代行印刷、同報印刷などの情報を格納する部分である。グループプリンタ設定情報部605は、後述するグループプリンタのユーザインターフェース(UI)の設定情報を格納する部分である。メンバプリンタ数606はグループプリンタが関連付けているメンバプリンタの数を格納する部分である。メンバプリンタドライバ名607a,bは、メンバプリンタのプリンタドライバ名を格納する部分である。メンバプリンタドライバ設定情報部608a,bはメンバプリンタのドライバUIの設定情報として例えばDEVMODE情報を格納する部分である。なお、メンバプリンタドライバ名607とメンバプリンタドライバ設定情報部608は、メンバプリンタ数606に格納された数だけの格納エリアを持っている。
【0040】
尚、本ファイルは、印刷指示部6−aとドキュメントデータ部6−bが異なるファイルであってもかまわない。その場合、印刷指示部6−aは印刷指示書ファイルとして、ドキュメントデータ部6−bはドキュメントデータファイルとしてそれぞれ存在することになる。また、これらのファイルを一つのアーカイブ形式でまとめて一つのファイルのように扱うことも可能である。
【0041】
図7、図8は本実施形態のグループプリンタのユーザインターフェイス(以下、UI)の表示例を示す図である。これらのUIは、グループプリンタの呼び出しがOSを介して指示された場合に、クライアントに設けられた表示部(不図示)或はプリントサーバに設けられた表示部(不図示)に表示される。
【0042】
図7は本実施形態のグループプリンタのUIの1例であり、ページ設定シートが選択された状態を示している。例えば、原稿サイズ701、出力用紙サイズ702、部数703、印刷の向き704、ページ例レイアウト705などの設定情報は、図6で前述したページ情報部602あるいは印刷体裁指示部603に記述されることになる。
【0043】
また、図8は、本実施形態のグループプリンタのUIにおいて、出力方法のシートが選択された場合を示している。図8において、8−aはコンボボックスであり、割合分散、カラーモノクロ分散、同報、自動代行などの出力方法を選択し、指定することが可能である。この図8のUIを介して入力される指示に応じて出力方法が適宜選択される。但し、デフォルトの出力方法は、後述の図12に示されるプリンタ管理情報及び図9、図10フローチャートに従ってクライアント側にインストールされた情報に従って設定される。8−bはメンバプリンタの登録を行うためのUIを開くボタンである。このボタン8−bの操作に応じて開かれるUIについては後述する。
【0044】
図8の8−cは登録されたメンバプリンタの一覧を表示するリストボックスである。この一覧表示の内容は前述の8−aで指定した出力方法に従って、その表示内容も変更される。この中で、8−gは各メンバプリンタを出力対象のプリンタより一時的にはずしたり、出力対象に戻したりするためのチェックボックスである。このチェックボックス8−gにチェックがある場合は、そのメンバプリンタを出力対象プリンタとみなし、チェックがない場合はそのメンバプリンタを一時的に出力対象プリンタからはずすことを意味している。すなわち、UI上で登録され、前述の8−bのボタンを押下することによって表示されたメンバプリンタの各々に対し、さらにこのチェックボックスによって出力対象とするか否かを設定することが可能となる。
【0045】
また、図8−fはデバイス情報表示欄で、あらかじめ設定してあるメンバプリンタの情報を、メンバプリンタドライバの名称とともに表示している。
【0046】
図8の8−dは、出力方法の詳細指定を行うためのUIを開くボタンである。この詳細設定の内容は前述のコンボボックス8−aで指定した出力方法に従って、その表示内容も変更される。図8では、コンボボックス8−aによって割合分散が設定されているので、ボタン8−dには「割合設定」が表示されている。
【0047】
図8の8−eは、メンバプリンタドライバのGUIを開くボタンである。対象となるメンバプリンタは前述した8−cの一覧の中から選択することで行う。すなわち、ボタン8−eを用いることで、現在8−c上で選択されているメンバプリンタに対するメンバプリンタドライバUIを開くことが可能である。
【0048】
また、メンバプリンタのUIを開く際の表示制御については後述する図14、図18、図19、図20にそれぞれ示されるフローチャートを用いて詳しく説明する。以上のように、本実施形態のグループプリンタUIを用いることにより、出力方法として割合分散、カラー/白黒分散、同報、自動代行のいずれかを選択でき、それぞれの出力方法に対してメンバプリンタドライバの指定および設定を行うことができるので、1つのプリンタドライバで複数の印刷指示が可能となる。
【0049】
次に、上述の図7、図8にて示したようなユーザインターフェイスを表示させるにあたって事前に行われる共有プリンタのセットアップについて、図9乃至図12を用いて説明する。
【0050】
(サーバPCにおけるプリンタ登録処理)
図9はプリントサーバとして機能するサーバPCにおけるグループプリンタ、メンバプリンタドライバのセットアップの手順を示したフローチャートである。サーバPCは図13中のサーバに対応するものであり、上述のように例えば図1のサーバ101に該当させることができ、図2に示すような一般的な情報処理装置が採用される。また、サーバPCはプリントサーバとして専用に設置された情報処理装置であっても良いし、ユーザが業務用に利用するようなパーソナルコンピュータとしての情報処理装置を割当てることもできる。
【0051】
まず、図9のステップS9−1でセットアップを開始する。ここでいうセットアップとは印刷処理に関連した各種ソフトウェアモジュール及び/又はドライバモジュールのインストール及びサーバ側の各種設定を含めた処理を指す。但し、各種設定はモジュールのインストール後に行ってもかまわない。
【0052】
次にステップS9−2で構成モジュールをインストールする。構成モジュールとは後述する本システムにおいてサーバに必要な各種モジュールである。ステップS9−3でグループプリンタ及びメンバプリンタを含む各プリンタに対応させてプリンタポートを設定する。即ち、グループプリンタに対してはサーバPCを特定可能な仮想プリンタポートを、メンバプリンタには夫々に対応するポートを設定する。後述するが本システムはここで設定するプリンタポートを介して印刷ジョブを受け取り、所望の動作を実現する。尚、ここでのプリンタポートとはサーバPCやデバイスを識別する為の情報であり、例えばサーバPCやデバイスのIPアドレス、名称などに対応し、デバイスを特定する為の情報として利用される。
【0053】
デバイスを特定する為の情報としては、例えば、後述する図13中のプロキシ出力ポート712等が対応する。また、デバイスに対して設定されたプリントポートはLPRなどでも良い。
【0054】
次にステップS9−4でメンバプリンタの設定を行う。このステップではメンバプリンタとなりうるプリンタドライバを選択し、各プリンタドライバの接続ポートを上記ステップS9−3で設定したプリンタポートに対応させる。そして、ステップS9−5でグループプリンタの設定を行う。ここでは、グループプリンタの出力方法を指定したり、ステップS9−4で設定したメンバプリンタより各グループプリンタのメンバプリンタを指定したり、グループプリンタの接続ポートを上記ステップS9−3で設定したプリンタポートに対応させたりする。次にステップS9−6で設定内容をプリンタ管理情報としてプリンタ情報管理部704に登録し終了する。プリンタ管理情報については後述する。
【0055】
(クライアントにおけるインストール処理)
次に図10のフローチャートを参照して、クライアント側におけるサーバPCにおいて供給設定された共有プリンタのインストールおよび設定方法について説明する。
【0056】
まずステップS10−1でセットアップを開始する。ここでいうセットアップとはモジュールのインストールおよびクライアント側の各種設定を含めた処理を指すが、各種設定についてはモジュールインストール後に行うようにしてもかまわない。
【0057】
ステップS10−2で構成モジュールをインストールする。構成モジュールとは本システムにおいてクライアントに必要な各種モジュールである。構成モジュールの詳細については後述する。次にステップS10−3で前述の図9で設定したサーバPCをネットワーク上から探索する。ネットワーク上に接続されるサーバPCの探索方法については既に周知の技術を適用可能であり、詳しい説明は省略する。
【0058】
次にステップS10−4において、ステップS10−3で探索されたサーバPCより、共有先として設定されるべきPCが選択されるのを待つ。すなわち、上記ステップS10−4で1つ又は複数のサーバPCが探索された場合、本ステップでそれらの中から1つが選択されるのを待つ。なお、サーバPCが1台も見つからなかった場合は、メンバプリンタのセットアップを続行できないので本処理を終了する(不図示)。サーバPCが選択されるとステップS10−4からステップS10−5へ進む。ステップS10−5では、選択されたPCサーバにインストールされているプリンタドライバのうち共有可能なプリンタドライバを調査する。共有可能かどうかは、例えば、WindowsPrintingSystemが備えている共有可能か否かを問い合わせるAPIを利用することにより実現することが可能である。
【0059】
また、ステップS10−5では、プリンタ情報管理部704(図13)に格納されているプリンタ管理情報(ステップS9−6で登録されている)をネットワーク106を介して読み込み、サーバPCに登録されたグループプリンタとメンバプリンタに係る管理情報を取得する。取得された管理情報はクライアントに設けられた所定の記憶部に一旦保持される。プリンタ管理情報の詳細については図12を参照して後述する。
【0060】
また、このステップS10−5におけるサーバ調査では、図12に示されるような複数のグループプリンタ及びメンバプリンタの調査が実行される。そして、このステップS10−5の処理に応じて図11に示されるようなグループプリンタ及びメンバプリンタをリスティングした表示がクライアント側の表示画面上になされる。
【0061】
次にステップS10−6に進み、ステップS10−5における調査によって得られた共有可能なプリンタドライバから一つのプリンタドライバが選択されたか否かを判定する。ユーザは、ステップS10−5の調査結果に基づくグループプリンタ及びメンバプリンタ(共有可能なプリンタドライバ)のリスト表示(図11)を得て、このリスト表示から所望の共有設定をしたいグループプリンタを指示することができる。また、このリスト表示からメンバプリンタが選択された場合には、選択されたメンバプリンタがサーバPCからクライアントにインストールされる。なお、図11に関連する説明は後述する。
【0062】
グループプリンタの選択がなされると、ステップS10−7において、選択されたグループプリンタが既に、クライアントにてインストール済みか否かの判断が行われる。この判断は例えばグループプリンタ名の一致を照合することにより行われる。そして、ステップS10−7でNoと判断されると、ステップS10−8に進み、指定されたグループプリンタを共有プリンタドライバとしてクライアントにインストールする。ここでクライアントにインストールされるグループプリンタは、図9のフローチャートに従って設定されたグループプリンタであり、図7、図8、図21のUIを表示させる為のプログラムが含まれていたり、図13において説明する印刷処理を実行する為のプログラムや、図12において説明する管理情報などが少なくとも含まれている。次にステップS10−9〜10−12においてメンバプリンタドライバのインストールを実行する。
【0063】
ここでは、ステップS10−6で指定されたグループプリンタに関連付けられたメンバプリンタを、自動的に特定しインストールする。まず、ステップS10−9において、複数或は単数から特定されたメンバプリンタが既にクライアントにインストール済みか否かの判断が行われる。Noと判断されればそのメンバプリンタを共有インストールする。このインストールの際には図9のフローチャートに従って設定されたプリントポート等の各種情報やメンバプリンタ名などの各種情報も合わせてクライアントに送信される。そして、ステップS10−10では、ステップS10−6で指定されたグループプリンタに関連付けられたメンバプリンタの全てに対してインストール処理が終了したか否かの判断が行われる。そして、ステップS10−10でNoと判断されればステップS10−12で次のメンバプリンタが特定され、ステップS10−9の処理へ再び移行する。一方、ステップS10−9でYesと判断されれば上に説明したステップS10−10に処理を移行する。この移行により無駄なメンバプリンタのクライアントへのセットアップを省略することができる。無論、ステップS10−9でYesと判断されたメンバプリンタをクライアントにて上書きするようにしても良い。そして、ステップS10−10でYESと判定されたならば、ステップS10−13へ進みセットアップ画面(図11)を表示し、ステップS10−6へ戻る。
【0064】
このようにステップS10−6〜10−12の処理により、グループプリンタを指定することに応じて関連したメンバプリンタを効率よく自動的にクライアントに取り込むことができる。
【0065】
一方、ステップS10−7でYesと判断されると、ステップS10−14でグループプリンタに関連付けられたメンバプリンタの情報(組み合わせ等の情報)が同じか否かが判断される。ここで、Noと判断された場合は、ステップS10−17へ進み、選択されたグループプリンタに関連付けられたメンバプリンタのクライアントへのインストールが行われる。
【0066】
一方、ステップS10−14でYesと判断されれば、例えば、「既に同じグループプリンタ及びメンバプリンタが登録されております!!」等の警表示の表示制御がクライアントにて行われる。そして、処理をステップS10−16に処理を移行させ、セットアップ画面(図11)をクライアントに表示させる。
【0067】
以上のような図10のフローチャートで示される処理によりクライアントにインストールされたグループプリンタ及びメンバプリンタは、後述する図14、図18、図19、図20のフローチャートに従った処理を行う際に利用され、ユーザに対して適切な印刷設定環境を提示することを実現する。
【0068】
図11は上記の図10のフローチャートで説明したクライアントPCに共有インストールを行う際のセットアップ画面の1例であり、後述する図12の情報に基づきクライアントの表示部に表示される画面を示すものである。図11において、プリンタの一覧1102にリストアップされているプリンタはサーバPC上で共有設定されたプリンタであり、“グループプリンタ名1”はグループプリンタを表し、“メンバプリンタ名A”〜“メンバプリンタ名C”の3つのプリンタは“グループプリンタ名1”のメンバプリンタを表している。図10の説明で補足すると、ステップS10−6でグループプリンタである“グループプリンタ名1”を選択すると(グループプリンタ名1を選択してOKボタン1103をクリック)、そのメンバプリンタである“メンバプリンタ名A”〜“メンバプリンタ名C”のプリンタドライバも自動的にクライアントに共有インストールされる(ステップS10−9〜S10−12)。
【0069】
次に図12を用いて上記図9のステップS9−6においてサーバPCにて登録されるプリンタ管理情報について説明する。尚、ここでの登録とはサーバPCに設けられた所定のハードディスク等の不揮発性記憶部に記憶させる処理を指す。なお、図12に示される管理情報はクライアント側からネットワーク106を介して登録変更できるようにしても良い。
【0070】
グループプリンタをマウス等のポインティングデバイスを介して選択し、プリンタの構成ボタン1101の指示に応じた信号が入力されると、選択されたグループプリンタに対応する出力方法等の各種設定およびグループプリンタを構成するメンバプリンタの設定を示す表示がクライアントの表示部にてなされる。よって、ユーザは所望のグループプリンタをインストールする前に事前にグループプリンタドライバの詳細な機能を確認することができる。
【0071】
ここで、グループプリンタドライバの詳細な情報を表示させるにあたっては、事前にサーバPCから取得した図12に示される情報に基づき表示を行わせるようにしても良いし、ユーザの指示により選択されたグループプリンタをサーバPCに通知するようにして、サーバPCからその都度、選択されたグループプリンタの詳細な情報を取得し、該取得した情報に基づきグループプリンタの詳細な情報を表示させるようにしても良い。
【0072】
さて、図12はプリンタ管理情報のテーブルの様子を図示したものであり、サーバPCとクライアントとで共有可能な情報となっている。グループプリンタ数1201は登録されたグループプリンタの数を示す。また、1210は各グループプリンタの情報を示している。ここで各グループプリンタの情報としては、グループプリンタ名1211、共有可能に設定されているか否かを示す共有情報1212が格納されている。また、設定情報1213としてポート情報(ポート名)、および分散印刷や同報印刷などの出力方法や、出力方法に必要な各種情報などが保持されている。
【0073】
また、メンバプリンタの情報としては、当該グループプリンタに含まれるメンバプリンタの数を示すメンバプリンタ数1214、それぞれのメンバプリンタ名1215等が保持されている。
【0074】
また、メンバプリンタの管理情報としては、総メンバプリンタ数1220と各メンバプリンタの情報1230が保持されている。総メンバプリンタ数1220は登録されているメンバプリンタの総数を示す。各メンバプリンタ情報としては、メンバプリンタ名1231、共有設定されているか否かを示す共有情報1232、ポート情報や出力方法に応じた設定情報1233等が保持されている。
【0075】
図12の例では、メンバプリンタの総数は4であり、メンバプリンタと名としてA,B,C,Dが保持されている。また、グループプリンタ数は2、グループプリンタ名1のグループプリンタではメンバプリンタが3つあり、それぞれのメンバプリンタ名はA,B,Cであり、グループプリンタ名2では、対応しているメンバプリンタが3つあり、それぞれのメンバプリンタ名はA、B,Dであることを表している。この情報に従って図11に示す如きUIが表示されることになる。
【0076】
図12中に示されるように、所定のグループプリンタにどのようなメンバプリンタが関連付けられているかは、テキストデータからなるメンバプリンタ名を利用して登録されており、グループプリンタが指定されると、それに関連付けられたメンバプリンタ名に従ったメンバプリンタ各が特定され、インストールに利用される。尚、グループプリンタとメンバプリンタとを関連付ける為の関連付情報はメンバプリンタ名に限定されるものではなく、例えば、メンバプリンタ名とは別途用意されたプリンタIDなどを利用することによっても実現できる。
【0077】
また、図12に示される管理情報は図9のステップS9−6でサーバPCにファイルあるいはメモリ上にテーブル形式で保存及び管理され、図10におけるステップS10−5でクライアント側からも参照可能となっているものである。例えば、図11のユーザーインターフェイスを介してグループプリンタ名1がユーザの指示に応じて選択されると、グループプリンタ名1のグループプリンタに係る情報を取得するべくクライアントからサーバPCに指示が発行される。これを受けたサーバPCではグループプリンタ名1にメンバプリンタ名A、B、Cのメンバプリンタが図12のテーブルに従い関連付けられているので、グループプリンタ名1のドライバ及び共有情報、設定情報、メンバプリンタ数、メンバプリンタ名A、B、Cと、メンバプリンタ名A、B、Cのプリンタドライバの実体及び各メンバプリンタドライバの共有情報、並びに設定情報をクライアントに提供する。
【0078】
このようにサーバPCでは図12のような情報を保持しているので、所定のグループプリンタの指示をクライアントから受けると、指示されたグループプリンタばかりでなく、そのグループプリンタに対応するメンバプリンタ及び付随する情報までもを一括してクライアントに提供することができる。
【0079】
次に本実施形態における、プリンタを複数台使用して、前述の分散、同報、代行といった印刷処理を行う、印刷ジョブ制御システムについて説明する。
【0080】
図13は本システムにおいてアプリケーションから発行された印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを示した図である。図13において、本システムはクライアント(クライアント102〜104における機能構成)とサーバ(サーバ101における機能構成)から構成されている。サーバ側はWindowsPrintSysytemと印刷ジョブ制御システムで構成されており、クライアントはサーバ上のプリンタドライバの共有によって関連つづけられているところを示している。
【0081】
まずこの共有について説明すると、クライアント上のグループプリンタ2301およびメンバプリンタドライバ2302−1,2302−2は夫々Windowsのプリンティングシステムの枠組みの中で、サーバ上のグループプリンタドライバ603、スプーラ(Sppoler)604、メンバプリンタドライバであるPDLドライバ602と共有プリンタドライバとして設定されている。図13ではグループプリンタの共有設定の関係を破線双方向矢印23−dで表している。
【0082】
同様に、メンバプリンタ同士の共有設定については、PDLドライバ2302−1とPDLドライバ602−1の共有プリンタの関係を破線23−eで、PDLドライバ2302−2とPDLドライバ602−2の共有プリンタの関係を破線23−fで、PDLドライバ2302−3とPDLドライバ602−3の共有プリンタの関係を破線23−gでそれぞれ示している。前述したようにいずれの場合も共有プリンタはWindowsPrintingSystemの仕組みを利用することにより実現可能であり、WindowsPrintingSystemの共有プリンタを調べる機能/共有プリンタに設定する関数を利用する機能を備えている。
【0083】
次に、図13を参照して印刷ジョブの流れについて説明する。通常、印刷の指示がされると文書作成ソフト等のアプリケーションプログラムは一連の描画命令をOSを介して生成し、生成された描画命令はプリンタドライバを経てWindows Spoolerに渡される。Windows Spoolerは、ユーザが選択したポートモニタにプリントジョブデータを渡してプリンタデバイスに送信させる手順をとる。
【0084】
本実施形態では、ユーザはあらかじめ印刷ジョブ制御システム用のポートモニタ621(以降、本実施例ではジョブ制御ポートモニタと略記)を指定して印刷を指示する。クライアント上のアプリケーションプログラム601は一連の描画命令をOSを介して生成する。図中矢印23−aのルートで描画命令を受け取ったグループプリンタ2301では、汎用形式のドキュメントデータを生成し、これを23−bのルートでWindows Spooler2303へ出力する。また、図中のグループプリンタ603に汎用形式のドキュメントデータを生成させる場合には、アプリケーションからの描画命令をグループプリンタ2301、Spooler2303を介してグループプリンタドライバ603に投入し、Spooler604に汎用ドキュメントデータを出力することとなる。
【0085】
前述したようにグループプリンタ2301とグループプリンタ603はWindowsのプリンティングシステムの中で共有設定されている為、Spooler2303に送られたジョブは、図中矢印23−cのルートでサーバ側のSpooler604に送られる。
【0086】
Windows Spooler604は受け取った印刷データをポートモニタではなく、ジョブ制御ポートモニタ621にプリントジョブデータとして送信する。ジョブ制御ポートモニタ621はプリントジョブデータをプリンタデバイス650に送信するのではなく、印刷ジョブ制御システム700内の印刷ジョブ制御システム用プリントサービス622(以降、本実施例ではジョブ制御プリントサービスと略記)に送信する。ジョブ制御プリントサービス622は、プリントジョブデータに対して、後述するような印刷ジョブ制御処理を行う。
【0087】
印刷ジョブ制御システム用プリントマネージャ623(以降、本実施例ではジョブ制御プリントマネージャと略記)は、ユーザがジョブ制御プリントサービス622内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作したりするためのユーザインタフェース(UI)を提供するプログラムである。ジョブ制御プリントマネージャ623はジョブ制御プリントサービス622のソフトウェアのインタフェース(API)を介して、ジョブ制御プリントサービス622と情報・指示をやり取りしている。
【0088】
印刷ジョブ制御システム700内の印刷ジョブ制御システム用サーバ630(以降、本実施例ではジョブ制御サーバと略記)は、複数のクライアントからの複数の印刷要求に応じてジョブ制御プリントサービス622がプリンタデバイス650にプリントジョブデータを送信するタイミングを集中制御(スケジューリング)している。
【0089】
印刷ジョブ制御システム用マネージメントコンソール633(以降、本実施例ではジョブ制御マネージメントコンソールと略記)は、ジョブ制御サーバ630が持つソフトウェアがアクセスするためのAPIを介してジョブ制御サーバ630と情報・指示をやり取りすることで、印刷ジョブ制御システム全体を監視することができる。
【0090】
また、ジョブ制御サーバ630はデバイス情報コントロールモジュール631を用いて各プリンタデバイス650と通信を行い、各プリンタ内の印刷ジョブや動作状態に関する情報を入手したり、操作を行ったりする。入手した情報はジョブ制御プリントサービス622に渡すことができる。
【0091】
ジョブ制御プリントサービス622は、論理ポート(Logical Port)710により前述した汎用形式のドキュメントデータを含むプリントジョブを受け取り、汎用印刷ファイル生成部702によって、このプリントジョブに対して汎用印刷ファイルを生成する。
【0092】
そして、デスプーラ701がその汎用印刷ファイルをもとに描画コマンドを生成し、(c)の経路で描画コマンドを受け取ったPDLドライバ602がその描画コマンドをプリンタデバイス650が解釈可能なPDLファイルにする。ここで、複数のPDLドライバ602には後述する”機能制御可能なドライバ”と”機能制御不可なドライバ”とが混在している場合もある。図13では、ジョブ制御プリントサービス622で、このプリントジョブに対して分散印刷などプリントジョブを2つに分けるジョブ制御が行われる例で、2つのメンバジョブが生成された例を2つの矢印(c)で示している。PDLドライバ602で生成されたPDLファイルはWindows スプーラ604、ジョブ制御ポートモニタ621を経て(d)、再びジョブ制御プリントサービス622に渡される (e)。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の指示に従ってPDLのプリントジョブデータをプリンタデバイス650に送信する(f)。
【0093】
ジョブ制御プリントサービス622は、生成した汎用印刷ファイル中の印刷指示書の指示にしたがって、一つの汎用印刷ファイルを複数のプリントジョブに論理的に分割してそれぞれ別のプリンタデバイスに送信したり、一度送信したプリントジョブデータを別のプリンタデバイスに送信し直したりする。図13中の(c)、(d)、(e)、(f)はそのような場合のプリントジョブデータの経路を示している。
【0094】
次にWindowsが提供するPrintSystem800と印刷ジョブ制御システム700における印刷ジョブの関係と処理概要をさらに詳しく述べる。
【0095】
図13中で印刷ジョブ制御システム700は、印刷ジョブ制御システムの範囲を示している。また、出力ポート(Output Port)711は、ジョブ制御プリントサービス622のプロキシ出力ポート(Proxy Output Port)712と関連付けられ、管理されている。本実施形態では、実際のプリントジョブデータはプロキシ出力ポート712に保持される。ジョブ制御サーバ630は、プリントジョブデータ自体の送信処理は行わず、ジョブ制御プリントサービス622に対して印刷ジョブの送信指示のみを行う。その指示に応じてジョブ制御プリントサービス622はプリントジョブデータをデバイス650に送信する。
【0096】
この処理において本実施例ではジョブ制御サーバ630は印刷ジョブ制御システム700として、ジョブ制御プリントサービス622と同じサーバPC上にインストールされ存在するが、ジョブ制御サーバ630を印刷ジョブ制御システムとして別のPC上にインストールし、サーバのごとく動作することも可能である。この場合実際のジョブ制御サーバ630が管理している出力ポート711はそれぞれのジョブ制御プリントサービス622のプロキシ出力ポート712と関連付けられ、ひとつのポートに関連づけられた各PC上のプロキシ出力ポート全てを統一的に管理することとなる。
【0097】
次に、印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合の処理を説明する。尚、ここでの付加価値的な印刷は、クライアントPCがサーバPCから共有されたメンバプリンタを含むグループプリンタをセットアップし、該セットアップされたグループプリンタに関連付けられた出力方法に従う印刷指示を実行した際に処理されるものとする。
【0098】
印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合には、前述のようにユーザまたはアプリケーション601はグループプリンタ2301が割り当てられたプリンタに印刷ジョブを発行しなければならない。ジョブ制御プリントサービス622は、グループプリンタ2301によって処理されたジョブデータをジョブ制御ポートモニタ621を介して汎用形式のドキュメントデータおよび印刷指示情報の一連のジョブデータとして受け取る。論理ポート(Logical Port)710は、このジョブの受け入れ口である。ジョブ制御プリントサービス622は論理ポート710で受け取ったパケット化されたデータジョブを受け取り、汎用印刷ファイル生成部702に渡す。汎用印刷ファイル生成部は前述した、受け取ったデータジョブを汎用印刷ファイル703の形式に生成しなおし、汎用印刷ファイル703として書き出す。
【0099】
次にデスプーラ(Despooler)701がこの汎用印刷ファイル703を読み込み、PDLドライバが割り当てられた別のプリンタにジョブ(メンバジョブ)を発行して印刷を行わせる。この時、デスプーラ701は前述の図6で説明した汎用印刷ファイルの印刷指示部6−aを解釈し、ドキュメントデータ部6−bのドキュメントデータを加工して、WindowsのGDIに変換し、各プリンタドライバに対して印刷指示を行い印刷ジョブを発行する。例えば印刷体裁指定部に、2−UPの指示が記録されていた場合、用紙1枚に2ページ分のドキュメントデータを縮小レイアウトする。また分散印刷あるいは同報印刷の場合には、それらの設定に応じて印刷指示部6−aに記述されている複数のメンバプリンタにジョブを発行する。代行印刷の場合は、代行する条件が満たされた時に、自動代行では事前の設定、手動代行ではユーザの操作に応じてメンバジョブを発行する。図では前述のとおり分散印刷などにおけるメンバジョブを2つに分けて発行している様子を示している。
【0100】
また、デスプーラ701は各メンバプリンタにジョブを発行する際、メンバプリンタドライバに対応する印刷指示として、各メンバプリンタのDEVMODEを作成する必要があるが、このDEVMODEは印刷指示部6−aに記載された内容を適宜各メンバプリンタのDEVMODEに反映させて生成する。
【0101】
ジョブ制御プリントサービス622は、PDLドライバ602によってレンダリングされた、それぞれのメンバジョブのPDLデータをジョブ制御ポートモニタ621を介して受け取り、受け取ったジョブに関する情報をサーバ側に知らせ、ジョブデータは自身のプロキシ出力ポート712A,Bで一時保持する。その後、ジョブ制御サーバ630からの送信指示を受けた後にプリントデバイス650に送信する。
【0102】
次にグループプリンタ2301が備えられたクライアントにて表示されるプリンタ情報の取得方法について説明する。
【0103】
図13において、印刷ジョブ制御システム内のプリンタ情報管理部704は、前述したセットアップ時にユーザが入力したプリンタ情報および、ジョブ制御サーバ630からデバイス状態を取得し、管理している部分である。
【0104】
また、プリンタ情報管理部2304はクライアント内にも存在し、サーバ内のプリンタ情報管理部704と通信することが可能である。実線23−jはその関係を示したものである。グループプリンタ2301はプリンタ情報の取得のために、クライアント内のプリンタ情報管理部2304のAPIをコールし取得する。APIコールされたプリンタ情報管理部2304は、サーバ上のプリンタ情報管理部704に23−jの経路で問い合わせ、プリンタ情報を取得し、グループプリンタに返す。
【0105】
プリンタ情報のアップデートは、グループプリンタ2301の指示により、動的にプリンタ情報管理部704がジョブ制御サーバ630に問い合わせて最新の情報を取得してもよいし、また、プリンタ情報管理部704がジョブ制御サーバ630の通知を受けて自動的にアップデートする方法でもよい。例えば最新の情報としては、グループプリンタに関連付けられたメンバプリンタの組み合わせがサーバPC上で変更されて登録されたなどの情報が挙げられる。
【0106】
ここで、本実施形態における、共通設定領域と、拡張設定領域といった記憶領域をもつプリンタドライバを持つプリンタを複数台使用して、前述の分散、同報、代行といった印刷処理を行う、印刷ジョブ制御システムのためのプリンタドライバのUI制御について説明する。この説明はクライアントPCがサーバPCにて共有設定されたメンバプリンタを含むグループプリンタをセットアップした際に、どのような種別のメンバプリンタの組み合わせがなされているかに応じてなされるものであり、”機能制御可能なドライバ”と”機能制御不可なドライバ”とがどのように組み合わされているかに応じて処理される。
【0107】
ここで、機能制御可能/不可能について説明をすると、機能制御可能なメンバプリンタドライバとは、グループプリンタドライバが備えるSDK(SoftwareDevelopmentKit)を介して操作可能なものを指す。グループプリンタドライバはSDKに対応するメンバプリンタに対しては、例えばメンバプリンタドライバの拡張設定項目を設定したり、グレーアウト表示などの表示制御を行えたり、様々な事項についての問合せを行うことができる。機能制御不可能とは機能制御可能の逆のメンバプリンタドライバを指す。
【0108】
図14は、本実施形態によるグループプリンタのUIによる制御手順を示すフローチャートである。なお、図14に係る処理は、クライアントにおいて、インストールされたグループプリンタドライバを用いて行われる。アプリケーションからグループプリンタへのUI表示要求が来ると、処理はステップS14−1へ進む。
【0109】
ステップS14−2では、印刷ジョブ制御システムAPIを使って、グループプリンタを構成するメンバプリンタドライバの識別ID(例えばプリンタドライバ名)を問い合わせる。ここでは、グループプリンタを構成する全てのメンバプリンタドライバの識別IDを獲得する。ステップS14−3では、グループプリンタに対して登録されている各メンバプリンタドライバの識別IDよりメンバプリンタドライバの能力を取得する。ここでは、グループプリンタを構成する全てのメンバプリンタドライバに対して、ドライバ機能の取得がドライバ設定情報の拡張領域の部分まで可能かつドライバUI制御が可能な“機能制御可能なドライバ”か、または、それ以外の“機能制御不可なドライバ”かを判定するための情報が取得される。
【0110】
ステップS14−4では、ステップS14−3で取得した機能制御可否の情報より、メンバプリンタの構成を判定する。この判定の結果、全てのメンバプリンタが“機能制御可能なドライバ”である場合はステップS14−5へ、それ以外の場合はステップS14−6へ進む。
【0111】
図15に本実施形態のメンバプリンタの構成と、設定可能項目の対応を示す。また、図16に、共通設定項目・拡張設定項目と各設定項目の対応を示す。
【0112】
なお、本実施形態では、共通設定項目と拡張設定項目を図16の如く分類し、規定しているが、印刷ジョブ制御システムを運用するOSの違いによっては、設定項目の分類が異なる場合や設定可能項目に変更がある場合があることはいうまでもない。図16と分類項目が異なっていても、図14に示すUI制御フローが有効であることは明らかである。
【0113】
ステップS14−5では、全てのプリンタドライバが機能制御可能である場合のUI(機能制御可能なUIという)を表示する。図18は、ステップS14−5による機能制御可能なUIのための処理手順を示すフローチャートである。
【0114】
まず、ステップS18−1において、各メンバプリンタドライバの個々の共通設定項目に関する能力を問い合わせ、機能のコンフリクト処理を行い、その結果に基づきグループプリンタUIで表示する項目の選択を行う。機能のコンフリクト処理とは、グループプリンタの対象となる各メンバプリンタドライバに対して、各設定項目の機能のあり、なしをチェックし、対象となるメンバープリンタドライバ全てにその機能がある場合にグループプリンタUIでその機能を設定可能項目として扱い、また、1台でもその機能がないものがあればその項目については設定不可項目として扱う処理である。
【0115】
具体例を示して上述した機能のコンフリクト処理を説明する。図17中のプリンタドライバAは、グループプリンタを表しプリンタドライバ、B,C,DはグループプリンタAを構成するメンバプリンタドライバを表す。また、表中の、“あり”、“なし”は各メンバプリンタドライバが製本印刷機能、ステイプル印刷機能、パンチ機能をサポートしているかどうかを示したものである。
【0116】
まず製本印刷機能に着目すると、メンバプリンタB、Dには製本印刷機能があるがメンバプリンタCにはその機能がないため、グループプリンタAの製本印刷機能は“なし”となる。同様に、ステイプル機能は、B,C,D全てのメンバプリンタドライバが有しているため、グループプリンタAのステイプルは“あり”となる。更に、パンチ機能は、B,C,D全てのメンバプリンタドライバに存在しないため、グループプリンタAのパンチ機能は“なし”となる。
【0117】
ステップS18−2では、ステップS18−1で示した機能のコンフリクト処理を各メンバプリンタドライバの拡張設定項目に関して行う。以上のコンフリクト処理の結果、グループプリンタドライバとして機能のないものについては、UI上で設定が行えないよう、対応する項目をグレーアウト表示、もしくは非表示にするといったUI制御を行う。グループプリンタドライバとして機能があると判定された項目についてはそのようなUI制御は行わない。
【0118】
図21にUIのグレーアウト表示制御が施された一例を示す。設定項目の両面印刷2102、製本印刷2103のダイアログボックスが上述のUI制御(グレーアウト表示)を施した部分である。尚、グループプリンタのUIにおけるこのようなの表示制御としては、グレーアウト表示制御に限定されるものではなく、非表示とするような制御も適用可能であることは上述のとおりである。
【0119】
また、本ステップでは、ユーザの指定により、たとえば「製本印刷」が指定された時のパンチや、ステイプルの指定といった、機能上ありえない組み合わせが設定できないようUI制御を行い設定項目に矛盾が発生しないようにする。
【0120】
次に、ステップS18−4では、グループプリンタUI上で設定対象のメンバプリンタが指定されたか否かを判定する。メンバプリンタが指定されておれば、ステップS18−5へ進み、指定されたメンバプリンタドライバのUIを開き、詳細設定を可能とする。こうして、グループプリンタUI上に設定項目がない項目について、メンバプリンタのUIを開き詳細に設定させることができる。
【0121】
なお、メンバプリンタドライバUIを開いた場合、グループプリンタで設定可能な項目についても設定可能となり、同一機能について2重に設定がなされる可能性がある。このため、以下に示すUI制御を施し表示を行う。
【0122】
▲1▼メンバプリンタが“機能制御可能なドライバ”である場合、グループプリンタUI上の設定項目と競合する項目については、メンバプリンタドライバUIでの設定が行えないように、項目をグレーアウト表示、もしくは非表示としてUI制御する、
▲2▼メンバプリンタが“機能制御不可なドライバ”である場合、共通設定項目についてはメンバプリンタドライバで設定された設定でUI表示する。UI表示後、メンバプリンタドライバUI上でその項目について変更がなされた場合、ドライバUIを閉じるステップでグループプリンタで設定された設定項目の情報を対応するメンバプリンタドライバの共通設定項目に上書きし、メンバプリンタUI上での設定変更を許さない。
【0123】
また、上書き処理を行う際に、メンバプリンタUI上での設定変更が無効であるといった警告表示を行うことも可能である。なお、本ステップでは、対象となるメンバプリンタ全て“機能制御可能なドライバ”であるため上記の▲1▼のUI制御が行われる。
【0124】
図14に戻り、ステップS14−4で“機能性が可能なドライバ”以外のドライバが存在すると判定されると処理はステップS14−6へ進み、これに対応したUI(以下、機能制御不可な場合のUIという)を表示する。図19は、ステップ14−6における、機能制御不可な場合のUIに関る処理の詳細を表したフローチャートである。
【0125】
ステップS14−6ではメンバプリンタドライバの構成がステップ14−5の場合と異なり“機能制御可能なドライバ”と“機能制御不可能なドライバ”とが混在している。したがって、グループプリンタUIで設定可能な項目は、共通に設定情報の読み書きが可能な基本設定項目に限定される。
【0126】
ステップS19−1では、ステップS18−1と同様に各メンバプリンタドライバの個々の共通設定項目に関する能力を問い合わせて、機能のコンフリクト処理を行い、その結果に基づきグループプリンタUIで表示する項目の選択を行う。そして、ステップS19−2において、ステップS14−1で行ったUIコンフリクト処理の結果に基づきグループプリンタUIの表示を行う。ここでは、拡張設定項目と、コンフリクト処理によって使用できないと判定された機能については、UI上で設定が行えないよう項目をグレーアウト表示もしくは非表示とする。
【0127】
ステップS19−3では、グループプリンタUI上で設定対象のメンバプリンタ指定されたか否かを判定する。メンバプリンタが指定されている場合は、ステップS19−4へ進み、指定されたメンバプリンタドライバのUIを開き、詳細設定を可能とする。こうして、グループプリンタUIでは設定が不可能であった拡張設定項目及び各メンバプリンタが持つ固有の設定項目について詳細設定を行うことが可能となる。
【0128】
図20は、ステップS19−4の詳細を表したフローチャートである。ステップS20−1では、メンバプリンタドライバの種別判定を行い、対象ドライバが“機能制御可能なドライバ”であれば、ステップS20−2へ、それ以外であればステップS20−3へ進む。ステップS20−2では、共通設定項目に対してUIのグレーアウト制御等を施したUI表示を行い、ステップS18−5で上述した▲1▼のUI制御規則に則してメンバプリンタドライバの共通設定項目UIの制御を行う。ステップS20−3では、ステップS18−5で上述した▲2▼のUI制御規則に則して、メンバプリンタドライバの共通設定項目UIの制御を行う。
【0129】
再び図14に戻り、ステップS14−7でグループプリンタUI上のOK(設定終了)ボタンがクリックされたか判定し、クリックされていればステップS14−8へ進む。OK(設定終了)ボタンがクリックされていない場合はステップUIを表示し続けるがごとくS14−7からステップS18−3或いはステップS19−2に戻る。
【0130】
ステップS14−8では、グループプリンタで設定した項目が各メンバプリンタドライバの設定項目として矛盾がないかどうかをチェックする。たとえば、
プリンタAでは、A4用紙にステイプル可能な位置は用紙左上のみ、
プリンタBでは、A4用紙にステイプル可能な位置は用紙左下のみ、
といった様に、プリンタにはデバイスのもつ機能に密接に関連した項目があり、本ステップでは、各メンバプリンタに設定機能上ありえない組み合わせについてのコンフリクトチェックを行なう。また、この他に、各メンバプリンタドライバに対して、グループプリンタUI上で設定した項目が、各メンバプリンタドライバの設定項目として反映可能かどうかを、メンバプリンタドライバを対象にチェックを行う。
【0131】
ステップS14−9において、ステップS14−8で行ったコンフリクトチェックの結果がOKであった場合、すなわち、グループプリンタUI上で設定した設定項目が全てのメンバプリンタについて妥当であった場合には、ステップS14−12に進み、グループプリンタUIの表示を終了する。
【0132】
一方、ステップS14−9において、設定項目にコンフリクトが発生する項目があると判定された場合には、ステップS14−10へ進む。ステップS14−10では、「グループプリンタUI上で設定項目を再設定するか、もしくは、現状の設定項目で印刷処理を行うか」といったメッセージと共に、再設定、強行ボタンをUI表示する。再設定ボタンが押された場合には、メンバプリンタの構成によって、ステップS14−11からステップS18−3またはステップS19−2の直前に戻る。また、強行ボタンが押された場合には、ステップS14−11からステップ14−12に進みグループプリンタUIの表示を終了する。
【0133】
次に、本実施形態における前述のUI(例えば図21)で設定された情報の記録と前述の図6における汎用印刷ファイルとの関係について説明する。
【0134】
本実施形態においては、前述のUIで設定された情報について、グループプリンタのドライバ設定情報(DEVMODE)は共通領域、拡張領域共に、前述の図6で説明した汎用印刷ファイル内の印刷体裁指示部603に記録される。また、各メンバプリンタのドライバ設定情報(DEVMODE)は、共通領域、拡張領域共に、汎用印刷ファイル内の対応するメンバプリンタドライバ設定情報部608に記録されることとなる。
【0135】
その後、本汎用印刷ファイルは前述図13を用いて説明した印刷ジョブ制御システムを使ったプリンティング処理にて利用され、本実施形態における代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行うことが可能となる。
【0136】
〔第2実施形態〕
第1実施形態では、所定のグループプリンタをクライアントからサーバPCに対して指示し、サーバPCから指定したグループプリンタを構成するメンバプリンタドライバをクライアントにて取得するように説明したが、これは図14、図18、図19、図20の各フローチャートに基づく処理を実行するにあたってのグループプリンタの設定画面の各項目の有効/無効を制限する為の情報として取り込むものであった。
【0137】
そこで、更なる応用例としては、メンバプリンタに対応するメンバプリンタドライバそのものを全て取得するのではなくて、図14、図18、図19、図20の各フローチャートを実行するのに必要な情報のみを取得するようにすることが考えられる。これは、各プリンタドライバに対応したページ記述言語生成モジュールを除き、各メンバプリンタ(メンバプリンタドライバ)の識別IDと能力の情報をクライアントに取得する処理に対応することとなる。
【0138】
尚、図1〜図21において説明してきた仕組みは第2の実施形態においても基本的には同様のものとするが、図10のステップS10−11、S10−15にて例えばページ記述言語生成モジュールなどを除くメンバプリンタの情報がクライアントにインストールされることとなる。
【0139】
このようにページ記述言語生成モジュールを除いて、グループプリンタの設定画面の表示制御を行う為の情報を取得するようにすれば、サーバPCとクライアントとの通信負荷を第1の実施形態に比べて軽減できると共に、クライアント側のメモリ量も軽減することができるようになる。
【0140】
更にインターネットプロトコルに従う各種通信をクライアントとサーバPCとの間で行わせることにより、第1実施形態にて説明してきたインターネットを介したインターネットプリンティングに適用することなども想定される。
【0141】
〔その他の実施形態〕
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0142】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0143】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0144】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0145】
以上説明したように、上記実施形態によれば、複数の物理プリンタ(メンバプリンタ)の各々に対応するセットアップ用データを格納するサーバ(プリンタサーバ)とこのサーバを介して物理プリンタを利用可能なクライアントを含む印刷システムにおいて、まずサーバにおいて、複数の物理プリンタを含んで構成される仮想プリンタ(グループプリンタ)が登録される(S9−4〜S9−6)。そして、クライアントにおいて、サーバに登録された仮想プリンタの一つが指定されると(S10−5、S10−6)、指定された仮想プリンタがクライアントよりサーバに通知される。この指定された仮想プリンタの通知を受けて、指定された仮想プリンタとこの仮想プリンタに含まれる物理プリンタのためのセットアップ用データ(例えばプリンタドライバ)がサーバより当該クライアントに送信される(S10−8〜S10−12)。
【0146】
このため、クライアントでは所望の仮想プリンタを指定するだけで、当該仮想プリンタに設定された出力方法のみならず当該仮想プリンタを構成する物理プリンタのセットアップ用データを自動的に取得することができる。従って、例えば、セットアップ用データが指定された仮想プリンタに含まれる物理プリンタのプリンタドライバを含むようにすれば、仮想プリンタを指定することによって当該仮想プリンタに含まれる物理プリンタのドライバが自動的にインストールされることになる。すなわち、サーバにて管理されるメンバプリンタを含むグループプリンタを、クライアントにて容易にセットアップする仕組みが提供されることになる。ユーザはサーバに管理されるグループプリンタを指定するだけで、関連するメンバプリンタを字装置に取り込むことができることになる。更にこの場合には図9のフローチャートに従って設定された仮想プリンタポートや出力方法などの各種設定をもクライアントにセットアップすることが可能となる。よって、ユーザによる、仮想プリンタの出力方法や、仮想プリンタポートや、メンバプリンタの関連付け及びメンバプリンタのプリンタポートなどの煩雑な各種設定を軽減することが可能となる。
【0147】
また、上記実施形態によれば、クライアントは、送信工程で送信されたセットアップ用データに基づいて、仮想プリンタの設定用インターフェースを提供する。このため、各クライアントで仮想プリンタによる出力形態や出力方法等を所望に設定することが可能となる。
【0148】
また、特に上記第2実施形態によれば、上記セットアップ用データとして、設定用インターフェースの各設定項目の有効/無効を判定するのに利用可能な情報を含むデータがクライアントに提供される。実際のPDLデータをプリンタサーバにて生成する構成とした場合、PDLを生成するモジュール部分はクライアントに取り込む必要性は本来はない。この場合、クライアントには、コンフリクト処理を行うための情報が提供されればよいことになる。すなわち、クライアントへ提供されるメンバプリンタの情報はプリンタドライバそのものに限定されるものではなく、コンフリクト処理に必要な部分のみがクライアントに取得されるようにしてもよい。
【0149】
また、上記実施形態によれば、セットアップ用データは、指定された仮想プリンタに含まれる物理プリンタのプリンタドライバを含み、クライアントは送信された物理プリンタドライバに対して所有する機能を問い合わせ、該物理プリンタドライバが所有する機能を取得し、取得された物理プリンタドライバの能力に応じて仮想プリンタの設定用インターフェースにおける設定可能な項目を判定し、この判定結果に基づいて設定用インターフェースにおける設定画面を表示制御する。特に、実施形態では、上記のような設定用インターフェースの提供機能を仮想プリンタドライバに持たせている。
【0150】
すなわち、実施形態によれば、仮想プリンタ(グループプリンタ)に束ねられた複数の物理プリンタ(メンバプリンタ)に対して印刷ジョブを制御する印刷処理システムにおいて、1つの仮想プリンタが共有プリンタとして設定されているとき、該グループプリンタがそれぞれのメンバプリンタの能力を問い合わせ、UIの制御を行うことを可能としている。また、サーバ上で設定された各メンバのプリンタ情報を、クライアント側で取得し、表示することを可能としている。こうして、クライアントは、取り込んだメンバプリンタドライバを利用して適切なコンフリクト処理が施されたグループプリンタ設定画面を表示することが可能となる。
【0151】
また、上記実施形態によれば、設定用インターフェースを介して設定された設定に基づいて、仮想プリンタに含まれる物理プリンタに対して設定指示を行われる。この結果、仮想プリンタドライバによる設定用インターフェースを持ち知恵設定された内容で印刷を実行することができ、ユーザは所望の印刷結果を得られることになる。
【0152】
【発明の効果】
以上説明したように、本発明によれば、複数のメンバプリンタから構成されるグループプリンタを利用して印刷を行う環境において、効率よくクライアントにグループプリンタとメンバプリンタをインストールすることが可能となる。
【図面の簡単な説明】
【図1】実施形態による印刷システムの構成を説明するブロック図である。
【図2】実施形態による情報処理置の構成を説明するブロック図である。
【図3】図2に示したRAM202のメモリマップの一例を示す図である。
【図4】図2に示したFD204のメモリマップの一例を示す図である。
【図5】図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図である。
【図6】汎用印刷ファイルの構造を示す図である。
【図7】グループプリンタのUIの例を示す図である。
【図8】グループプリンタのUIの例を示す図である。
【図9】サーバにおけるセットアップの手順を示したローチャートである。
【図10】クライアントにおけるセットアップの手順を示したフローチャートである。
【図11】セットアップ画面の例を示す図である。
【図12】プリンタ管理情報のテーブルの様子を示す図である。
【図13】実施形態による情報処理装置のプリント制御モジュール構成を説明するブロック図である。
【図14】グループプリンタドライバのUI制御を説明するフローチャートである。
【図15】メンバプリンタの構成と、設定可能項目の対応を示す図である。
【図16】共通設定項目・拡張設定項目と各設定項目の対応を示す図である。
【図17】グループプリンタドライバのUI表示のための機能コンフリクトの例を示す図である。
【図18】グループプリンタドライバのUI制御を説明するフローチャートである。
【図19】グループプリンタドライバのUI制御を説明するフローチャートである。
【図20】グループプリンタドライバのUI制御を説明するフローチャートである。
【図21】グループプリンタのUIの例を示す図である。[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to print control including setup of a group printer in a print system that performs print processing based on a drawing instruction from an application.
[0002]
[Prior art]
In recent years, network devices have been generally used, and a large number of personal computers (hereinafter, referred to as PCs) and printers have been connected on the network. In such a network environment, various control methods have been proposed to effectively utilize a plurality of printers.
[0003]
For example, when printing in the above network environment, for a document having a large number of pages or a document having a large number of copies, the print job is spooled once, and is output to a plurality of printers in a distributed manner for each page or each number of copies. (Distributed printing system) has been proposed. In a network environment as described above, for one document in which color pages and monochrome pages are mixed, a color page is converted to a color printer, and a monochrome page is converted to a monochrome printer in order to reduce printing cost and printing time. There is known a system for distributing and outputting to a printer (color / monochrome distributed printing system).
[0004]
Further, in such a network environment, a system (broadcast printing system) for simultaneously transmitting and printing one document to a plurality of printers with a single print instruction is known. Also, in such a network environment, a system (error proxy printing system) for automatically switching to another printer and printing when an error occurs in a document transmitted to one printer in the printer is known. ing. Further, in a printing system in such a network environment, one virtual printer (group printer) is provided, and when a print instruction is issued to the printer, one virtual printer temporarily spools a print job, and A method is known in which after generating print data, general-purpose print data is transmitted to a subsequent printing system, and the printing system receives and processes the general-purpose print data.
[0005]
Further, in the printing system in the network environment as described above, one virtual printer (group printer) and a plurality of member printers associated therewith are provided on one client machine, and the group printer is assigned to each member printer. A method of inquiring the capability and controlling the UI is known.
[0006]
Patent Document 1 discloses a mechanism for providing a client with a logical printer based on the functions of a plurality of physical printers connected via a server. Further, Patent Literature 2 discloses that a virtual printer driver is installed in a computer.
[0007]
[Patent Document 1]
JP 09-258930 A
[Patent Document 2]
JP 2001-290625 A
[0008]
[Problems to be solved by the invention]
However, according to Patent Literature 1, although the user can effectively use the functions of a plurality of physical printers, he cannot obtain a virtual printer according to a desired output method or the like. Further, according to Patent Document 2, although it is disclosed that a virtual printer driver is installed in a client, it does not disclose how to install the virtual printer driver in a specific manner. There is room for improvement in installing it on the client.
[0009]
SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and in an environment in which printing is performed using a group printer including a plurality of member printers, it is possible to efficiently install a group printer and a member printer on a client. The purpose is to do.
[0010]
[Means for Solving the Problems]
A control method of a printing system according to the present invention for achieving the above object,
A method for controlling a printing system including a server storing setup data corresponding to each of a plurality of physical printers and a client capable of using the physical printer via the server,
In the server, a registration step of registering a virtual printer including a physical printer selected from the plurality of physical printers,
At the client, a designation step of designating the virtual printer registered in the registration step;
A notification step of notifying the virtual printer designated in the designation step from the client to the server,
Receiving a notification of the designated virtual printer by the notifying step, and transmitting a setup data for the designated virtual printer and a physical printer included in the virtual printer from the server to the client. Prepare.
[0011]
Further, a printing system according to the present invention for achieving the above object has the following configuration. That is,
A printing system including a server that stores setup data corresponding to each of a plurality of physical printers, and a client that can use the physical printer via the server,
A registration unit configured to register a virtual printer including a physical printer selected from the plurality of physical printers in the server;
A designation unit for designating the virtual printer registered in the registration unit in the client;
Notification means for notifying the virtual printer designated by the designation means from the client to the server;
A transmitting unit for transmitting, from the server to the client, setup data for the designated virtual printer and a physical printer included in the virtual printer, in response to the notification of the designated virtual printer by the notifying unit. Prepare.
[0012]
An information processing apparatus according to the present invention for achieving the above object has the following configuration. That is,
An information processing apparatus that stores setup data corresponding to each of a plurality of physical printers and functions as a print server that controls printing by the physical printer in response to a print instruction from a client,
A registration unit configured to register a virtual printer including a physical printer selected from the plurality of physical printers in the server;
Receiving means for receiving a virtual printer designation notification from the client;
And transmitting means for transmitting setup data for a virtual printer specified in the notification and a physical printer included in the virtual printer to the client.
[0013]
An information processing apparatus according to the present invention for achieving the above object has the following configuration. That is,
An information processing apparatus that functions as a client that uses a physical printer via a server that stores setup data corresponding to each of a plurality of physical printers,
Acquisition means for acquiring a virtual printer configured to include a physical printer selected from the plurality of physical printers, registered in the server;
Designation means for designating one of the virtual printers acquired by the acquisition means;
And a receiving unit for notifying the server of the virtual printer designated by the designation unit to the server, and receiving setup data for the designated virtual printer and a physical printer included in the virtual printer from the server.
[0014]
Further, the information processing method according to the present invention for achieving the above object,
An information processing method that stores setup data corresponding to each of a plurality of physical printers and functions as a print server that controls printing by the physical printer in accordance with a print instruction from a client,
In the server, a registration step of registering a virtual printer including a physical printer selected from the plurality of physical printers,
A receiving step of receiving a virtual printer designation notification from the client;
Transmitting the setup data for the virtual printer specified in the notification and the physical printer included in the virtual printer to the client.
[0015]
Further, the information processing method according to the present invention for achieving the above object,
An information processing method that functions as a client that uses a physical printer via a server that stores setup data corresponding to each of a plurality of physical printers,
An acquisition step of acquiring a virtual printer configured to include a physical printer selected from the plurality of physical printers, registered in the server;
A designation step of designating one of the virtual printers acquired in the acquisition step,
A receiving step of notifying the server of the virtual printer specified in the specifying step to the server, and receiving setup data for the specified virtual printer and a physical printer included in the virtual printer from the server.
[0016]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.
[0017]
[First Embodiment]
FIG. 1 is a block diagram illustrating a configuration of an information processing system to which the present invention can be applied. It is assumed that one or a plurality of client computers in this system are connected.
[0018]
In FIG. 1, reference numerals 102, 103, and 104 denote information processing apparatuses as client computers (clients), which are connected to a network 106 by a network cable such as Ethernet (registered trademark). Each of the client devices 102 to 104 can execute various programs such as an application program, and has a printer driver having a function of converting print data into a printer language corresponding to the printer. The printer driver supports a plurality of printer drivers.
[0019]
An information processing apparatus 101 is a server (hereinafter, referred to as a print server) according to the present embodiment, and is connected to a network 106 via a network cable. The print server 101 accumulates files used on the network, and monitors the usage status of the network 106. The print server 101 manages a plurality of printers connected to the network 106.
[0020]
Note that the clients 102 to 104 and the print server 101 can be configured by storing a print control program for performing different controls in a general information processing apparatus in an executable manner.
[0021]
When a general information processing apparatus is used as the print server 101, the functions of the clients 102 to 104 can be provided at the same time. The print server 101 according to the present exemplary embodiment further stores a print job including print data output from the clients 102, 103, and 104 and causes the printer to print the print job, or does not include print data from the clients 102, 103, and 104. Receives a print job, manages the print order of the clients 102, 103, and 104, notifies the client in the print order of transmission permission of a print job including print data, and reports the status of the network printer 105 and the print job A function of acquiring various information and notifying the clients 102, 103, and 104 is provided.
[0022]
Reference numeral 105 denotes a network printer, which is connected to the network 106 via a network interface (not shown). The network printer 105 analyzes a print job including print data transmitted from the client computers 102 to 104, converts the print job into a dot image one page at a time, and prints one page at a time. Reference numeral 106 denotes a network, which is connected to the clients 102, 103, and 104, the server 101, the network printer 105, and the like.
[0023]
FIG. 2 is a block diagram illustrating a configuration of an information processing apparatus that can be used as the clients 102 to 105 and the print server 101 according to the present embodiment. As described above, the clients 102, 103, 104 and the print server 101 can be realized by an information processing apparatus having a similar hardware configuration. Hereinafter, FIG. 2 will be described as a block diagram illustrating the configuration of the client and the server.
[0024]
In FIG. 2,
[0025]
A
[0026]
[0027]
[0028]
A
[0029]
FIG. 3 is a diagram showing an example of a memory map of the
[0030]
In the present embodiment, an example in which the network printer control program and related data are directly loaded from the
[0031]
Further, the network printer control program may be simply referred to as a print control program. The print control program includes a program for instructing the clients 102 to 104 to change the print destination of the print job and changing the print order. Further, the print control program includes a program for controlling the order of print jobs in the print server 101, and for notifying a print end of a print job, a print destination change request, and the like. In the print control program according to the present embodiment for performing such control, modules installed in the clients 102 to 104 and modules installed in the print server 101 may be separately separated. Alternatively, one print control program may function for a client or for a print server depending on the execution environment. Alternatively, it is also possible to adopt a configuration in which a module having a function for a client and a module functioning as a function for a print server are installed together in one computer, and they are operated simultaneously or in a time-division manner in a pseudo-parallel manner.
[0032]
In FIG. 3,
[0033]
FIG. 4 is a diagram illustrating an example of a memory map of the
[0034]
FIG. 5 is a diagram showing the relationship between the FD drive 203 shown in FIG. 2 and the
[0035]
FIG. 6 is a diagram illustrating a schematic configuration example of a general-purpose print file handled in the present embodiment. This general-purpose print file is generated by a general-purpose print
[0036]
The general-purpose print file used in the present embodiment is generated in the process of giving a print instruction to a group printer described later, and includes a print instruction unit 6-a and a document data unit 6-b.
[0037]
The print instruction section 6-a is a portion in which document information and a print instruction are described. The document data section 6-b is obtained by converting data of a document of an application into data in a general-purpose format and stores the contents of the document in a data format independent of a printer language. The print instructing unit 6-a corresponds to the print instruction unit 6-a based on the setting information set via the UI of the group printer, the display of which is controlled according to the flowchart of FIG.
[0038]
The print instructing unit 6-a includes a
[0039]
In the print instruction section 6-a, the
[0040]
Note that this file may be a file in which the print instruction section 6-a and the document data section 6-b are different. In this case, the print instruction section 6-a exists as a print instruction file, and the document data section 6-b exists as a document data file. It is also possible to collect these files in one archive format and treat them as one file.
[0041]
7 and 8 are views showing display examples of a user interface (hereinafter, UI) of the group printer of the present embodiment. These UIs are displayed on a display unit (not shown) provided on the client or a display unit (not shown) provided on the print server when a call for the group printer is instructed via the OS.
[0042]
FIG. 7 is an example of a UI of the group printer according to the present embodiment, and shows a state where a page setting sheet is selected. For example, setting information such as a
[0043]
FIG. 8 shows a case where a sheet of an output method is selected on the UI of the group printer according to the present embodiment. In FIG. 8, reference numeral 8-a denotes a combo box, which can select and specify an output method such as ratio variance, color / monochrome variance, broadcast, and automatic proxy. An output method is appropriately selected according to an instruction input via the UI in FIG. However, the default output method is set according to the printer management information shown in FIG. 12 described later and the information installed on the client side according to the flowcharts in FIGS. A button 8-b opens a UI for registering a member printer. The UI opened in response to the operation of the button 8-b will be described later.
[0044]
A list box 8-c in FIG. 8 displays a list of registered member printers. The contents of this list display are also changed according to the output method specified in the above-mentioned 8-a. Among them, 8-g is a check box for temporarily removing each member printer from the output target printer or returning the member printer to the output target. When the check box 8-g is checked, the member printer is regarded as an output target printer, and when the check box is not checked, the member printer is temporarily removed from the output target printer. That is, for each of the member printers registered on the UI and displayed by pressing the 8-b button described above, it is possible to further set whether or not to output the data by using this check box. .
[0045]
FIG. 8F shows a device information display section in which information on member printers set in advance is displayed together with the names of member printer drivers.
[0046]
An 8-d button in FIG. 8 is a button for opening a UI for specifying the output method in detail. The contents of the detailed settings are also changed according to the output method specified in the above-described combo box 8-a. In FIG. 8, since the ratio variance is set by the combo box 8-a, "set ratio" is displayed on the button 8-d.
[0047]
8-e in FIG. 8 is a button for opening the GUI of the member printer driver. The target member printer is selected by selecting from the list of 8-c described above. That is, by using the button 8-e, it is possible to open the member printer driver UI for the member printer currently selected on 8-c.
[0048]
Display control when opening the UI of the member printer will be described in detail with reference to flowcharts shown in FIGS. 14, 18, 19, and 20, which will be described later. As described above, by using the group printer UI of the present embodiment, any one of ratio dispersion, color / black and white dispersion, broadcast, and automatic proxy can be selected as an output method, and a member printer driver can be selected for each output method. Can be designated and set, so that a single printer driver can issue a plurality of print instructions.
[0049]
Next, a setup of the shared printer performed in advance when displaying the user interface as shown in FIGS. 7 and 8 will be described with reference to FIGS.
[0050]
(Printer registration processing in server PC)
FIG. 9 is a flowchart showing a procedure for setting up a group printer and a member printer driver in a server PC functioning as a print server. The server PC corresponds to the server in FIG. 13, and can correspond to, for example, the server 101 in FIG. 1 as described above, and employs a general information processing apparatus as shown in FIG. Further, the server PC may be an information processing device exclusively installed as a print server, or may be assigned an information processing device as a personal computer used by a user for business use.
[0051]
First, setup is started in step S9-1 in FIG. Here, the setup refers to a process including installation of various software modules and / or driver modules related to the printing process and various settings on the server side. However, various settings may be made after installing the module.
[0052]
Next, the component modules are installed in step S9-2. The constituent modules are various modules necessary for the server in the present system described later. In step S9-3, a printer port is set corresponding to each printer including a group printer and a member printer. That is, a virtual printer port capable of specifying the server PC is set for the group printer, and a corresponding port is set for the member printer. As will be described later, the present system receives a print job via the printer port set here and implements a desired operation. Here, the printer port is information for identifying a server PC or a device, and corresponds to, for example, the IP address or name of the server PC or the device, and is used as information for specifying the device.
[0053]
The information for specifying the device corresponds to, for example, a proxy output port 712 in FIG. 13 described later. The print port set for the device may be LPR or the like.
[0054]
Next, in step S9-4, a member printer is set. In this step, a printer driver that can be a member printer is selected, and the connection port of each printer driver is made to correspond to the printer port set in step S9-3. Then, the group printer is set in step S9-5. Here, the output method of the group printer is specified, the member printer of each group printer is specified from the member printers set in step S9-4, and the connection port of the group printer is set to the printer port set in step S9-3. Or to correspond to. Next, in step S9-6, the settings are registered as printer management information in the printer
[0055]
(Installation process on the client)
Next, a method of installing and setting a shared printer supplied and set in the server PC on the client side will be described with reference to the flowchart of FIG.
[0056]
First, setup is started in step S10-1. The term “setup” refers to processing including installation of a module and various settings on the client side, but various settings may be performed after module installation.
[0057]
In step S10-2, the configuration module is installed. The configuration modules are various modules required for the client in the present system. Details of the constituent modules will be described later. Next, in step S10-3, the server PC set in FIG. 9 is searched from the network. A well-known technique can be applied to a method of searching for a server PC connected to the network, and a detailed description thereof will be omitted.
[0058]
Next, in step S10-4, the process waits for the server PC searched in step S10-3 to select a PC to be set as a sharing destination. That is, when one or a plurality of server PCs have been searched in step S10-4, the process waits until one of them is selected in this step. If no server PC is found, the process ends because the setup of the member printer cannot be continued (not shown). When the server PC is selected, the process proceeds from step S10-4 to step S10-5. In step S10-5, a sharable printer driver is checked among printer drivers installed in the selected PC server. Whether or not sharing is possible can be realized, for example, by using an API provided in the Windows Printing System and inquiring whether or not sharing is possible.
[0059]
In step S10-5, the printer management information (registered in step S9-6) stored in the printer information management unit 704 (FIG. 13) is read via the network 106 and registered in the server PC. Acquire management information on group printers and member printers. The acquired management information is temporarily stored in a predetermined storage unit provided in the client. Details of the printer management information will be described later with reference to FIG.
[0060]
In the server check in step S10-5, a check of a plurality of group printers and member printers as shown in FIG. 12 is executed. Then, according to the processing in step S10-5, a display listing the group printers and the member printers as shown in FIG. 11 is made on the display screen on the client side.
[0061]
Next, the process proceeds to step S10-6, and it is determined whether one printer driver has been selected from the sharable printer drivers obtained by the check in step S10-5. The user obtains a list display (FIG. 11) of the group printers and the member printers (sharable printer drivers) based on the investigation result in step S10-5, and designates a group printer whose desired sharing setting is desired from the list display. be able to. When a member printer is selected from this list display, the selected member printer is installed from the server PC to the client. The description related to FIG. 11 will be described later.
[0062]
When a group printer is selected, in step S10-7, it is determined whether the selected group printer has already been installed on the client. This determination is made, for example, by checking whether the group printer names match. If No is determined in the step S10-7, the process proceeds to a step S10-8 to install the designated group printer as a shared printer driver in the client. Here, the group printer installed in the client is a group printer set according to the flowchart of FIG. 9, and includes a program for displaying the UIs of FIGS. 7, 8, and 21. At least a program for executing a printing process to be performed, management information described in FIG. 12, and the like are included. Next, in steps S10-9 to S10-12, the installation of the member printer driver is executed.
[0063]
Here, a member printer associated with the group printer specified in step S10-6 is automatically specified and installed. First, in step S10-9, it is determined whether the member printer specified from the plurality or the singular has already been installed in the client. If the determination is No, the member printer is shared and installed. At the time of this installation, various information such as the print port set according to the flowchart of FIG. 9 and various information such as the member printer name are also transmitted to the client. Then, in step S10-10, it is determined whether the installation process has been completed for all the member printers associated with the group printer specified in step S10-6. If No is determined in step S10-10, the next member printer is specified in step S10-12, and the process returns to step S10-9. On the other hand, if Yes is determined in the step S10-9, the process shifts to the step S10-10 described above. By this shift, useless setup of the member printer to the client can be omitted. Of course, the client may overwrite the member printer determined as Yes in step S10-9. Then, if YES is determined in the step S10-10, the process proceeds to the step S10-13 to display the setup screen (FIG. 11), and returns to the step S10-6.
[0064]
In this way, by performing the processing in steps S10-6 to S10-12, the associated member printer can be efficiently and automatically loaded into the client in accordance with the designation of the group printer.
[0065]
On the other hand, if Yes is determined in the step S10-7, it is determined in a step S10-14 whether the information (information such as a combination) of the member printers associated with the group printer is the same. Here, if the determination is No, the process proceeds to step S10-17, and the member printer associated with the selected group printer is installed on the client.
[0066]
On the other hand, if Yes is determined in step S10-14, the client performs display control of a warning display such as "The same group printer and member printer are already registered!" Then, the process proceeds to step S10-16, and the setup screen (FIG. 11) is displayed on the client.
[0067]
The group printer and the member printer installed in the client by the processing shown in the flowchart of FIG. 10 as described above are used when performing processing according to the flowcharts of FIGS. 14, 18, 19, and 20 described later. It is possible to present an appropriate print setting environment to the user.
[0068]
FIG. 11 is an example of a setup screen when performing the shared installation on the client PC described in the flowchart of FIG. 10 described above, and shows a screen displayed on the display unit of the client based on the information of FIG. 12 described later. is there. In FIG. 11, the printers listed in the
[0069]
Next, the printer management information registered in the server PC in step S9-6 in FIG. 9 will be described with reference to FIG. Note that the registration here refers to a process of storing the information in a nonvolatile storage unit such as a predetermined hard disk provided in the server PC. The management information shown in FIG. 12 may be registered and changed from the client via the network 106.
[0070]
When a group printer is selected via a pointing device such as a mouse and a signal corresponding to the instruction of the
[0071]
Here, when displaying the detailed information of the group printer driver, the display may be performed based on the information shown in FIG. 12 obtained in advance from the server PC, or the group selected by the user's instruction. The printer may be notified to the server PC, the detailed information of the selected group printer may be acquired from the server PC, and the detailed information of the group printer may be displayed based on the acquired information. .
[0072]
FIG. 12 shows the state of the table of the printer management information, which is information that can be shared by the server PC and the client. The number of
[0073]
The member printer information includes a
[0074]
As the member printer management information, a total number of
[0075]
In the example of FIG. 12, the total number of member printers is 4, and A, B, C, and D are held as member printer names. The number of group printers is 2, the group printer with group printer name 1 has three member printers, the member printer names are A, B, and C, and the group printer name 2 has corresponding member printers. There are three member printer names, A, B, and D, respectively. A UI as shown in FIG. 11 is displayed according to this information.
[0076]
As shown in FIG. 12, what member printer is associated with a predetermined group printer is registered using a member printer name composed of text data, and when a group printer is designated, Each member printer according to the member printer name associated therewith is specified and used for installation. The association information for associating a group printer with a member printer is not limited to the member printer name, but can be realized by using, for example, a printer ID prepared separately from the member printer name.
[0077]
The management information shown in FIG. 12 is stored and managed in a file format on the server PC or in a table on the memory in step S9-6 in FIG. 9, and can be referred to from the client side in step S10-5 in FIG. Is what it is. For example, when the group printer name 1 is selected according to the user's instruction via the user interface of FIG. 11, an instruction is issued from the client to the server PC in order to obtain information on the group printer with the group printer name 1. . In the server PC receiving this, the member printers of the member printer names A, B, and C are associated with the group printer name 1 according to the table in FIG. The number, the member printer names A, B, and C, the actual printer drivers of the member printer names A, B, and C, the shared information of each member printer driver, and the setting information are provided to the client.
[0078]
As described above, the server PC holds the information as shown in FIG. 12, and when receiving an instruction of a predetermined group printer from the client, not only the designated group printer but also the member printer corresponding to the group printer and the associated printer Even the information to be provided can be provided to the client in a lump.
[0079]
Next, there will be described a print job control system according to the present embodiment, which uses a plurality of printers to perform the above-described print processing such as distribution, broadcast, and proxy.
[0080]
FIG. 13 is a diagram showing how a print job issued from an application in the present system is processed in the print job control system. In FIG. 13, the present system includes a client (functional configuration of clients 102 to 104) and a server (functional configuration of server 101). The server is composed of a Windows Print System and a print job control system, and the client is related by sharing a printer driver on the server.
[0081]
First, the sharing will be described. The group printer 2301 and the member printer drivers 2302-1 and 2302-2 on the client are respectively
[0082]
Similarly, regarding the sharing setting between the member printers, the relationship between the shared printers of the PDL driver 2302-1 and the PDL driver 602-1 is indicated by a broken line 23-e, and the shared printer of the PDL driver 2302-2 and the PDL driver 602-2 is indicated. The relationship between the shared printers of the PDL driver 2302-3 and the PDL driver 602-3 is indicated by a dashed line 23-f, and the relationship is indicated by a dashed line 23-g. As described above, in any case, the shared printer can be realized by using the Windows Printing System mechanism, and has a function of examining the shared printer of the Windows Printing System / a function of using a function to set the shared printer.
[0083]
Next, the flow of a print job will be described with reference to FIG. Normally, when printing is instructed, an application program such as document creation software generates a series of drawing commands via the OS, and the generated drawing commands are passed to Windows Spooler via a printer driver. Windows Spooler takes a procedure of passing print job data to a port monitor selected by a user and transmitting the print job data to a printer device.
[0084]
In the present embodiment, the user designates a
[0085]
As described above, since the group printer 2301 and the
[0086]
The
[0087]
A
[0088]
The print job
[0089]
The print job control system management console 633 (hereinafter, abbreviated as “job control management console” in the present embodiment) exchanges information and instructions with the
[0090]
The
[0091]
The job
[0092]
Then, the
[0093]
The job
[0094]
Next, the relationship between PrintSystem 800 provided by Windows and the print job in the print
[0095]
In FIG. 13, a print
[0096]
In this process, in this embodiment, the
[0097]
Next, processing in a case where the print
[0098]
When the print
[0099]
Next, a
[0100]
When the
[0101]
The job
[0102]
Next, a method of acquiring printer information displayed on a client provided with the group printer 2301 will be described.
[0103]
In FIG. 13, a printer
[0104]
The printer
[0105]
When updating the printer information, the printer
[0106]
Here, in the present embodiment, print job control is performed using a plurality of printers having a printer driver having a storage area such as a common setting area and an extended setting area, and performing the above-described print processing such as distribution, broadcast, and proxy. The UI control of the printer driver for the system will be described. This description is made according to what kind of combination of the member printers is set when the client PC sets up the group printer including the member printers set to be shared by the server PC. Processing is performed according to how the “controllable driver” and the “function-uncontrollable driver” are combined.
[0107]
Here, the function controllable / non-function controllable will be described. The function controllable member printer driver refers to a member printer driver operable via an SDK (Software Development Kit) provided in the group printer driver. The group printer driver can set, for example, the extended setting items of the member printer driver, perform display control such as gray-out display, and make inquiries about various items to the member printer corresponding to the SDK. “Function control impossible” means a member printer driver opposite to the function control possible.
[0108]
FIG. 14 is a flowchart illustrating a control procedure using the UI of the group printer according to the present embodiment. The processing according to FIG. 14 is performed by the client using the installed group printer driver. When a UI display request from the application to the group printer arrives, the process proceeds to step S14-1.
[0109]
In step S14-2, an identification ID (for example, a printer driver name) of a member printer driver constituting the group printer is queried using the print job control system API. Here, the identification IDs of all the member printer drivers constituting the group printer are acquired. In step S14-3, the capability of the member printer driver is acquired from the identification ID of each member printer driver registered for the group printer. Here, for all the member printer drivers constituting the group printer, a “function-controllable driver” that can acquire a driver function up to the extended area of the driver setting information and can control the driver UI, or Other information is obtained for determining whether the driver is a “function-incapable driver”.
[0110]
In step S14-4, the configuration of the member printer is determined based on the function control availability information acquired in step S14-3. If the result of this determination is that all member printers are "function controllable drivers", the flow proceeds to step S14-5; otherwise, the flow proceeds to step S14-6.
[0111]
FIG. 15 shows the configuration of the member printer of this embodiment and the correspondence between the settable items. FIG. 16 shows the correspondence between the common setting item / extended setting item and each setting item.
[0112]
In the present embodiment, the common setting items and the extended setting items are classified and defined as shown in FIG. 16, but depending on the OS operating the print job control system, the setting items may be classified differently or set. Needless to say, there is a case where the possible items are changed. It is apparent that the UI control flow shown in FIG. 14 is effective even if the classification items are different from those in FIG.
[0113]
In step S14-5, a UI (function-controllable UI) when all the printer drivers can control the function is displayed. FIG. 18 is a flowchart illustrating a processing procedure for a function controllable UI in step S14-5.
[0114]
First, in step S18-1, the capability of each member printer driver regarding individual common setting items is inquired, a function conflict process is performed, and an item to be displayed on the group printer UI is selected based on the result. Function conflict processing means that each member printer driver that is the target of the group printer has a function for each setting item, and whether or not all the target member printer drivers have that function is checked. In the UI, the function is treated as a settable item, and if even one device does not have the function, the item is treated as a non-settable item.
[0115]
The conflict processing of the above-described function will be described with a specific example. A printer driver A in FIG. 17 represents a group printer, and B, C, and D represent member printer drivers constituting the group printer A. In the table, “Yes” and “No” indicate whether each member printer driver supports the bookbinding printing function, the staple printing function, and the punch function.
[0116]
First, focusing on the bookbinding printing function, the member printers B and D have the bookbinding printing function, but the member printer C does not have the function. Therefore, the bookbinding printing function of the group printer A is “none”. Similarly, since the staple function is included in all the member printer drivers B, C, and D, the staple of the group printer A is “present”. Further, since the punch function does not exist in all the member printer drivers B, C, and D, the punch function of the group printer A is "none".
[0117]
In step S18-2, the conflict processing of the function shown in step S18-1 is performed on the extended setting items of each member printer driver. As a result of the above-described conflict processing, UI control that does not have a function as a group printer driver is performed such that corresponding items are grayed out or hidden so that settings cannot be made on the UI. Such UI control is not performed for an item determined to have a function as a group printer driver.
[0118]
FIG. 21 shows an example in which the gray-out display control of the UI is performed. A dialog box for setting items,
[0119]
Also, in this step, UI control is performed so that a combination that is impossible in terms of function, such as punching and stapling when “bookbinding printing” is specified by the user, cannot be set, and contradictions do not occur in the setting items. To
[0120]
Next, in step S18-4, it is determined whether a member printer to be set has been designated on the group printer UI. If a member printer has been designated, the process proceeds to step S18-5, where the UI of the designated member printer driver is opened to enable detailed settings. In this way, for the items for which there is no setting item on the group printer UI, the UI of the member printer can be opened to make detailed settings.
[0121]
When the member printer driver UI is opened, items that can be set in the group printer can also be set, and the same function may be set twice. For this reason, display is performed by performing the following UI control.
[0122]
{Circle around (1)} When the member printer is a “function controllable driver”, items that conflict with the setting items on the group printer UI are grayed out so that the settings cannot be made on the member printer driver UI, or UI control as non-display,
{Circle around (2)} When the member printer is a “driver whose function cannot be controlled”, the common setting items are displayed on the UI with the settings set by the member printer driver. If the item is changed on the member printer driver UI after the UI is displayed, the information of the setting item set in the group printer is overwritten to the common setting item of the corresponding member printer driver in the step of closing the driver UI, and the member It does not allow setting changes on the printer UI.
[0123]
Further, when performing the overwriting process, it is also possible to display a warning indicating that the setting change on the member printer UI is invalid. In this step, since all the target member printers are "function controllable drivers", the above-mentioned (1) UI control is performed.
[0124]
Returning to FIG. 14, if it is determined in step S14-4 that there is a driver other than the "driver capable of functionality", the process proceeds to step S14-6, and a corresponding UI (hereinafter, in the case where function control is impossible). Is displayed). FIG. 19 is a flowchart showing the details of the processing related to the UI when the function control is not possible in step 14-6.
[0125]
In step S14-6, unlike the case of step 14-5, the configuration of the member printer driver includes both a "function-controllable driver" and a "function-uncontrollable driver". Therefore, the items that can be set in the group printer UI are limited to the basic setting items that can read and write the setting information in common.
[0126]
In step S19-1, in a manner similar to step S18-1, each member printer driver inquires about the capability of each common setting item, performs a function conflict process, and selects an item to be displayed on the group printer UI based on the result. Do. Then, in step S19-2, the group printer UI is displayed based on the result of the UI conflict processing performed in step S14-1. Here, the extended setting items and the functions determined to be unusable by the conflict processing are grayed out or hidden so that the setting cannot be performed on the UI.
[0127]
In step S19-3, it is determined whether a member printer to be set has been designated on the group printer UI. If a member printer has been designated, the process proceeds to step S19-4, where the UI of the designated member printer driver is opened, and detailed settings can be made. In this way, it is possible to make detailed settings for the extended setting items that cannot be set in the group printer UI and the unique setting items of each member printer.
[0128]
FIG. 20 is a flowchart showing the details of step S19-4. In step S20-1, the type of the member printer driver is determined, and if the target driver is a "function controllable driver", the process proceeds to step S20-2; otherwise, the process proceeds to step S20-3. In step S20-2, a UI display in which a gray-out control of the UI is performed on the common setting items is performed, and in step S18-5, the common setting items of the member printer driver are set in accordance with the above-mentioned (1) UI control rule. Controls the UI. In step S20-3, the common setting item UI of the member printer driver is controlled in accordance with the UI control rule (2) described above in step S18-5.
[0129]
Returning to FIG. 14 again, it is determined in step S14-7 whether an OK (setting end) button on the group printer UI has been clicked, and if it has been clicked, the flow proceeds to step S14-8. If the OK (end of setting) button has not been clicked, the process returns from step S14-7 to step S18-3 or step S19-2, just as the display of the step UI is continued.
[0130]
In step S14-8, it is checked whether the items set in the group printer are consistent with the setting items of each member printer driver. For example,
In printer A, the stapling position for A4 paper is only the upper left of the paper.
In printer B, the stapling position for A4 paper is only the lower left of the paper.
As described above, the printer has items closely related to the functions of the device, and in this step, a conflict check is performed for combinations that are impossible for each member printer in terms of the setting function. In addition, a check is made for each member printer driver as to whether or not items set on the group printer UI can be reflected as setting items of each member printer driver.
[0131]
In step S14-9, if the result of the conflict check performed in step S14-8 is OK, that is, if the setting items set on the group printer UI are valid for all member printers, Proceeding to S14-12, the display of the group printer UI ends.
[0132]
On the other hand, if it is determined in step S14-9 that there is an item causing a conflict in the setting items, the process proceeds to step S14-10. In step S14-10, a reset and force button are displayed on the UI together with a message such as "whether to reset the setting items on the group printer UI or to perform print processing with the current setting items". If the reset button is pressed, the process returns from step S14-11 to immediately before step S18-3 or step S19-2 depending on the configuration of the member printer. If the force button has been pressed, the process proceeds from step S14-11 to step 14-12, and the display of the group printer UI ends.
[0133]
Next, the relationship between the recording of information set on the above-described UI (for example, FIG. 21) and the general-purpose print file in FIG. 6 according to the present embodiment will be described.
[0134]
In the present embodiment, the driver setting information (DEVMODE) of the group printer includes the common area and the extended area of the information set by the UI described above, and the print
[0135]
After that, the general-purpose print file is used in the printing process using the print job control system described with reference to FIG. 13, and added-value printing such as proxy printing, distributed printing, or broadcast printing in the present embodiment is performed. It is possible to do.
[0136]
[Second embodiment]
In the first embodiment, it has been described that a predetermined group printer is instructed from the client to the server PC, and a member printer driver constituting the designated group printer is acquired from the server PC. , FIG. 18, FIG. 19, and FIG. 20 are taken in as information for restricting the validity / invalidity of each item on the setting screen of the group printer when executing the processing based on each flowchart of FIG.
[0137]
Therefore, as a further application example, instead of acquiring all the member printer drivers corresponding to the member printers, only the information necessary to execute the flowcharts of FIGS. 14, 18, 19, and 20 is used. It is conceivable to get This corresponds to the process of acquiring the information of the identification ID and capability of each member printer (member printer driver) from the client, except for the page description language generation module corresponding to each printer driver.
[0138]
Although the mechanism described in FIGS. 1 to 21 is basically the same in the second embodiment, for example, in steps S10-11 and S10-15 in FIG. The information of the member printers other than the above is installed in the client.
[0139]
If the information for controlling the display of the setting screen of the group printer is acquired except for the page description language generation module in this manner, the communication load between the server PC and the client is reduced as compared with the first embodiment. In addition to the reduction, the amount of memory on the client side can also be reduced.
[0140]
Furthermore, by making various communications according to the Internet protocol between the client and the server PC, application to the Internet printing via the Internet described in the first embodiment is conceivable.
[0141]
[Other embodiments]
An object of the present invention is to allow a computer (or CPU or MPU) of a system or an apparatus to read out and execute a program code stored in a storage medium storing a program code of software for realizing the functions of the above-described embodiments. This is also achieved.
In this case, the program code itself read from the storage medium realizes the function of the above-described embodiment, and the storage medium storing the program code constitutes the present invention.
[0142]
As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, and the like can be used.
[0143]
When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also an OS (Operating System) running on the computer based on the instruction of the program code. This also includes a case where some or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing.
[0144]
Further, after the program code read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion board is written based on the instruction of the program code. Also, there is a case where the CPU or the like provided in the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.
[0145]
As described above, according to the above embodiment, a server (printer server) that stores setup data corresponding to each of a plurality of physical printers (member printers) and a client that can use the physical printer via this server In the printing system including (1), a virtual printer (group printer) including a plurality of physical printers is registered in the server (S9-4 to S9-6). When one of the virtual printers registered in the server is specified in the client (S10-5, S10-6), the specified virtual printer is notified from the client to the server. In response to the notification of the specified virtual printer, the server transmits setup data (for example, a printer driver) for the specified virtual printer and the physical printer included in the virtual printer to the client (S10-8). To S10-12).
[0146]
For this reason, the client can automatically acquire not only the output method set for the virtual printer but also the setup data of the physical printer constituting the virtual printer by simply designating the desired virtual printer. Therefore, for example, if the setup data includes the printer driver of the physical printer included in the specified virtual printer, the driver of the physical printer included in the virtual printer is automatically installed by specifying the virtual printer. Will be done. That is, a mechanism is provided in which a client can easily set up a group printer including a member printer managed by a server. By simply designating the group printer managed by the server, the user can load the related member printer into the character device. Further, in this case, various settings such as the virtual printer port and the output method set according to the flowchart of FIG. 9 can be set up in the client. Therefore, it is possible to reduce a user's complicated setting such as a virtual printer output method, a virtual printer port, association of a member printer, and a printer port of the member printer.
[0147]
Further, according to the above embodiment, the client provides the virtual printer setting interface based on the setup data transmitted in the transmission step. For this reason, it is possible for each client to set the output mode and output method of the virtual printer as desired.
[0148]
According to the second embodiment, in particular, data including information that can be used to determine whether each setting item of the setting interface is valid or invalid is provided to the client as the setup data. In the case where the actual PDL data is generated by the printer server, the module for generating the PDL need not be imported to the client. In this case, the client only needs to be provided with information for performing the conflict processing. That is, the information of the member printer provided to the client is not limited to the printer driver itself, and only the part necessary for the conflict processing may be obtained by the client.
[0149]
Further, according to the above embodiment, the setup data includes the printer driver of the physical printer included in the specified virtual printer, and the client inquires the transmitted physical printer driver about the possessed function, and Acquires the functions possessed by the driver, determines the items that can be set in the virtual printer setting interface according to the acquired capabilities of the physical printer driver, and controls the display of the setting screen in the setting interface based on this determination result I do. In particular, in the embodiment, the function of providing the setting interface as described above is provided in the virtual printer driver.
[0150]
That is, according to the embodiment, in a print processing system that controls a print job for a plurality of physical printers (member printers) bundled in a virtual printer (group printer), one virtual printer is set as a shared printer. When the group printer is present, the group printer can inquire the capabilities of each member printer and control the UI. Further, it is possible for the client to acquire and display the printer information of each member set on the server. Thus, the client can display the group printer setting screen on which the appropriate conflict processing has been performed by using the taken-in member printer driver.
[0151]
Further, according to the above embodiment, the setting instruction is issued to the physical printer included in the virtual printer based on the setting set via the setting interface. As a result, the user can obtain a desired print result by having the setting interface by the virtual printer driver and executing printing with the wisdom-set contents.
[0152]
【The invention's effect】
As described above, according to the present invention, it is possible to efficiently install a group printer and a member printer on a client in an environment in which printing is performed using a group printer including a plurality of member printers.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a printing system according to an embodiment.
FIG. 2 is a block diagram illustrating a configuration of an information processing apparatus according to the embodiment.
FIG. 3 is a diagram showing an example of a memory map of a
FIG. 4 is a diagram showing an example of a memory map of the
FIG. 5 is a diagram showing a relationship between an FD drive 203 shown in FIG. 2 and an
FIG. 6 is a diagram illustrating a structure of a general-purpose print file.
FIG. 7 illustrates an example of a UI of a group printer.
FIG. 8 illustrates an example of a UI of a group printer.
FIG. 9 is a flowchart showing a setup procedure in the server.
FIG. 10 is a flowchart showing a setup procedure in a client.
FIG. 11 is a diagram showing an example of a setup screen.
FIG. 12 is a diagram illustrating a state of a table of printer management information.
FIG. 13 is a block diagram illustrating a configuration of a print control module of the information processing apparatus according to the embodiment.
FIG. 14 is a flowchart illustrating UI control of a group printer driver.
FIG. 15 is a diagram illustrating the correspondence between the configuration of a member printer and settable items.
FIG. 16 is a diagram showing correspondence between common setting items / extended setting items and respective setting items.
FIG. 17 illustrates an example of a function conflict for UI display of a group printer driver.
FIG. 18 is a flowchart illustrating UI control of a group printer driver.
FIG. 19 is a flowchart illustrating UI control of a group printer driver.
FIG. 20 is a flowchart illustrating UI control of a group printer driver.
FIG. 21 illustrates an example of a UI of a group printer.
Claims (27)
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録工程と、
前記クライアントにおいて、前記登録工程において登録された仮想プリンタを指定する指定工程と、
前記指定工程で指定された仮想プリンタを前記クライアントより前記サーバに通知する通知工程と、
前記通知工程による前記指定された仮想プリンタの通知を受けて、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより前記クライアントに送信する送信工程と
を備えることを特徴とする印刷システムの制御方法。A method for controlling a printing system including a server storing setup data corresponding to each of a plurality of physical printers and a client capable of using the physical printer via the server,
In the server, a registration step of registering a virtual printer including a physical printer selected from the plurality of physical printers,
At the client, a designation step of designating the virtual printer registered in the registration step;
A notification step of notifying the virtual printer designated in the designation step from the client to the server,
Receiving a notification of the designated virtual printer by the notifying step, and transmitting a setup data for the designated virtual printer and a physical printer included in the virtual printer from the server to the client; A method for controlling a printing system, comprising:
前記提供工程は、
前記物理プリンタドライバに対し所有する機能を問い合わせ、該物理プリンタドライバが所有する機能を取得する取得工程と、
前記取得工程によって取得された物理プリンタドライバの能力に応じて前記仮想プリンタの設定用インターフェースにおける設定可能な項目を判定する判定工程とを備え、
前記判定工程による判定結果に基づいて前記設定用インターフェースにおける設定画面を表示制御することを特徴とする請求項1に記載の印刷システムの制御方法。The setup data transmitted in the transmitting step includes a printer driver of a physical printer included in the specified virtual printer,
The providing step includes:
An acquisition step of inquiring the physical printer driver of a function possessed, and acquiring a function owned by the physical printer driver;
A determining step of determining a settable item in the setting interface of the virtual printer according to the capability of the physical printer driver acquired by the acquiring step,
The method according to claim 1, wherein display control of a setting screen in the setting interface is performed based on a result of the determination in the determining step.
前記提供工程は、前記仮想プリンタドライバが有する機能であることを特徴とする請求項5に記載の印刷システムの制御方法。The setup data transmitted in the transmitting step further includes a printer driver of the specified virtual printer,
6. The method according to claim 5, wherein the providing step is a function of the virtual printer driver.
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録手段と、
前記クライアントにおいて、前記登録手段において登録された仮想プリンタを指定する指定手段と、
前記指定手段で指定された仮想プリンタを前記クライアントより前記サーバに通知する通知手段と、
前記通知手段による前記指定された仮想プリンタの通知を受けて、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより前記クライアントに送信する送信手段と
を備えることを特徴とする印刷システム。A printing system including a server that stores setup data corresponding to each of a plurality of physical printers, and a client that can use the physical printer via the server,
A registration unit configured to register a virtual printer including a physical printer selected from the plurality of physical printers in the server;
A designation unit for designating the virtual printer registered in the registration unit in the client;
Notification means for notifying the virtual printer designated by the designation means from the client to the server;
A receiving unit that receives the notification of the designated virtual printer by the notifying unit and transmits setup data for the designated virtual printer and a physical printer included in the virtual printer from the server to the client. A printing system, comprising:
前記提供手段は、
前記物理プリンタドライバに対し所有する機能を問い合わせ、該物理プリンタドライバが所有する機能を取得する取得手段と、
前記取得手段によって取得された物理プリンタドライバの能力に応じて前記仮想プリンタの設定用インターフェースにおける設定可能な項目を判定する判定手段とを備え、
前記判定手段による判定結果に基づいて前記設定用インターフェースにおける設定画面を表示制御することを特徴とする請求項9に記載の印刷システム。The setup data transmitted by the transmission unit includes a printer driver of a physical printer included in the specified virtual printer,
The providing means,
Acquiring means for inquiring of the physical printer driver about a function possessed, and acquiring a function possessed by the physical printer driver;
Determining means for determining a settable item in the setting interface of the virtual printer according to the capability of the physical printer driver acquired by the acquiring means,
The printing system according to claim 9, wherein display control of a setting screen in the setting interface is performed based on a determination result by the determination unit.
前記提供手段は、前記仮想プリンタドライバを実行することによりて実現されることを特徴とする請求項13に記載の印刷システム。The setup data transmitted by the transmission unit further includes a printer driver of the specified virtual printer,
14. The printing system according to claim 13, wherein the providing unit is realized by executing the virtual printer driver.
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録手段と、
前記クライアントより仮想プリンタの指定の通知を受信する受信手段と、
前記通知において指定された仮想プリンタ及び該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記クライアントに送信する送信手段と
を備えることを特徴とする情報処理装置。An information processing apparatus that stores setup data corresponding to each of a plurality of physical printers and functions as a print server that controls printing by the physical printer in response to a print instruction from a client,
A registration unit configured to register a virtual printer including a physical printer selected from the plurality of physical printers in the server;
Receiving means for receiving a virtual printer designation notification from the client;
An information processing apparatus, comprising: a transmission unit configured to transmit setup data for a virtual printer specified in the notification and a physical printer included in the virtual printer to the client.
前記サーバに登録された、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを取得する取得手段と、
前記取得手段で取得された仮想プリンタの一つを指定させる指定手段と、
前記指定手段で指定された仮想プリンタを前記サーバに通知し、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより受信する受信手段と
を備えることを特徴とする情報処理装置。An information processing apparatus that functions as a client that uses a physical printer via a server that stores setup data corresponding to each of a plurality of physical printers,
Acquisition means for acquiring a virtual printer configured to include a physical printer selected from the plurality of physical printers, registered in the server;
Designation means for designating one of the virtual printers acquired by the acquisition means;
A receiving unit that notifies the server of the virtual printer specified by the specifying unit to the server, and receives setup data for the specified virtual printer and a physical printer included in the virtual printer from the server. Characteristic information processing device.
前記提供手段は、
前記物理プリンタドライバに対し所有する機能を問い合わせ、該物理プリンタドライバが所有する機能を取得する取得手段と、
前記取得手段によって取得された物理プリンタドライバの能力に応じて前記仮想プリンタの設定用インターフェースにおける設定可能な項目を判定する判定手段とを備え、
前記判定手段による判定結果に基づいて前記設定用インターフェースにおける設定画面を表示制御することを特徴とする請求項17に記載の情報処理装置。The setup data includes a printer driver of a physical printer included in the specified virtual printer,
The providing means,
Acquiring means for inquiring of the physical printer driver about a function possessed, and acquiring a function possessed by the physical printer driver;
Determining means for determining a settable item in the setting interface of the virtual printer according to the capability of the physical printer driver acquired by the acquiring means,
18. The information processing apparatus according to claim 17, wherein a display of a setting screen on the setting interface is controlled based on a result of the determination by the determining unit.
前記提供手段は、前記仮想プリンタドライバを実行することによりて実現されることを特徴とする請求項21に記載の情報処理装置。The setup data transmitted by the transmission unit further includes a printer driver of the specified virtual printer,
22. The information processing apparatus according to claim 21, wherein the providing unit is realized by executing the virtual printer driver.
前記サーバにおいて、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを登録する登録工程と、
前記クライアントより仮想プリンタの指定の通知を受信する受信工程と、
前記通知において指定された仮想プリンタ及び該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記クライアントに送信する送信工程と
を備えることを特徴とする情報処理方法。An information processing method that stores setup data corresponding to each of a plurality of physical printers and functions as a print server that controls printing by the physical printer in accordance with a print instruction from a client,
In the server, a registration step of registering a virtual printer including a physical printer selected from the plurality of physical printers,
A receiving step of receiving a virtual printer designation notification from the client;
Transmitting a setup data for the virtual printer specified in the notification and a physical printer included in the virtual printer to the client.
前記サーバに登録された、前記複数の物理プリンタより選択された物理プリンタを含んで構成される仮想プリンタを取得する取得工程と、
前記取得工程で取得された仮想プリンタの一つを指定させる指定工程と、
前記指定工程で指定された仮想プリンタを前記サーバに通知し、該指定された仮想プリンタと該仮想プリンタに含まれる物理プリンタのためのセットアップ用データを前記サーバより受信する受信工程と
を備えることを特徴とする情報処理方法。An information processing method that functions as a client that uses a physical printer via a server that stores setup data corresponding to each of a plurality of physical printers,
An acquisition step of acquiring a virtual printer configured to include a physical printer selected from the plurality of physical printers, registered in the server;
A designation step of designating one of the virtual printers acquired in the acquisition step,
A receiving step of notifying the server of the virtual printer specified in the specifying step to the server, and receiving setup data for the specified virtual printer and a physical printer included in the virtual printer from the server. Characteristic information processing method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003027606A JP2004240589A (en) | 2003-02-04 | 2003-02-04 | Printing system, method of controlling it, and information processing apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003027606A JP2004240589A (en) | 2003-02-04 | 2003-02-04 | Printing system, method of controlling it, and information processing apparatus and method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004240589A true JP2004240589A (en) | 2004-08-26 |
Family
ID=32955291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003027606A Withdrawn JP2004240589A (en) | 2003-02-04 | 2003-02-04 | Printing system, method of controlling it, and information processing apparatus and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004240589A (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005354319A (en) * | 2004-05-12 | 2005-12-22 | Ntt Docomo Inc | Device and method for determining weight, and for measuring radiation power |
JP2007172087A (en) * | 2005-12-19 | 2007-07-05 | Brother Ind Ltd | Program for registering virtual object, storage medium for storing the program, virtual object registration method and information processor |
JP2008059373A (en) * | 2006-08-31 | 2008-03-13 | Canon Inc | Information processing method, information processor, program, and storage medium |
JP2008547126A (en) * | 2005-06-27 | 2008-12-25 | マイクロソフト コーポレーション | Preconfigured settings for portable devices |
JP2011043869A (en) * | 2009-08-19 | 2011-03-03 | Ricoh Co Ltd | Printer network system, server device, printing method, program and recording medium |
JP2011076225A (en) * | 2009-09-29 | 2011-04-14 | Canon Inc | Image forming apparatus, control method for the same, and control program |
JP2014078268A (en) * | 2014-01-08 | 2014-05-01 | Canon Inc | Image forming apparatus, control method of the same, and control program |
US9557948B2 (en) | 2012-11-29 | 2017-01-31 | Canon Kabushiki Kaisha | Information processing apparatus for activating a printer driver upon completion of user authentication |
JP2020047244A (en) * | 2018-09-14 | 2020-03-26 | キヤノン株式会社 | Printing control apparatus, information processing apparatus, print service system, control method thereof, and program |
WO2020237581A1 (en) * | 2019-05-30 | 2020-12-03 | 华为技术有限公司 | Method, apparatus and system for printing document in virtual machine by using terminal device |
CN112764694A (en) * | 2021-01-13 | 2021-05-07 | 统信软件技术有限公司 | Printing system, printing method and computing device |
-
2003
- 2003-02-04 JP JP2003027606A patent/JP2004240589A/en not_active Withdrawn
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005354319A (en) * | 2004-05-12 | 2005-12-22 | Ntt Docomo Inc | Device and method for determining weight, and for measuring radiation power |
JP4489505B2 (en) * | 2004-05-12 | 2010-06-23 | 株式会社エヌ・ティ・ティ・ドコモ | Weight determination device and weight determination method |
JP2008547126A (en) * | 2005-06-27 | 2008-12-25 | マイクロソフト コーポレーション | Preconfigured settings for portable devices |
JP2007172087A (en) * | 2005-12-19 | 2007-07-05 | Brother Ind Ltd | Program for registering virtual object, storage medium for storing the program, virtual object registration method and information processor |
JP2008059373A (en) * | 2006-08-31 | 2008-03-13 | Canon Inc | Information processing method, information processor, program, and storage medium |
JP2011043869A (en) * | 2009-08-19 | 2011-03-03 | Ricoh Co Ltd | Printer network system, server device, printing method, program and recording medium |
JP2011076225A (en) * | 2009-09-29 | 2011-04-14 | Canon Inc | Image forming apparatus, control method for the same, and control program |
US9218150B2 (en) | 2009-09-29 | 2015-12-22 | Canon Kabushiki Kaisha | Image forming apparatus and method thereof |
US9557948B2 (en) | 2012-11-29 | 2017-01-31 | Canon Kabushiki Kaisha | Information processing apparatus for activating a printer driver upon completion of user authentication |
JP2014078268A (en) * | 2014-01-08 | 2014-05-01 | Canon Inc | Image forming apparatus, control method of the same, and control program |
JP2020047244A (en) * | 2018-09-14 | 2020-03-26 | キヤノン株式会社 | Printing control apparatus, information processing apparatus, print service system, control method thereof, and program |
JP7479790B2 (en) | 2018-09-14 | 2024-05-09 | キヤノン株式会社 | Server device, control method thereof, and program |
WO2020237581A1 (en) * | 2019-05-30 | 2020-12-03 | 华为技术有限公司 | Method, apparatus and system for printing document in virtual machine by using terminal device |
CN112764694A (en) * | 2021-01-13 | 2021-05-07 | 统信软件技术有限公司 | Printing system, printing method and computing device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7312886B2 (en) | Printer control method, information processing apparatus, program, and storage medium | |
JP3793197B2 (en) | Information processing apparatus, information processing method, information processing program, and storage medium | |
US7852497B2 (en) | Method of controlling printing control apparatus | |
US7707326B2 (en) | System for setting print end notification either when data transmission ends or when printing ends based on print check ability of printing devices | |
JP3740438B2 (en) | Print control method, print control apparatus, program, and computer-readable storage medium | |
US7839516B2 (en) | Printing control method and apparatus | |
JP3634783B2 (en) | Printing system and printing data processing method | |
JP3639821B2 (en) | Print control method, print control apparatus, print control program executable by information processing apparatus, and storage medium storing computer-readable program | |
JP3740472B2 (en) | Program, print job control system, print data processing method, and storage medium | |
JP2005010919A (en) | Information processor, information processing method, program and recording medium | |
JP2004240589A (en) | Printing system, method of controlling it, and information processing apparatus and method | |
JP2006301860A (en) | Information processor | |
JP3880575B2 (en) | Print setting method and computer | |
JP4078292B2 (en) | Information processing apparatus, information processing method and program, and computer-readable storage medium | |
JP3706823B2 (en) | Print control method, print control apparatus, print control program for executing print data processing executable by computer, and computer-readable storage medium | |
JP4401640B2 (en) | Printer management method, information processing apparatus, program, and storage medium | |
JP3740448B2 (en) | Control device, control method, program, and storage medium | |
JP3833090B2 (en) | Control method, control device, program, and storage medium | |
JP3884949B2 (en) | Job management method, information processing apparatus, program, and storage medium | |
JP4323982B2 (en) | Information processing method, information processing apparatus, program, and storage medium | |
JP4261784B2 (en) | PRINT CONTROL METHOD, PRINT CONTROL SYSTEM, PROGRAM, AND STORAGE MEDIUM | |
JP2006259853A (en) | Information processing device | |
JP4411256B2 (en) | PRINT CONTROL METHOD, PRINT CONTROL SYSTEM, PROGRAM, AND STORAGE MEDIUM | |
JP2006072526A (en) | Information processing apparatus and setup program | |
JP2006163860A (en) | Printing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060404 |