(57)【要約】【課題】  OSの印刷機能を拡張してOSがもともと持っていない機能を付加することができる。ただしそのためには、前記のようにシステム管理者が、プリントサーバが動作するマシン上に一つまたは複数の論理プリンタを作成してプリントサーバの環境をセットアップする必要がある。【解決手段】  通信制御手段のインスタンスを、予めファイルまたは、データベース等で用意されている出力管理システム設定情報を元に作成する過程で、前記情報の中から実際の出力デバイスの情報は前記デバイス情報取得手段によって入手した情報に反映させ作成する。【選択図】  図５
2006171865.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上の出力デバイスとの通信を司る独自の通信制御手段を割り当てられた論理出力装置を利用する出力管理装置のための、前記論理出力装置の設定を行う出力管理装置設定装置であって、ネットワーク上に存在する出力デバイスから該デバイスに関する情報を入手するデバイス情報取得手段と、前記独自の通信制御手段のインスタンスを、予めファイルまたは、データベース等で用意されている出力管理システム設定情報を元に作成する過程で、前記情報の中から実際の出力デバイスの情報は前記デバイス情報取得手段によって入手した情報に反映させ作成する制御手段を有することを特徴とする出力管理装置設定装置。
【請求項２】
請求項１に記載の出力管理装置設定装置であって、前記独自の通信制御手段のインスタンスを予め用意されている出力管理システム設定情報を元に作成・修正・削除することができることを特徴とする出力管理装置設定装置。
【請求項３】
請求項２に記載の出力管理装置設定装置であって、前記デバイス情報取得手段は予め用意されている出力管理システム設定情報のネットワーク上に存在する特定のデバイスから情報を取得することができることを特徴とする出力管理装置設定装置。
【請求項４】
請求項２に記載の出力管理装置設定装置であって、前記デバイスに関する情報は該デバイスが持つアドレス情報を含むことを特徴とする出力管理装置設定装置。
【請求項５】
請求項４に記載の出力管理装置設定装置であって、前記デバイスに関する情報は該デバイスの機種を表す情報を含むことを特徴とする出力管理装置設定装置。
【請求項６】
請求項４に記載の出力管理装置設定装置であって、前記デバイスに関する情報はデバイスのオプションを表す情報を含むことを特徴とする出力管理装置設定装置。
【請求項７】
請求項６に記載の出力管理装置設定装置であって、前記デバイスのオプションに関する情報は、フィニッシャー、両面機構、カラー/モノクロ、デバイスの処理速度等情報を含むことを特徴とする出力管理装置設定装置。
【請求項８】
請求項５に記載の出力管理装置設定装置であって、前記制御手段は前記取得した機種を表す情報から、該機種に対応するドライバ名を決定するための機種／ドライバ名対応手段を有することを特徴とする出力管理装置設定装置。
【請求項９】
請求項５に記載の出力管理装置設定装置であって、前記制御手段は前記取得した機種を表す情報から、該機種に対応するジョブデータ送信方式を決定するための機種／送信方式対応手段を有することを特徴とする出力管理装置設定装置。
【請求項１０】
請求項１から９のいずれかに記載の出力管理装置設定装置であって、前記デバイス情報取得手段は、予め用意されている出力管理システム設定情報が複数のデバイスを対象にしている場合は、SNMPプロトコルのユニキャストを、または、単一のデバイスを対象にしている場合はマルチキャストパケットを送信し、その応答を得ることによりネットワーク上に存在する特定のデバイスから該デバイスに関する情報を入手することを特徴とする出力管理装置設定装置。
【請求項１１】
請求項１から１０のいずれかに記載の出力管理装置設定装置であって、前記出力デバイスは、プリンタであることを特徴とする出力管理装置設定装置。
【請求項１２】
ネットワーク上の出力デバイスとの通信を司る独自の通信制御手段を割り当てられた論理出力装置を利用する出力管理装置の設定を行う手段を含む出力管理装置設定システムであって、請求項１〜１１の何れかに記載の出力管理装置設定装置の機能を有することを特徴とする出力管理装置設定システム。
【請求項１３】
ネットワーク上の出力デバイスとの通信を司る独自の通信制御手段を割り当てられた論理出力装置を利用する出力管理システムのための、前記論理出力装置の設定を行う出力管理システム設定方法であって、予めファイルまたは、データベース等で用意されている出力管理システム設定情報と、その中から実際のデバイスから情報を取得できる情報に関してはネットワーク上に存在する出力デバイスから該デバイスに関連する情報を取得するステップと、
上記出力管理システム設定情報と、取得したデバイスに関連する情報にもとづいた設定を持つ、前記独自の通信制御手段のインスタンスを作成・変更・削除するステップとを含むことを特徴とする出力管理システム設定方法。
【請求項１４】
請求項１３に記載の出力管理システム設定方法であって、前記設定情報は出力デバイスの機種名とアドレス情報を含むことを特徴とする出力管理システム設定方法。
【請求項１５】
請求項１〜１１の何れかに記載の装置の機能、又は請求項１２記載のシステムの機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読出可能な記憶媒体。
【請求項１６】
請求項１３〜１５の何れかに記載の出力管理システム設定方法の処理ステップをコンピュータに実行させるためのプログラムを記録したコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、コンピュータネットワークを介して分散印刷サービスを提供するプリントサーバ装置（以下、単に「プリントサーバ」ともいう）や、パーソナルコンピュータ等の端末装置とプリンタを機器制御言語による双方向通信可能に接続して構成される分散及び印刷システム等を稼動させるのに必要な設定手続きに用いられる、印刷システム設定装置、印刷システム設定システム、印刷システム設定方法、それを実施するためのプログラムを記憶したコンピュータ読出可能な記憶媒体、及び当該プログラムに関するものである。
【背景技術】
【０００２】
近年において、印刷品位の高いレーザービームプリンタが、低価格化の進展に伴って印刷そのものを業務としないオフィスでも一般的に使用されるようになってきた。またオフィスで利用されるコンピュータ機器のネットワーク化も近年非常に著しい。これらを背景に、一般オフィスにおいて複数のプリンタをネットワークに接続して使用するケースも珍しくなくなってきている。
【０００３】
このようなプリンタの使用形態が一般的になるにつれて、ネットワークに接続された複数のプリンタをいかに有効利用するかが新たな課題となってきている。
【０００４】
図６は、プリントサーバを用いたネットワークプリントシステム（印刷システム）１３００の一般的な構成を示したものである。
【０００５】
ネットワークプリントシステム１３００では、上記図６に示すように、まず、ローカルエリアネットワーク（ＬＡＮ）１３５０，１３６０に対しては、不図示の様々な周辺機器が接続可能となっている。
【０００６】
開放型アーキテクチャを有するプリンタ１３０２は、共用プリンタとして、ネットワークインタフェース（ＮＩＣ）１３０１を介してＬＡＮ１３５０に接続されている。
【０００７】
ＮＩＣ１３０１は、例えば、“Ｅｔｈｅｒｎｅｔ（登録商標）”等のＬＡＮ１３５０に対して、“同軸コネクタ（１０Ｂａｓｅ−２）”や“ＲＪ−４５コネクタ（１０／１００Ｂａｓｅ−Ｔ）”等により接続されている。
【０００８】
プリントサーバ１３０８は、例えば、パーソナルコンピュータ（ＰＣ）から構成され、ローカル接続された複数のプリンタ１３０９（１），１３０９（２），・・・や、遠隔地に設置されているプリンタ１３０２等に対して印刷処理を実行させる。
【０００９】
ＰＣ１３０３及びＰＣ１３０４はそれぞれ、ＬＡＮ１３５０に接続されており、ネットワークオペレーティングシステムの制御により、プリントサーバ１３０８と通信可能である。
【００１０】
したがって、例えば、任意のＰＣ１３０３がプリンタ１３０２に対して印刷処理を実行させたい場合、ＰＣ１３０３は、自らＮＢ１３０１を介してプリンタ１３０５と通信してプリンタ１３０２との間でプリントデータや制御情報等のやり取り行わなくとも、次のようにして、その作業をプリントサーバ１３０８に任せることができる。
【００１１】
例えば、先ず、ＰＣ１３０３は、自側のアプリケーションウェア等の起動により作成されたプリントジョブのデータを、プリンタ１３０２ではなくプリントサーバ１３０８に対して送信する。
【００１２】
プリントサーバ１３０８は、ＰＣ１３０３からのプリントジョブのデータを、ハードディスク等のローカルなデータ保存メモリ（不図示）に一時的に保持する。
【００１３】
プリントサーバ１３０８は、上記保存メモリを使用することで、複数のプリントジョブを受け付けることが可能であるため、上記保存メモリ内に複数のプリントジョブが処理待ち状態で保持されている場合、所定の方針に従って、次に処理すべきプリントジョブを決定する。
【００１４】
プリントサーバ１３０８は、次に処理すべきであると決定したプリントジョブのデータを上記保存メモリから読み出し、当該プリントジョブを、ＮＢ１３０１を介してプリンタ１３０２に対して、或いは任意のプリンタ１３０９（ｘ）に対して送信する。
【００１５】
このとき、プリントサーバ１３０８は、必要に応じて、プリンタドライバにより、送信対象のプリントジョブのデータを、プリンタ１３０２又は１３０９（ｘ）がサポートするページ記述言語（ＰＤＬ）及び制御コマンドへと変換して送信する。
【００１６】
上述のようなＰＣ１３０３，１３０４、及びプリントサーバ１３０８はそれぞれ、一般的なＰＣの構成により、データファイルの生成、当該データファイルのＬＡＮ１３５０への送信、ＬＡＮ１３５０からのデータファイルの受信、及び当該データファイルの表示及び／又は処理を実行することが可能である。
【００１７】
例えば、ＰＣ１３０３，１３０４、及びプリントサーバ１３０８としては、ネットワークソフトウェアを実行するのに適切であるような、他のコンピュータ機器を適用可能である。さらに具体的には、ＵＮＩＸ（登録商標）のソフトウェアを使用し、ＵＮＩＸ（登録商標）ワークステーションをネットワークに含み、当該ワークステーションを、適切な状況下でＰＣ１３０３，１３０４等と共に使用する。
【００１８】
ここで、ＬＡＮ１３２０、ＬＡＮ１３５０、及びＬＡＮ１３６０として使用している一般的なＬＡＮは、１つの建物内の１つの階又は連続した複数の階でのユーザグループ等の、比較的ローカルなユーザグループに対してサービスを提供する。
【００１９】
例えば、それぞれのユーザが他の建物や他県に居る場合等においては、あるユーザが他のユーザから離れるに従って、ワイドエリアネットワーク（ＷＡＮ）を形成する。ＷＡＮは、基本的には、いくつかのＬＡＮをサービス総合ディジタルネットワーク（ＩＳＤＮ）等の高速ディジタル回線で接続することにより形成された集合体である。
【００２０】
したがって、ネットワークプリントシステム１３００では、上記図６に示すように、ＬＡＮ１３２０、ＬＡＮ１３５０、及びＬＡＮ１３６０を、モデム／トランスポンダ１３３０ａ，１３３０ｂ及びバックボーン１３４０を介して接続することでＷＡＮを形成している。
【００２１】
ＬＡＮ１３６０に対しては、必要に応じて、ＰＣ１３１１、ＰＣ１３１２、ネットワークディスク１３１４が接続されたファイルサーバ１３１３、及び複数のプリンタ１３１６（１），１３１６（２），・・・が接続されたプリントサーバ１３１５が接続される。
【００２２】
また、ＬＡＮ１３２０に対しては、必要に応じて、ＰＣ１３２１及びＰＣ１３２２が接続される。
【００２３】
ＬＡＮ１３２０、ＬＡＮ１３５０、及びＬＡＮ１３６０に接続されている機器は、ＷＡＮ接続を介して、他のＬＡＮに接続された機器の機能にアクセスすることが可能である。
【００２４】
上述のようなネットワークプリントシステム１３００において、プリントサーバ１３０８やプリントサーバ１３１５等のプリントサーバを設けることで、次のような主なるメリット（１）及び（２）が得られる。
【００２５】
（１）クライアントＰＣとしてのＰＣ１３０３，１３２１，１３２２，１３１１，１３１２（以下、これらをまとめて単に「クライアントＰＣ」とも言う）で実行する個々のプリンタに依存した処理を最小限にし、その分の負荷をプリントサーバに負わせることができる。これにより、例えば、クライアントＰＣ側でユーザがドキュメントの印刷処理を行う際の当該クライアントＰＣの処理時間、すなわちユーザの待ち時間を短縮できる。
【００２６】
具体的には例えば、図１１に示すように、クライアントＰＣ１４１０の基本ソフト（ＯＳ）として、“Microsoft Windows（登録商標）（Ｒ）”（“Windows（登録商標）”）を使用し、クライアントＰＣ１４１０が、プリントサーバ１４２０を介してプリンタ１４３０で印刷処理する場合、クライアントＰＣ１４１０は、プリンタ１４３０が直接処理可能なプリンタ固有のデータファイル（当該プリンタ固有の制御コマンドを含むデータファイル）ではなく、プリンタ１４３０に依存しない中間的なファイル（中間ファイル）を生成し、当該中間ファイルをプリントサーバ１４２０に対して送信する。
【００２７】
プリントサーバ１４２０は、クライアントＰＣ１４１０からの中間ファイルに基づいて、プリンタ１４３０固有のデータを生成し、当該データ（プリンタ依存コマンド）をプリンタ１４３０に対して送信する。
【００２８】
したがって、クライアントＰＣ１４２０は、プリントサーバ１４２０を介すことで、プリンタ１４３０を用いた印刷のための処理を軽減することができる。
【００２９】
（２）付加価値のあるプリントジョブの処理が可能となる。
【００３０】
例えば、プリントジョブ毎に処理の優先順序を設定することで、複数のプリントジョブが同時に処理待ち状態となった場合に、プリントジョブが有する優先順序に基づき処理順序を決定することができる。したがって、緊急に印刷処理する必要のあるドキュメント等のプリントジョブを優先的に印刷することが可能となる。また、例えば、プリントサーバが、クライアントＰＣから受け取ったプリントジョブを送信しようとしたプリンタでエラーが発生していた場合、他のプリンタを代わりに選択して印刷処理させるという代行印刷サービス、或いは印刷時間短縮のために一つのプリントジョブを論理的に分割して複数のプリンタに並行して印刷処理させるという分散印刷サービス等の提供が可能となる。
【００３１】
ここで、上記の分散印刷サービスについて具体的に説明する。
【００３２】
例えば、ネットワークプリントシステム１３００において、クライアントＰＣ及びプリントサーバの基本ソフト（ＯＳ）として“Microsoft Windows（登録商標）（Ｒ）”（以下、単に“Windows（登録商標）”と略記する）を使用し、クライアントＰＣが、プリントサーバを介してプリンタで印刷処理するものとする。
【００３３】
先ず、システム管理者は、プリントサーバ上に一つまたは複数の論理プリンタを用意する。
【００３４】
一方、クライアントＰＣ上に対しては、プリントサーバに用意された論理プリンタに対応する論理プリンタを作成しておく。
【００３５】
ここでの“論理プリンタ”とは、物理的なプリンタを“Windows（登録商標）”上でモデル化したものであり、例えば、ドキュメントデータをプリンタに送信すべきデータに変換する際に使用するプリンタドライバや、プリントジョブのデータの出力先等の様々な情報を管理しているオブジェクトである。
【００３６】
“Windows（登録商標）”が稼働するクライアントＰＣのユーザは、アプリケーションプログラムによる印刷を実行するとき、論理プリンタプリンタを指定して印刷実行の指示を出す。
【００３７】
これにより、クライアントＰＣで稼動している“Windows（登録商標）”は、アプリケーションプログラムから受け取った描画コマンドをＥＭＦ形式と呼ばれるデータ形式に変換する。
【００３８】
“ＥＭＦ形式”とは、“Windows（登録商標）”の“ＧＤＩ”と呼ばれるデバイス（プリンタ等）に非依存なグラフィックスシステムの特徴を引き継いでおり、デバイスに依存するコマンドや情報を含まないデータ形式である。
【００３９】
そして、クライアントＰＣ側の“Windows（登録商標）”は、ＥＭＦ形式にデータ変換したプリントジョブデータをプリントサーバに対して転送する。
【００４０】
プリントサーバ側の“Windows（登録商標）”は、クライアントＰＣから受信したＥＭＦ形式のプリントジョブデータを、一旦ハードディスク等のメモリ上に保存し、その後、当該メモリからＥＭＦ形式のプリントジョブデータを読み出し、当該読出データを、印刷処理を実行しようとするプリンタのプリンタドライバを用いて、当該プリンタがサポートするページ記述言語（ＰＤＬ）のデータ形式に変換する。
【００４１】
続いて、プリントサーバ側の“Windows（登録商標）”は、上記の変換後のプリントジョブデータを、ポートモニタと呼ばれるモジュール介してプリンタに対して送信する。
【００４２】
尚、このとき対象となるプリンタが、例えば、プリンタ１３０２の場合、ネットワークインタフェースであるＮＩＣ１３０１を介して、プリントジョブデータを送信することになる。
【００４３】
プリンタは、プリントサーバからプリントジョブデータ（ＰＤＬ形式のプリントジョブデータ）を受け取り、ＰＤＬを解釈して印刷処理を実行する。
【００４４】
尚、ここでの印刷処理の詳細については、“Windows（登録商標）”の各バージョンについて発行されている「リソースキット」と呼ばれる出版物に譲る。
【００４５】
上述のような“Windows（登録商標）”を用いたネットワークプリントシステム１３００（プリンティングシステム）の構造に着目し、サードパーティにより、以下に説明するような機能拡張が行われている。
【００４６】
まず、プリントサーバ側の“Windows（登録商標）”で作成されているプリントオブジェクトに対しては、物理的なプリンタにプリントジョブデータを転送するプログラムモジュールとして、ポートモニタモジュールが通常設定されるが、このポートモニタモジュールを、プリントサーバ上で動作する他のプリントサービスプログラムに渡すモジュールに置き換える。このモジュールは、プリントジョブデータをプリンタには送信せず、例えば、ハードディスク上にファイルとして保存すし、プリントサービスプログラムが、当該ファイルを読み出すことでプリントジョブデータを入手し、独自の処理を実行した後に、当該処理後のプリントジョブデータをプリンタに対して送信する、という機能を実施するモジュールである。
【００４７】
このような構成とすることで、プリントサービスプログラムは、“Windows（登録商標）”が持っていない機能を、プリントサーバの機能として付加することができる。
【００４８】
分散印刷サービスにおける分散印刷機能は、上記の機能拡張を利用したものである。“分散印刷機能”は、一つのプリントジョブを論理的に分割して複数の分割ジョブを生成し、これらの分割ジョブを複数のプリンタに振り分け、当該複数のプリンタに対して印刷処理を実行させる機能である。これにより、プリントジョブに要する時間を短縮することができる。
【００４９】
一つのプリントジョブを論理的に分割する方法としては、いくつかの方法を適用可能であるが、代表的な方法としては、印刷部数に基づき分割する方法や、印刷するドキュメントをページ方向に分割する方法等が挙げられる。
【００５０】
印刷部数に基づき分割する方法の場合、それぞれのプリンタで印刷する部数の全てを合計したものが、分割前のプリントジョブで指定された印刷部数に等しくなる。
【００５１】
一方、印刷するドキュメントをページ方向に分割する方法の場合、それぞれのプリンタで印刷するページ範囲の全てを寄せ集めたものが、分割前のプリントジョブで印刷するドキュメントのページ範囲全体に等しくなる。
【００５２】
分散印刷機能では、もとのプリントジョブを分割して複数のプリンタに対して割り振る際の、分割割合を予め決めて設定する必要がある。このときの分割割合の設定方法としては、例えば、分散印刷の対象となる複数のプリンタに対して、出力枚数が均等になるように設定する方法や、プリンタの印刷速度性能に応じて、印刷速度の速いプリンタの出力枚数がより多くなるように傾斜配分する方法等が挙げられる。
【００５３】
上述した２つのプリントジョブの分割方法は、本来異なる分割の概念に基づいており、これら両者を組み合わせることも原理的に可能である。
【００５４】
例えば、出力結果が１部当たり１００枚となるドキュメントを１０部印刷するプリントジョブについて、当該プリントジョブを４台のプリンタで印刷する場合、先ず、印刷部数がそれぞれ５部であるの２つのジョブに分割し、さらにこれらの２つのジョブを、１〜５０枚目、及び５１〜１００枚目のジョブに分割し、この結果得られた４つのジョブ（分割ジョブ）を、４台のプリンタに対して割り当てる。
【００５５】
したがって、分散印刷機能におけるプリントジョブの分割割合の設定は、分割方法に応じて複数種類必要なことになる。
【００５６】
以上説明したようなネットワークプリントシステム１３００で使用するプリンタとしては、次のようなプリンタが挙げられる。
【００５７】
・特許文献１等に記載されているような、代行印刷処理を実行したプリンタを検索する手間を省くことを目的としたプリンタ。
【００５８】
・特許文献２等に記載されているような、予め決定された機器の優先順位に従って代行印刷処理を実行するように構成されたプリンタ。さらに、プリンタのエラー発生時に、エラーが発生したプリンタに対応するアウトプットキューに登録されている未処理のファイル出力要求を他の正常なプリンタに対応するアウトプットキューに登録しなおして、出力先プリンタを変更するように構成されたプリンタ。
【００５９】
・分散印刷機能により割り当てられた分割ジョブの処理において、ステイプルや両面、複数ページを１枚にまとめる“Ｎ−Ｕｐ”と呼ばれる属性を指定された場合に、最小分割単位を操作することにより想定外のステイプル結果や、両面、“Ｎ−Ｕｐ”を防ぐことを目的としたプリンタ。
【００６０】
ところで以上の説明では、プリントサーバを複数のユーザが共有する使用形態を想定しているが、上述のような代行印刷機能のような付加価値印刷機能を提供するシステムを単一のエンドユーザが自分のマシン上で使用する形態も考えられる。
【００６１】
上記のプリントサーバを稼動させるためには、ソフトウェアを構成するモジュールをマシンにインストールするだけでなく、前にも述べたようにシステム管理者がプリントサーバマシン上に当該プリントサーバシステムで使用するための論理プリンタを作成する。また、付加価値印刷機能を持つシステムをエンドユーザのマシンで使用する場合にはそのエンドユーザ自身で論理プリンタの設定を行う。いずれの場合も、プリンタの種類やネットワーク上のアドレスなど、環境に応じて設定が必要になる。これはWindows（登録商標）では以下のような方法で行う。
【００６２】
まず、プリンタに送信するプリントデータを処理するためのポートモニタを作成する。これはプリントサーバに付属する設定ツールによって行う。設定ツールはユーザインタフェースを備え、ポートモニタの作成に必要な情報をユーザが入力する。この必要な情報としては少なくとも以下のものを含む。
【００６３】
プリンタの機種名
プリンタのネットワークインタフェースが持つ、ネットワークで一意に割り当てられたアドレス
プリンタへプリントデータを転送する方法とそれに必要な設定情報
作成しようとしているポートモニタのインスタンス名
（さらにプリントサーバの持つ機能によっては、プリンタに関するより詳細な情報を必要とする場合もあるがここでは省略する。）
次に、プリンタドライバをインストールする。これはポートモニタの作成時に指定されたプリンタの機種名から適切なものを選択して行う。この時、所望のプリンタドライバがすでにインストールされているかどうかをまず調べ、インストールされている場合には改めてインストールすることはせず、インストールされていない場合にだけ実際にインストールを行う。
【００６４】
最後に、論理プリンタのインスタンスの作成を行う。論理プリンタのインスタンスを作成する時には、その属性として以下の情報を指定する。
【００６５】
ポートモニタのインスタンス名
プリンタドライバの名前
作成しようとしている論理プリンタのインスタンス名
（ここでも、さらにプリントサーバの持つ機能によっては、論理プリンタに関するより詳細な情報を必要とする場合もあるがここでは省略する。）上記の属性を見ればわかるように、使用しようとしているプリンタに関する情報をもとに作成またはインストールしておいたポートモニタ、プリンタドライバを論理プリンタでは指定する。ここで注意すべき点は、Windows（登録商標）ではプリンタデバイスの情報は論理プリンタ自身の設定情報には直接的には含まれず、プリンタデバイスの情報は論理プリンタに割り当てられているポートモニタに分離して管理され、ポートモニタを介して関連付けられる構造になっている点である。従って、ある論理プリンタに割り当てられているポートモニタのインスタンスを他のポートモニタに置き換えても、置き換え後のポートモニタに設定されたプリンタの機種が当該論理プリンタに割り当てられているプリンタドライバが対応する機種である限り機構上問題はない。
【特許文献１】特開平１０−３１１５６８号
【特許文献２】特開平１１−１６７４７２号
【発明の開示】
【発明が解決しようとする課題】
【００６６】
以上に述べたように、プリントサーバを導入することにより、OSの印刷機能を拡張してOSがもともと持っていない機能を付加することができる。ただしそのためには、前記のようにシステム管理者が、プリントサーバが動作するマシン上に一つまたは複数の論理プリンタを作成してプリントサーバの環境をセットアップする必要がある。
【００６７】
また、上記のような付加価値印刷機能を提供するシステムを単一のユーザが使用する形態の場合には、そのユーザ自身がシステムのセットアップを行わなければならない。
【００６８】
しかしながら、論理プリンタの作成にはプリンタデバイスの機種名やアドレス、適切なプリンタドライバの名前等の情報を正確に入力する必要がある。このことは単に作業が面倒というだけでなく、エンドユーザ自身がシステムのセットアップを行う場合には、それらの情報の入手が難しい、あるいは入力が求められている情報についての理解不足によって困惑が生じるといった問題が起こりやすい。さらに、たとえ作業を行うのがシステム管理者であっても、作成しようとする論理プリンタの数が多くなるとその作業自体が煩雑になり、それだけ設定ミスが起きやすくなる。
【００６９】
そこで、本発明は、上記の欠点を除去するために成されたもので、ネットワークに接続されているプリンタデバイスの探索を行い、それによって得られた情報を利用して、前記プリントサーバあるいは付加価値印刷機能を提供するプリントシステムのための論理プリンタのインスタンスの作成を容易に且つ迅速に行うことを可能にする、出力管理システム設定システム、出力管理システム設定方法、それを実施するためのプログラムを記憶したコンピュータ読出可能な記憶媒体、及び当該プログラムを提供することを目的とする。
【課題を解決するための手段】
【００７０】
かかる目的下において、本発明は、ネットワーク上の出力デバイスとの通信を司る独自の通信制御手段を割り当てられた論理出力装置を利用する出力管理装置のための、前記論理出力装置の設定を行う出力管理装置設定装置であって、ネットワーク上に存在する出力デバイスから該デバイスに関する情報を入手するデバイス情報取得手段と、前記独自の通信制御手段のインスタンスを、前記デバイス情報取得手段によって入手した情報を用いて作成する制御手段を有することを特徴とする。
【発明の効果】
【００７１】
本発明によれば、固有のポートモニタを割り当てた論理プリンタに用いるプリントサーバシステム、あるいは付加価値印刷機能を提供するシステムのための論理プリンタを作成する工程を、ネットワーク上に接続されているプリンタデバイスから得た情報をもとにプログラムが自動的に論理プリンタを作成することで非常に容易にすることが可能となる。それにより、ユーザの設定作業にかかわる手間を低減させることに寄与する。
【発明を実施するための最良の形態】
【００７２】
以下、本発明の発明を実施するための最良の形態について図面を用いて説明する。
【００７３】
以下、本発明の実施の形態について図面を用いて説明する。
【００７４】
本発明は、例えば、図１に示すようなパーソナルコンピュータ（ＰＣ）１００に適用される。
【００７５】
本実施の形態のＰＣ１００は、上記図６に示したようなネットワークプリントシステムのプリントサーバ、または付加価値印刷機能を有するプリントシステムをインストールしたユーザマシンにおける設定ツールとして適用可能である。例えば、プリントサーバの設定ツールとして適用した場合、プリントサーバ上の論理プリンタの作成を行う機能において実施することができる。特に、本実施の形態のＰＣ１００は、論理プリンタの作成を、当該プリントサーバソフトウェアあるいは付加価値印刷機能を有するプリントシステムをインストールする前にすでに設定済みであった汎用の論理プリンタが持つ設定情報を用いることにより、論理プリンタの作成にかかわる情報をユーザが入力する必要をなくすことで、利便性を高めることを目的としている。
【００７６】
以下、本実施の形態のＰＣ１００の構成及び動作について具体的に説明する。
【００７７】
＜ＰＣ１００のハード構成＞
ＰＣ１００は、上記図１に示すように、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、キーボード（ＫＢ）１０９のキーボードコントローラ（ＫＢＣ）１０５と、表示部としてのＣＲＴディスプレイ（ＣＲＴ）１１０のＣＲＴコントローラ（ＣＲＴＣ）１０６と、ハードディスク（ＨＤ）１１１及びフレキシブルディスク（ＦＤ）１１２のディスクコントローラ（ＤＫＣ）１０７と、ネットワーク（ＬＡＮ）２００との接続のためのネットワークインターフェースコントローラ（ＮＩＣ）１０８とが、システムバス１０４を介して互いに通信可能に接続された構成としている。
【００７８】
ＣＰＵ１０１は、ＲＯＭ１０２或いはＨＤ１１１に記憶されたソフトウェア、或いはＦＤ１１２により供給されるソフトウェア（プリントサーバプログラム等）を実行することで、システムバス１０４に接続された各構成部を総括的に制御する。
【００７９】
すなわち、ＣＰＵ１０１は、所定の処理シーケンスに従った処理プログラムを、ＲＯＭ１０２、或いはＨＤ１１１、或いはＦＤ１１２から読み出して実行することで、本実施の形態での動作を実現するための制御を行う。
【００８０】
ＲＡＭ１０３は、ＣＰＵ１０１の主メモリ或いはワークエリア等として機能する。
【００８１】
ＫＢＣ１０５は、ＫＢ１０９や図示していないポインティングデバイス等からの指示入力を制御する。
【００８２】
ＣＲＴＣ１０６は、ＣＲＴ１１０の表示を制御する。
【００８３】
ＤＫＣ１０７は、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイル、ネットワーク管理プログラム、及び本実施の形態における所定の処理プログラム等を記憶するＨＤ１１１及びＦＤ１１２とのアクセスを制御する。
【００８４】
ＮＩＣ１０８は、ＬＡＮ１１３上の装置或いはシステム（プリントサーバ、クライアントＰＣ、及びプリンタ等）と双方向にデータをやりとりする。
【００８５】
ＨＤ１１１には、ＰＣ１００を、プリントサーバとして機能させるためのプリントサーバプログラムおよび本発明を適用したプリントサーバ設定プログラム等が格納される。すなわち、ＨＤ１１１内の当該プログラムがＣＰＵ１０１から読み出され実行されることで、ＰＣ１００はプリントサーバおよび本発明を適用したプリントサーバ設定プログラム等として機能する。
【００８６】
したがって、後述の全ての説明において、特に断りのない限り、実行の主体はハード上はＣＰＵ１０１となる。一方、ソフトウェア上の制御の主体は、ＨＤ１１１内に格納されたプリントサーバプログラム等のソフトウェアとなる。
【００８７】
本実施の形態では、ＰＣ１００のＯＳとして、例えば、米マイクロソフト社製“Windows（登録商標）NT  ４．０  Server（Ｒ）”を想定しているが、これに限るものではない。
【００８８】
尚、プリントサーバプログラムおよび本発明を適用したプリントサーバ設定プログラム等のソフトウェアの格納先は、ＨＤ１１１に限られることはなく、例えば、ＦＤ１１２やＣＤ−ＲＯＭ等の任意の記憶媒体を適用可能である。この場合、ＣＰＵ１０１は、当該記憶媒体からプログラムを読み出してＨＤ１１１にインストールする。
【００８９】
＜PC100がプリントサーバ設定プログラムとして機能する場合のモジュール構成および動作＞
図２は、上記図１に示したPC１００をプリントサーバとして稼動させた場合の、プリントサーバ上で実行するプリントサーバ設定プログラム（＝２００）の内部的なソフトウェアモジュール構成を具体的に示した図である。ここではプリントサーバ自体の構成の詳細は本発明の趣旨からははずれるため省略する。ただし、当該プリントサーバはWindows（登録商標）におけるポートモニタとして固有のものを割り当てた論理プリンタを使用することは留意する必要がある。
【００９０】
全体制御モジュール２０１はプリントサーバ設定プログラム２００の内部処理の全体的な制御を司る。具体的には配下のデータベース・ファイルからプリンタ情報取得モジュール２０２とプリンタデバイス情報収集モジュール２０３と論理プリンタ自動作成モジュール２０５に順次処理を行わせ、その結果として、当該プリントサーバ専用の論理プリンタ一つまたは複数個作成せしめる。
【００９１】
全体制御モジュール２０１はまずデータベース・ファイルからプリンタ情報取得モジュール２０２を呼び出す。呼ばれたデータベース・ファイルからプリンタ情報取得モジュール２０２は、予めデータベースまたは、ファイルに用意された論理プリンタ作成・編集・削除情報であるデバイスの機種名、IPアドレス、プリンタドライバ、プリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）また、代行印刷等でこのデバイスと関連させるための他のプリンタデバイス名情報を取得し、プリンタ情報記憶モジュール２０４にプリンタ情報を記録する。次に全体制御モジュール２０１はプリンタデバイス情報収集モジュール２０３を呼び出す。呼ばれたプリンタデバイス情報収集モジュール２０３は作成・編集を行うプリンタが単一の場合はネットワーク上にSNMPプロトコルに則ったパケットのユニキャストを行うことにより、ネットワークに接続されているプリンタデバイスからデバイス情報取得を行う。また、作成・編集を行うプリンタが複数の場合はマルチキャストによりプリンタデバイスからデバイス情報取得を行う。プリンタデバイスから返されるパケットはそのデバイスの機種名、IPアドレスの情報、プリンタオプション情報、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）等を持っている。プリンタデバイス情報収集モジュール２０３は返された前記の情報を論理プリンタ情報記憶モジュール２０４に保存させる。
【００９２】
全体制御モジュール２０１は、プリンタデバイス情報収集モジュール２０３の処理が終わると、次に論理プリンタ自動作成モジュール２０５を呼び出す。論理プリンタ自動作成モジュール２０５は、論理プリンタ情報記憶モジュール２０４に格納された予めデータベース・ファイル等から取得したデバイスの機種名、IPアドレス、プリンタドライバ、プリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）また、代行印刷等でこのデバイスと関連させるための他のプリンタデバイス名情報に対し、プリンタデバイス情報収集モジュール２０３から取得した機種名とIPアドレス、プリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）を反映させ以下の処理を行う。
【００９３】
まず情報を反映させた機種名が非サポート機種のものの場合にはこの論理プリンタ情報を無視して次のエントリの機種名を取得する。（次のエントリが存在しなければ全体制御モジュール２０１に戻る。）サポート機種の場合は、機種名をドライバ名変換モジュール２０６に渡し、機種名に対応するプリンタドライバの名称を取得する。次に、機種名をジョブ送信方式情報取得モジュール２０７に渡し、プリントジョブのプリンタデバイスへの送信方式とそれに関連する初期設定情報を取得する。本実施例では前者はLPRまたはRAW、後者はLPRの場合にはLPRキュー名、RAWの場合にはポート番号を持つ。この取得する情報はジョブ送信方式情報取得モジュール２０７が管理する静的な情報であり、各機種に対してあらかじめ一意に決められている。
【００９４】
論理プリンタ自動作成モジュール２０５は、論理プリンタ情報記憶モジュール２０４から取得した、データベースから取得した情報にネットワークから取得した情報を反映させたプリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）、IPアドレスに加え、ジョブ送信方式情報取得モジュール２０７から得られた上記情報をプリントサーバ専用ポートモニタ作成モジュール２０８に渡す。プリントサーバ専用ポートモニタ作成モジュール２０８は配下のポートモニタ初期値取得モジュールに機種名とジョブ送信方式情報を渡して、ポートモニタの各種設定値の初期値を生成させ、入手する。これと前記のプリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）、IPアドレス、ジョブ送信方式情報、を用いてプリントサーバ専用のポートモニタを作成する。
【００９５】
論理プリンタ自動作成モジュール２０５は、上記で作成されたポートモニタと上記で取得したプリンタドライバ名、代行印刷等でこのデバイスと関連させるための他のプリンタデバイス名情報を用いて論理プリンタを作成する。
【００９６】
＜プリントサーバ設定プログラム２００の処理フロー＞
図３は、プリントサーバ設定プログラム２００の機能を具体的にフローチャートにより示したものである。
【００９７】
ステップＳ３０１：
全体制御モジュール２０１が、データベース・ファイルからプリンタ情報取得モジュール２０２を呼び出し、作成・編集する論理プリンタ情報を取得し、
次にプリンタデバイス情報収集モジュール２０２を呼び出してネットワーク上のプリンタデバイスを検出し、その際入手したプリンタデバイスの情報を保存する。
【００９８】
ステップＳ３０２：
ステップＳ３０１により入手・一時保存された情報を用いて、当該プリントサーバで使用する専用の論理プリンタを作成する。
【００９９】
図４および図５は、上記のステップＳ３０１とＳ３０２をそれぞれさらに詳細に示したものである。
【０１００】
ステップＳ４０１：
予めデータベースまたは、ファイルに用意された論理プリンタ作成・編集・削除情報であるデバイスの機種名、IPアドレス、プリンタドライバ、プリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）また、代行印刷等でこのデバイスと関連させるための他のプリンタデバイス名情報を取得する。
【０１０１】
ステップＳ４０２：
取得したプリンタデバイスがネットワーク上に存在するかを調べる。
【０１０２】
ステップＳ４０３：
取得したプリンタデバイスがネットワーク上に存在する場合は、ネットワークにSNMP（Simple Network Management Protocol）のパケットをユニ・マルチキャストし、その応答を受信することによって、ネットワーク上に動作しているプリンタデバイスからデバイス情報を取得する。応答パケット内にはMIB（Management Information Base）オブジェクトの値として機種名、プリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）が含まれている。また、パケットの送信先を調べることによりIPアドレスを取得することができる。
【０１０３】
ステップＳ４０４：
ステップS４０１で取得した情報からS４０３で取得した情報を比較しS４０３の情報と異なる場合は、２０４で記憶されている情報をS４０３で取得した情報に更新する。
【０１０４】
ステップS４０５：
プリンタデバイス情報記憶モジュール２０４から取得した代行印刷等でこのデバイスと関連させるための他のプリンタデバイスに対し、SNMP（Simple Network Management Protocol）のパケットをユニ・マルチキャストし、その応答を受信することによって、機種名、IPアドレス、プリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）を取得する。
【０１０５】
ステップS４０６：
S４０５で取得した情報と２０４から取得した代行印刷等でこのデバイスと関連させるための他のプリンタデバイス情報が異なる場合は、ネットワーク上から取得した情報により代行印刷先プリンタとして関連することができないプリンタは論理プリンタ作成を行う情報として満たないため、２０４の情報からプリンタ情報を修正または、削除を行う。
【０１０６】
ステップＳ５０１：
プリンタデバイス情報記憶モジュール２０４中に未処理のものがあるかどうかを判断する。
【０１０７】
ステップＳ５０２：
プリンタデバイス情報記憶モジュール２０４中の未処理のものから、プログラムが内部的に一つ選択する。
【０１０８】
ステップＳ５０３：
プリンタデバイス情報記憶モジュール２０４からステップS５０２で選択したプリンタデバイスに関係する機種名、IPアドレス、プリンタドライバ、プリンタデバイスのオプション、プリンタデバイスの性能（印刷処理速度・モノクロ/カラー等の情報）を取得する。
【０１０９】
ステップＳ５０４：
ドライバ名変換モジュール２０６が、ステップS５０３で取得された機種名をもとにドライバ名を生成して論理プリンタ自動作成モジュール２０３に返す。
【０１１０】
ステップＳ５０５：
ジョブ送信方式情報取得モジュール２０７が、ステップS５０３で取得された機種名をもとにジョブ送信方式とその設定情報を生成して論理プリンタ自動作成モジュール２０３に返す。
【０１１１】
ステップＳ５０６：
ポートモニタ初期値取得モジュール２０９が、ステップS５０３で取得された機種名、プリンタデバイスのオプション情報をもとにポートモニタ設定の初期値を生成してプリントサーバ専用ポートモニタ作成モジュール２０８に返す。
【０１１２】
ステップＳ５０７：
ステップS５０３で取得されたIPアドレスと、ステップS５０６で生成されたポートモニタ設定の初期値をもとに新たにポートモニタを作成する。
【０１１３】
ステップＳ５０８：
ステップS５０４で取得されたドライバ名と、ステップS５０７で作成されたポートモニタとをもとに新たに論理プリンタを作成する。
【０１１４】
（発明の他の実施例）
前項の実施例ではプリントサーバを専用サーバマシン上で稼動させたときの、サーバマシン上における論理プリンタの作成について本発明の実施形態を開示した。しかしながら、サーバマシンでなくても、ユーザマシン上に付加価値印刷を提供するシステムを導入し、そのシステムが固有のポートモニタを使用する場合にも本発明は応用が可能である。
【図面の簡単な説明】
【０１１５】
【図１】本発明を適用したパーソナルコンピュータ（ＰＣ）の構成を示すブロック図である。
【図２】本発明を適用したプリントサーバ設定プログラムのモジュール構成を示すブロック図である。
【図３】本発明を適用したプリントサーバ設定プログラムにおける、論理プリンタ作成手順の概要を示すフローチャートである。
【図４】図３に示したフローチャートのステップＳ３０１の詳細を示すフローチャートである。
【図５】図３に示したフローチャートのステップＳ３０２の詳細を示すフローチャートである。
【図６】印刷システムのブロック構成図である。
【図１】
2006171865.tif 000003
【図２】
2006171865.tif 000004
【図３】
2006171865.tif 000005
【図４】
2006171865.tif 000006
【図５】
2006171865.tif 000007
【図６】
2006171865.tif 000008