(57)【要約】【課題】  ネットワークシステムにおけるＷｅｂサービス実行部における名前解決処理負担を大幅に軽減することである。【解決手段】  クライアント１０４のＷｅｂサービス７０１で実行可能なポート作成をプリントサービス７０４を備えるサーバ１０１に代行指示し、該指示に対応する応答をＷｅｂサービス７０１を介して受信してＷｅｂブラウザ７０３で表示させる構成を特徴とする。【選択図】  図７
2005173722.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂサービス機能を実行するＷｅｂサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムであって、
前記データ処理装置のＷｅｂサービス実行部で実行可能なポート作成を前記プリントサービス実行部を備えるサーバ装置に代行指示し、該指示に対応する応答をＷｅｂサービス実行部を介して受信してＷｅｂブラウザで表示させる代行処理手段を備えることを特徴とするプリンタシステム。
【請求項２】
所定のサービス機能を実行するサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムであって、
前記データ処理装置は、
入力されるポート情報の作成を前記サーバ装置に指示する指示手段を備え、
前記サーバ装置は、
入力されるポート情報がホスト名で指定されているか否かを判定する第１の判定手段と、
前記第１の判定手段がホスト名で指定されていると判定した場合、外部の名前解決サーバでの名前解決を代行する代行手段と、
前記代行手段による名前解決が成功したか否かを判定する第２の判定手段と、
前記第２の判定手段による判定結果を前記データ処理装置に応答する応答手段と、
を備えることを特徴とするプリンタシステム。
【請求項３】
前記所定のサービスは、Webサービスであって、前記入力されるポート情報は、所定のＷｅｂブラウザを介して入力することを特徴とする請求項１または２記載のプリンタシステム。
【請求項４】
前記Ｗｅｂサービス実行部は、前記プリントサービス機能の設定および管理を行うことを特徴とする請求項１記載のプリンタシステム。
【請求項５】
前記所定のＷｅｂブラウザは、前記応答手段が応答した判定結果を表示することを特徴とする請求項１又は３又は４のいずれかに記載のプリンタシステム。
【請求項６】
前記プリントサービス機能の設定は、前記出力ポートの作成に対する設定であることを特徴とする請求項１〜５のいずれかに記載のプリンタシステム。
【請求項７】
Ｗｅｂサービス機能を実行するＷｅｂサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムにおけるデータ処理方法であって、
前記データ処理装置のＷｅｂサービス実行部で実行可能なポート作成を前記プリントサービス実行部を備えるサーバ装置に代行指示し、該指示に対応する応答をＷｅｂサービス実行部を介して受信してＷｅｂブラウザで表示させる代行処理ステップを備えることを特徴とするデータ処理方法。
【請求項８】
所定のサービス機能を実行するサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムにおけるデータ処理方法であって、
入力されるポート情報の作成を前記サーバ装置に指示する指示ステップと、
入力されるポート情報がホスト名で指定されているか否かを判定する第１の判定ステップと、
前記第１の判定ステップがホスト名で指定されていると判定した場合、外部の名前解決サーバでの名前解決を代行する代行ステップと、
前記代行ステップによる名前解決が成功したか否かを判定する第２の判定ステップと、
前記第２の判定ステップによる判定結果を前記データ処理装置に応答する応答ステップと、
を備えることを特徴とするデータ処理方法。
【請求項９】
前記所定のサービスは、Ｗｅｂサービスであって、前記入力されるポート情報は、所定のＷｅｂブラウザを介して入力することを特徴とする請求項７または８記載のデータ処理方法。
【請求項１０】
前記Ｗｅｂサービス実行部は、前記プリントサービス機能の設定および管理を行うことを特徴とする請求項７または８記載のデータ処理方法。
【請求項１１】
前記所定のＷｅｂブラウザは、前記応答ステップが応答した判定結果を表示することを特徴とする請求項７〜１０のいずれかに記載のデータ処理方法。
【請求項１２】
前記プリントサービス機能の設定は、前記出力ポートの作成に対する設定であることを特徴とする請求項７〜１１のいずれかに記載のデータ処理方法。
【請求項１３】
請求項７〜１２のいずれかに記載のデータ処理方法を実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項１４】
請求項７〜１２のいずれかに記載のデータ処理方法を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂサービス機能を実行するＷｅｂサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムおよびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムに関するものである。
【背景技術】
【０００２】
従来、この種のプリントシステムにおいて、クライアントマシンがネットワーク上のプリントサービスサーバ等にアクセスしてＷｅｂサービスを利用する場合、例えばＩｎｔｅｒｎｅｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｅｒ（登録商標、以下ＩＩＳ）等のＷｅｂサーバをＷｅｂサービスのコンピュータにインストールする。これにより、Ｗｅｂブラウザを介してＷｅｂサービスを利用することが可能となる。
【０００３】
近年、Ｗｅｂサーバはセキュリティの甘さから、ハッカなどにより攻撃の対象とされている。そのため、通常、Ｗｅｂサーバは後述するクライアントコンピュータで利用する構成を採用している。
【０００４】
一方、プリントサービスは、そのデータ処理の性質上、後述するようにサーバコンピュータで利用される。
【０００５】
そのため、Ｗｅｂサーバ／サービスをインストールしたコンピュータとプリントサービスをインストールするコンピュータが同一となるシステムとなるケースは少ない。
【０００６】
また、Ｗｅｂサービスは、プリントサービスのＩＰアドレスまたはホスト名を指定することにより、様々なプリントサービスにアクセスすることが可能であり、このような理由からも、Ｗｅｂサービスが特定のプリントサービスと同一コンピュータに存在するケースは少ない。
【０００７】
さらに、クライアントマシン側において、Ｗｅｂブラウザを使用してＷｅｂサービスからプリントシステムの後述する出力ポートの作成処理を行う場合、ユーザはネットワークプリンタのＩＰアドレスまたはホスト名や、出力ポート名、製品名等を入力する。
【０００８】
そして、ユーザの入力がＩＰアドレスではなく、ホスト名であった場合、ＷｅｂサービスからＤＮＳサーバにアクセスして名前解決を行う。また、Ｗｅｂサーバは以上の情報と共にプリントサービスに出力ポートの作成を指示する等の処理を行う必要がある。従来、この種のネットワーク技術が、下記特許文献１，２に既に公開されている。
【特許文献１】特開２００２−１１１７１３号公報
【特許文献２】特開２００２−１８３００２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来のプリンタシステムは上記のように構成されているので、プリントサービスとＷｅｂサービスは異なるコンピュータに存在し、また、複数のプリントサービスにアクセスするため、プリントサービスによっては接続するＤＮＳサーバが異なる可能性があり、複数のプリントサーバの出力ポートを作成する場合、クライアント側における名前解決におけるＷｅｂサービスのデータ処理負担が極めて大きくなる。
【００１０】
また、上述したように、プリントサービスとＷｅｂサービスとを分離したマシンにインストールして構築されるネットワークシステムにおいて、Ｗｅｂブラウザを使用してＷｅｂサービスからプリントシステムの後述する出力ポートの作成処理を行う際に、クライアントマシンは、必然的に複数のプリントサービスにアクセスすることとなり、Ｗｅｂサービス自体に要するデータ処理負担が増大してしまう問題があった。
【００１１】
加えて、実際に出力ポートの作成処理を行い、作成した出力ポートを使用する等の処理をプリントサービス側ではなく、クライアント側におけるＷｅｂサービス側で名前解決処理等を含めて処理することはネットワークシステム全体からみても不自然処理となっているのが現状である。
【００１２】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、データ処理装置のＷｅｂサービス実行部で実行可能なポート作成をプリントサービス実行部を備えるサーバ装置に代行指示し、該指示に対応する応答をＷｅｂサービス実行部を介して受信してＷｅｂブラウザで表示させることにより、ネットワークシステムにおけるＷｅｂサービス実行部の名前解決処理負担を大幅に軽減して、データ処理装置側におけるその他処理効率を向上させることができるプリンタシステムおよびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムを提供することである。
【課題を解決するための手段】
【００１３】
本発明に係る第１の発明は、Ｗｅｂサービス機能を実行するＷｅｂサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムであって、前記データ処理装置のＷｅｂサービス実行部で実行可能なポート作成を前記プリントサービス実行部を備えるサーバ装置に代行指示し、該指示に対応する応答をＷｅｂサービス実行部を介して受信してＷｅｂブラウザで表示させる代行処理手段（例えば図７に示すプリントサービス７０４，Ｗｅｂサービス７０１等）を備えることを特徴とする。
【００１４】
本発明に係る第２の発明は、所定のサービス機能を実行するＷｅｂサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムであって、前記データ処理装置（例えば図７に示すクライアントマシン１０４）は、入力されるポート情報の作成を前記サーバ装置に指示する指示手段（Ｗｅｂサービス７０１に相当）を備え、前記サーバ装置は、入力されるポート情報がホスト名で指定されているか否かを判定する第１の判定手段と、前記第１の判定手段がホスト名で指定されていると判定した場合、外部の名前解決サーバ（図７に示すＤＮＳサーバ７０５）での名前解決を代行する代行手段（例えば図７に示すプリントサービス７０４）と、前記代行手段による名前解決が成功したか否かを判定する第２の判定手段（例えば図７に示すプリントサービス７０４）と、前記第２の判定手段による判定結果を前記データ処理装置に応答する応答手段（例えば図７に示すプリントサービス７０４）とを備えることを特徴とする。
【００１５】
本発明に係る第３の発明は、前記所定のサービスは、Ｗｅｂサービスであって、前記入力されるポート情報は、所定のＷｅｂブラウザを介して入力することを特徴とする。
【００１６】
本発明に係る第４の発明は、前記Ｗｅｂサービス実行部は、前記プリントサービス機能の設定および管理を行うことを特徴とする。
【００１７】
本発明に係る第５の発明は、前記所定のＷｅｂブラウザは、前記応答手段が応答した判定結果を表示することを特徴とする。
【００１８】
本発明に係る第６の発明は、前記プリントサービス機能の設定は、前記出力ポートの作成に対する設定であることを特徴とする。
【００１９】
本発明に係る第７の発明は、Ｗｅｂサービス機能を実行するＷｅｂサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムにおけるデータ処理方法であって、前記データ処理装置のＷｅｂサービス実行部で実行可能なポート作成を前記プリントサービス実行部を備えるサーバ装置に代行指示し、該指示に対応する応答をＷｅｂサービス実行部を介して受信してＷｅｂブラウザで表示させる代行処理ステップ（図９に示すステップＳ９０１〜Ｓ９０５）を備えることを特徴とする。
【００２０】
本発明に係る第８の発明は、所定のサービス機能を実行するＷｅｂサービス実行部を備えるデータ処理装置とプリントサービス機能を実行するプリントサービス実行部を備えるサーバ装置とが通信可能なプリンタシステムにおけるデータ処理方法であって、入力されるポート情報の作成を前記サーバ装置に指示する指示ステップ（図８に示すステップＳ８０２）と、入力されるポート情報がホスト名で指定されているか否かを判定する第１の判定ステップ（図９に示すステップＳ９０１）と、前記第１の判定ステップがホスト名で指定されていると判定した場合、外部の名前解決サーバでの名前解決を代行する代行ステップ（図９に示すステップＳ９０２）と、前記代行ステップによる名前解決が成功したか否かを判定する第２の判定ステップ（図９に示すステップＳ９０３）と、前記第２の判定ステップによる判定結果を前記データ処理装置に応答する応答ステップ（図９に示すステップＳ９０４，Ｓ９０５）とを備えることを特徴とする。
【００２１】
本発明に係る第９の発明は、前記所定のサービスは、Ｗｅｂサービスであって、入力されるポート情報は、所定のＷｅｂブラウザを介して入力することを特徴とする。
【００２２】
本発明に係る第１０の発明は、前記Ｗｅｂサービス実行部は、前記プリントサービス機能の設定および管理を行うことを特徴とする。
【００２３】
本発明に係る第１１の発明は、前記所定のＷｅｂブラウザは、前記応答ステップが応答した判定結果を表示することを特徴とする。
【００２４】
本発明に係る第１２の発明は、前記プリントサービス機能の設定は、前記出力ポートの作成に対する設定であることを特徴とする。
【００２５】
本発明に係る第１３の発明は、第７〜第１２の発明のいずれかに記載のデータ処理方法を実行させるためのプログラムをコンピュータが読み取り可能な記憶媒体に格納したことを特徴とする。
【００２６】
本発明に係る第１４の発明は、第７〜第１２の発明のいずれかのデータ処理方法を実行させるプログラムであることを特徴とする。
【発明の効果】
【００２７】
本発明によれば、ネットワークシステムにおけるＷｅｂサービス実行部における名前解決処理負担を大幅に軽減して、データ処理装置側におけるその他処理効率を向上させることができるという効果を奏する。
【発明を実施するための最良の形態】
【００２８】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００２９】
図１は、本発明の一実施形態を示す印刷処理システム（プリンタシステム）の構成を示す図である。
【００３０】
図１において、１０１，１０２，１０３，１０４は、ネットワーク１０６に接続され、相互に通信可能なネットワークコンピュータであり、典型的にはパーソナルコンピュータ（ＰＣ）である。
【００３１】
これらのうち、１０２，１０３，１０４はクライアントコンピュータ（以下、クライアント）であり、イーサネット（登録商標）などのネットワークケーブルによってネットワーク１０６に接続され、アプリケーションプログラム等の各種プログラムを実行可能である。
【００３２】
クライアント１０４はＷｅｂサーバ／Ｗｅｂサービスがインストールされており、クライアント１０２，１０３は印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。
【００３３】
ここで、クライアント１０２，１０３は複数のプリンタドライバをサポートするものとする。
【００３４】
これに対し、１０１はサーバコンピュータ（以下、サーバ）であり、ネットワークケーブルによってネットワーク１０６に接続され、ネットワークで使用されるファイルを蓄積し、ネットワーク１０６の使用状態を監視する。このサーバ１０１はネットワーク１０６に接続されているプリンタ１０５を管理するプリントサーバとしても機能する。
【００３５】
具体的には、プリントサーバ１０１はクライアント１０２，１０３から印刷要求が出されたプリントデータを含む印刷ジョブを後述するハードディスク等の不揮発性記憶装置に一時的に格納して印刷する機能や、クライアント１０２，１０３から印字データを含まないジョブ情報を受け取って印刷順序を管理し、印刷順序になったクライアントに対して印字データを含む印刷ジョブの送信許可を通知する機能や、後述するネットワークプリンタのステータスや印刷ジョブの各種情報を取得してクライアント１０２，１０３に通知する機能や、オペレーティングシステムがＷｉｎｄｏｗｓ（登録商標）におけるＷｉｎｄｏｗｓ（登録商標）Ｓｐｏｏｌｅｒから印刷ジョブを受け取り、プリンタデバイスへ印刷ジョブを送信する出力ポートの作成や設定を行う機能等を有している。
【００３６】
１０５は印刷装置としてのネットワークプリンタであり、図示しないネットワークインターフェースを介してネットワーク１０６と接続されており、クライアント１０２，１０３から送信されてくる印字データを含む印刷ジョブを解析し、１ページずつドットイメージに変換して印刷処理を行う。
【００３７】
なお、図１に示すシステム例では、ネットワークプリンタ１０５は１台しか示されていないが、他のネットワークプリンタが複数接続されているものとする。また、各ネットワークプリンタの機能は相違するものであってもよい。
【００３８】
また、ネットワーク１０６は、クライアント１０２，１０３，１０４プリントサーバ１０１、ネットワークプリンタ１０５等とを所定のプロトコルで通信可能に接続している。
【００３９】
＜ネットワークコンピュータのハードウェア構成例＞
図２は、本発明に係るネットワークシステムのデータ処理装置の構成を説明するブロック図であり、図１に示したクライアント１０２，１０３，１０４とプリントサーバ１０１として使用されるコンピュータの構成例に対応する。なお、本実施形態においては、クライアント１０２，１０３，１０４もプリントサーバ１０１も同様あるいは同等のハードウェア構成とするが、それぞれ専用のハードウェア構成であっても構わない。
【００４０】
図２において、２００は装置全体の制御を行うＣＰＵであり、ハードディスク（ＨＤ）２０５に格納されているアプリケーションプログラム、プリンタドライバプログラム、ＯＳや、本実施形態のネットワークプリンタ制御プログラム等を実行し、ＲＡＭ２０２にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
【００４１】
２０１は記憶手段としてのＲＯＭであり、内部的には基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。２０２は一時記憶手段としてのＲＡＭであり、ＣＰＵ２００の主メモリ、ワークエリア等として機能する。
【００４２】
２０３は記憶媒体読み込み手段としてのフレキシブディスクドライブであり、ＦＤドライブ２０３を通じて、記憶媒体としてのＦＤ２０４に記憶されたプログラム等を本コンピュータのＲＡＭ２０２上にロードすることができる。２０４は記憶媒体であるフレキシブルディスク（ＦＤ）であり、コンピュータが読み取り可能にプログラムが格納された記憶媒体である。なお、記憶媒体はＦＤに限らず、ＣＤ−ＲＯＭ、ＣＤＲ、ＣＤＲＷ、ＰＣカード、ＤＶＤ、ＩＣメモリカード、ＭＯ、メモリスティック等、任意である。
【００４３】
２０５は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク（ＨＤ）であり、アプリケーションプログラム、プリンタドライバプログラム、ＯＳ、ネットワークプリンタ制御プログラム、関連プログラム等を格納している。更に、スプール手段であるスプーラはここに確保される。スプール手段は、クライアントではクライアントスプーラのことであり、プリントサーバではサーバスプーラのことである。また、プリントサーバでは、クライアントから受けたジョブ情報を格納し、順序制御を行うためのテーブルもこの外部記憶手段に生成されて格納される。
【００４４】
２０６は指示入力手段であるキーボードであり、ユーザがクライアントコンピュータに対して、また、オペレータや管理者がプリントサーバに対して、デバイスの制御コマンドの命令等を入力指示するものである。２０７は表示手段であるディスプレイであり、キーボード２０６から入力したコマンドや、プリンタの状態等を表示したりするものである。
【００４５】
２０８はシステムバスであり、クライアントやプリントサーバであるコンピュータ内のデータの流れを司るものである。２０９は入出力手段であるインタフェースであり、該インタフェース２０９を介して情報処理装置は外部装置とのデータのやり取りを行う。
【００４６】
なお、上記コンピュータの構成はその一例であり、図２の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてＲＯＭ、ＲＡＭ、ＨＤなどで変更することも可能である。
【００４７】
図３は、図２に示したＲＡＭ２０２のメモリマップの一例を示す図であり、ＦＤ２０４からロードされる上記ネットワークプリンタ制御プログラムが、ＲＡＭ２０２にロードされ実行可能となった状態のメモリマップである。
【００４８】
なお、本実施形態では、ネットワークプリンタ制御プログラムおよび関連データをＦＤ２０４から直接ＲＡＭ２０２にロードして実行させる例を示すが、これ以外にも、ネットワークプリンタ制御プログラムを動作させる度に、既にネットワークプリンタ制御プログラムがＦＤ２０４からインストールされているＨＤ２０５から、ＲＡＭ２０２にロードするようにしてもよい。
【００４９】
また、本ネットワークプリンタ制御プログラムを記憶する媒体は、ＦＤ以外にＣＤ−ＲＯＭ、ＣＤＲ、ＰＣカード、ＤＶＤ、ＩＣメモリカードであってもよい。さらに、本ネットワークプリンタ制御プログラムをＲＯＭ２０１に記憶しておき、これをメモリマップの一部となすように構成し、直接ＣＰＵ２００で実行することも可能である。また、以上の各装置と同等の機能を実現するソフトウエアをもって、ハードウェア装置の代替として構成することもできる。
【００５０】
また、以下では、本ネットワークプリンタ制御プログラムのことを、簡単に印刷制御プログラムまたはプリンタドライバと呼ぶこともある。印刷制御プログラムは、クライアントにおいては、印刷ジョブの印刷先の変更を指示したり、印刷順序を変更する指示をするための制御を行うプログラムを含む。
【００５１】
一方、プリントサーバにおいては、印刷ジョブの順序制御を行ったり、印刷ジョブの印刷終了や印刷先変更要求などを通知するためのプログラムを含んでいる。また、このような制御を行う本実施形態の印刷制御プログラムは、クライアントにインストールされるモジュールと、プリントサーバにインストールされるモジュールを別々に分けてもよいし、１つの印刷制御プログラムが、実行される環境によりクライアント用として機能したり、プリントサーバ用として機能するようにしてもよい。あるいは、一台のコンピュータに、クライアント用の機能を持つモジュールとプリントサーバ用として機能するモジュールとをともにインストールし、同時にあるいは時分割で、擬似的に平行動作させる構成も可能である。
【００５２】
３０１は基本Ｉ／Ｏプログラムであり、コンピュータの電源がＯＮされたときに、ＨＤ２０５からＯＳがＲＡＭ２０２に読み込まれ、ＯＳの動作を開始させるＩＰＬ（イニシャルプログラムローデイング）機能などを有しているプログラムが入っている領域である。３０２はオペレーティングシステム（ＯＳ）であり、３０３はネットワークプリンタ制御プログラムで、ＲＡＭ２０２上に確保される領域に記憶される。３０４は関連データで、ＲＡＭ２０２上に確保される領域に記憶される。３０５はワークエリアで、ＣＰＵ２００が本プリンタ制御プログラムを実行する領域が確保されている。
【００５３】
図４は、図２に示したＦＤ２０４のメモリマップの一例を示す図である。
【００５４】
図４において、４０１はデータの情報を示すボリューム情報であり、４０２はディレクトリ情報、４０３は本実施形態で説明する印刷制御プログラムであるネットワークプリンタ制御プログラム、４０４はその関連データである。ネットワークプリンタ制御プログラム４０３は、本実施形態で説明するフローチャートに基づいてプログラム化したものであり、本実施形態では、クライアント及びサーバ共に、同様の構成をとっている。
【００５５】
図５は、図２に示したＦＤドライブ２０３に対して挿入されるＦＤ２０４との関係を示す図であり、図２と同一のものには同一の符号を付してある。図５において、ＦＤ２０４には、本実施形態で説明するネットワークプリンタ制御プログラムおよび関連データが格納されている。
【００５６】
＜印刷処理システムにおけるソフトウエア構成例＞
ここで、本実施形態における用語の技術的意味について説明する。
【００５７】
複数のプリンタを１つのプリンタとして仮想的に束ねる仮想プリンタを「グループプリンタ」、束ねられるプリンタを「メンバプリンタ」と呼ぶ。また、グループプリンタおよびメンバプリンタに所定の出力ポートが対応付けられた仮想プリンタドライバおよびデバイスドライバに対応しているので、グループプリンタ及びメンバプリンタをドライバに対応して考えることもできる。
【００５８】
グループプリンタを更に具体的に説明すると、後述する図６のアプリケーション６０１からＯＳを介して生成される描画命令に基づいて中間形式ファイル（汎用印刷ファイル）を生成するためのデータを生成する仮想ドライバをグループプリンタドライバ６０３と呼ぶ。そして、後述するジョブ制御プリントサービス６２２により、先の中間形式のファイルに基づいてページ記述言語を生成させるべく各個別のプリンタドライバに印刷指示がなされるが、この個別の各プリンタドライバに対応するプリンタをメンバプリンタと呼ぶ。また、各メンバプリンタは最終的には特定のデバイスに対応することとなる。
【００５９】
一方、アプリケーションにおける印刷指示に応じてＷｉｎｄｏｗｓ（登録商標）等のＯＳを介して出力される描画命令（一般的にＤＤＩ或いはＧＤＩと呼ばれている）あるいはＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａｆｉ１ｅ  Ｆｏｒｍａｔ：拡張メタファイル）を解釈しページ記述言語を生成しデバイスへ出力させるようなプリンタドライバを通常プリンタドライバ、このときのデバイスを通常デバイスと呼び、グループプリンタやメンバプリンタと区別する。なお、ＯＳとしてはＷｉｎｄｏｗｓ（登録商標）に限定されるものではなく、描画命令を備えるＯＳであれば適用可能であることは言うまでもない。また、デバイスであるプリンタとは区別してプリンタドライバとプリンタ出力ポートとの組み合わせをプリンタと呼ぶこともある。例えば、ＬｏｇｉｃａｌＰｏｒｔ（ジョブ制御ポートモニタ）とグループプリンタドライバとの組み合わせを指定することを、グループプリンタを指定すると呼ぶこととする。
【００６０】
図６は、図１に示したプリントシステムを構成する各デバイスのモジュール構成を説明するブロック図であり、本システムのクライアントサーバモデルにおいて、Ｍｉｃｒｏｓｏｆｔ（登録商標）  Ｗｏｒｄ（登録商標）などの一般的なアプリケーションから発行された描画コマンドを含む印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを示した例に対応する。なお、図１と同一のものには同一の符号を付してある。
【００６１】
図６において、通常、印刷の指示がされると、アプリケーションプログラム（アプリケーション）６０１は一連の描画命令をＯＳを介して生成させる。この生成された描画命令はプリンタドライバを経て所定の形式に変換された後、ウインドウズ（登録商標）スプーラ（Ｗｉｎｄｏｗｓ（登録商標）  Ｓｐｏｏｌｅｒ（ＷＳ））６０４に引き渡される。ＷＳ６０４は、ユーザがユーザインタフェースを介して選択し指示したポートモニタ６２１にプリントジョブデータを渡して、プリンタデバイスに送信させる手順をとる。
【００６２】
本実施形態では、今述べた通常の動作に対してユーザはあらかじめ印刷ジョブ制御システム用のポートモニタ６２１（以降、ジョブ制御ポートモニタと略記）を指定して印刷を指示する。
【００６３】
アプリケーション６０１は一連の描画命令をＯＳを介して生成させる。ここで、ＯＳを介して生成された描画命令は、グループプリンタドライバ６０３或はＰＤＬＤｒｉｖｅｒ６０２の何れか指定されたプログラムに引き渡させる。
【００６４】
ＯＳを介して生成された描画命令を受け取ったグループプリンタドライバ６０３では、汎用印刷ファイルを生成するための汎用ドキュメントデータを生成し、プリンタデバイス１０５へプリントジョブデータを送信する従来のポートモニタではなく、ジョブ制御ポートモニタ６２１にプリントジョブデータとして送信する。また、プリンタドライバインタフェースを介して設定された用紙サイズ、ステープル指示等の印刷設定情報も、ジョブ制御ポートモニタ６２１に送信される。
【００６５】
ジョブ制御ポートモニタ６２１は、プリントジョブデータである汎用印刷ドキュメントデータをプリンタデバイス１０５に送信するのではなく、印刷ジョブ制御システム用プリントサービス（以降、ジョブ制御プリントサービスと略記）６２２に送信する。ジョブ制御プリントサービス６２２は、プリントジョブデータに対して、後述するような印刷ジョブ制御処理を行う。
【００６６】
一方、ＯＳを介して生成された描画命令がＰＤＬＤｒｉｖｅｒ６０２に投入された場合には、ＰＤＬＤｒｉｖｅｒ６０２よって頁記述言語データが生成され、該生成された頁記述言語データは、印刷処理を行うよう設定されたＰＤＬＤｒｉｖｅｒ６０２に対応するジョブ制御ポートモニタ６２１、ジョブ制御プリントサービス６２２を介して対応するデバイスに送信される。
【００６７】
印刷ジョブ制御システム用プリントマネージャ（以降、プリントマネージャと略記）６２３は、ユーザがジョブ制御プリントサービス６２２内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作したりするためのユーザインタフェースを提供するプログラムである。
【００６８】
プリントマネージャ６２３は、ジョブ制御プリントサービス６２２のソフトウエアのインタフェース（ＡＰＩ：Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を介して、ジョブ制御プリントサービス６２２と情報・指示をやり取りしている。
【００６９】
更に詳細な処理としては、プリントマネージャ６２３がジョブ制御プリントサービス６２２に対してデバイスを指定してイベントを発行し、ジョブ制御プリントサービス６２２は発行されたイベントに基づくデバイスのステータスを監視して、該監視に基づく結果をプリントマネージャ６２３に通知する。
【００７０】
サーバ内の印刷ジョブ制御システム用サーバ（以降、ジョブ制御サーバと略記）６３０は、個々のクライアント１０２〜１０４上のジョブ制御プリントサービス６２２がプリンタデバイス１０５にプリントジョブデータを送信するタイミングを集中制御（スケジューリング）している。
【００７１】
マネージメントコンソール６３３は、ジョブ制御サーバ６３０が持つソフトウエアがアクセスするためのＡＰＩを介して、ジョブ制御サーバ６３０と情報・指示をやり取りすることで、印刷ジョブ制御システム全体を監視処理することができる。
【００７２】
また、ジョブ制御サーバ６３０は、デバイス情報コントロールモジュール６３１を用いて各プリンタデバイス１０５と通信を行い、各プリンタ内の印刷ジョブや動作状態に関する情報を入手する制御を実行したり、操作を行ったりする。入手した情報は、クライアント１０２、１０３側のジョブ制御プリントサービス６２２に渡す制御も行うことができる。
【００７３】
＜印刷処理システムの動作例＞
次に、本実施形態におけるグループプリンタドライバ６０３からの印刷処理例について説明する。
【００７４】
グループプリンタドライバ６０３は、アプリケーション６０１が生成した一連の描画コマンドをプリンタデバイス１０５やＯＳの種類に依存しない汎用中間フォーマットデータ（前述の汎用ドキュメントデータに相当）に変換処理を行う。
【００７５】
この汎用中間フォーマットデータは、ＷＳ６０４からジョブ制御ポートモニタ６２１を経て（図６に示すルート（ａ））、ジョブ制御プリントサービス６２２に導かれる（図６に示すルート（ｂ））。ここで、汎用中間フォーマットデータは、ジョブ制御プリントサービス６２２により汎用印刷ファイルに構築される。この汎用印刷ファイルの構成については後述する。
【００７６】
そして、ジョブ制御プリントサービス６２２は、このプリントジョブに対して行うジョブ制御の種類に応じて、汎用印刷ファイルに基づいて描画コマンドを生成し（図６に示すルート（ｃ））、続いてＰＤＬドライバ６０２がその描画コマンドをプリンタデバイス１０５が解釈可能なＰＤＬ形式のファイルにする。
【００７７】
図６に示す例では、ジョブ制御プリントサービス６２２で、このプリントジョブに対してプリンタ側のエラーを検知して代行印刷を行う例を示しており、実線で示されルートは当初印刷を予定していたメンバージョブであり、破線については代行印刷のために生成されたのジョブの流れを示している（図６に示すルート（ｃ））。
【００７８】
ＰＤＬドライバ６０２で生成されたＰＤＬファイルはＷＳ６０４、ジョブ制御ポートモニタ６２１を経て（図６に示すルート（ｄ））、再びジョブ制御プリントサービス６２２に渡される（図６に示すルート（ｅ））。
【００７９】
この段階で、ジョブ制御プリントサービス６２２は、ジョブ制御サーバ６３０の指示に従ってＰＤＬのプリントジョブデータをプリンタデバイス１０５に送信する（図６に示すルート（ｆ））。
【００８０】
ジョブ制御プリントサービス６２２は、汎用印刷ファイル中の印刷指示書の指示にしたがって、１つの汎用印刷ファイルを複数のプリントジョブに論理的に分割してそれぞれ別のプリンタデバイスに送信したり、一度送信したプリントジョブデータを別のプリンタデバイスに送信し直したりする制御を行う。
【００８１】
図６中に示すルート（ｃ）、（ｄ）、（ｅ）、（ｆ）はそのような場合のプリントジョブデータの経路を示している。
【００８２】
一方、汎用印刷ファイルをアプリケーションソフトウェアが作成し、そのアプリケーションソフトウェアが直接汎用印刷ファイルを印刷ジョブとして投入する場合は、一般のアプリケーションとはグループプリンタドライバ６０３への情報の渡し方やグループプリンタドライバ６０３での処理内容が異なる。
【００８３】
前述のように、一般のアプリケーションの場合には、アプリケーション６０１はグループプリンタドライバ６０３に描画情報を渡す際、通常のプリンタドライバと同じようにＷｉｎｄｏｗｓ（登録商標）のＧＤＩ関数を呼び出し、グループプリンタドライバ６０３がそれに応じて汎用印刷ファイルを生成する。
【００８４】
これに対して汎用印刷ファイルを直接作成するアプリケーションの場合は、アプリケーションが汎用印刷ファイルをすでに持ち、それをグループプリンタドライバ６０３に供給する。
【００８５】
そして、グループプリンタドライバ６０３は、必要に応じてあらかじめ設定された印刷方法に基づいて汎用印刷ファイル内部の印刷指示書を書き換えて、ＷＳ６０４に送る。
【００８６】
＜本発明におけるソフトウエア構成例＞
図７は、図１に示したクライアント１０４とサーバ１０１とのプリントサービス処理のためのモジュール構成を説明するブロック図であり、Ｗｅｂサービス（マネージメントコンソール）７０１からプリントサービス（ジョブ制御プリントサービス）７０４へ出力ポートの作成を指示する際に動作するソフトウエア構成例に対応する。
【００８７】
図７において、７００はマネージメントコンソールで、クライアント１０４において、上述した印刷ジョブ制御システム全体を監視する以外に、印刷ジョブ制御システムの出力ポートの作成や編集、プリンタの編集、クライアントでのバッチファイルを読み込んでのセットアップのための設定ファイルの作成、編集などプリントシステムの設定を行う。
【００８８】
マネージメントコンソール７００では、Ｗｅｂブラウザ７０３へのユーザの入力をＷｅｂサーバ７０２を介してＷｅｂサービス（マネージメントコンソールサービス）７０１が受け取り、Ｗｅｂサービス７０１がＡＰＩを介してジョブ制御システム（Ｐｒｉｎｔ  Ｓｅｒｖｉｃｅ７０４）に指示を送る。
【００８９】
ジョブ制御システム７０４は、前項で述べたようにクライアント１０２、１０３及びサーバ１０１の印刷ジョブを管理すると共に、プリントシステムに必要な出力ポートの作成やプリンタの作成を行う。
【００９０】
また、ジョブ制御システム７０４は、マネージメントコンソール７００が作成指示を出した出力ポートの作成情報の中に「ＩＰアドレス」ではなくホスト名が含まれていた場合、ＤＮＳサーバ７０５にアクセスして名前解決処理を行う。名前解決処理が成功したと判断した場合は、出力ポートの作成を行う。その後、ＡＰＩを介してマネージメントコンソール７００にポート作成結果を返信する。
【００９１】
ＤＮＳサーバ７０５は、取得したホスト名からＩＰアドレスに変換を行うネームサーバである。
【００９２】
＜システム処理フロー＞
図８は、本発明に係るプリントシステムにおける第１のデータ処理手順の一例を示すフローチャートであり、出力ポート作成におけるクライアント１０４のマネージメントコンソール７００（Ｗｅｂサービス７０１、Ｗｅｂサーバ７０２、Ｗｅｂブラウザ７０３）での処理に対応する。なお、Ｓ８０１〜Ｓ８０６は各ステップを示す。
【００９３】
先ず、ステップＳ８０１で、ユーザが図７に示したＷｅｂブラウザ７０３に出力ポート作成情報をキーボード（図２に示すキーボード２０６）等を操作して入力すると、ステップＳ８０２で、ステップＳ８０１で入力された出力ポート作成情報をＷｅｂサーバ７０２を介してＷｅｂサービス７０１が受け取り、サーバ１０１内のＡＰＩを介してジョブ制御システム７０４に出力ポート作成を指示する。
【００９４】
次に、ステップＳ８０３で、サーバ１０１のジョブ制御システム７０４において、ステップＳ８０２でＷｅｂサービス７０１から受け取った出力ポート情報からポート作成処理（詳細は図９で詳述する）を行い、当該作成処理結果をＡＰＩを介してＷｅｂサービス７０１に返す。
【００９５】
そして、ステップＳ８０４で、ステップＳ８０３でジョブ制御システム７０４から取得した処理結果において、出力ポート作成処理が正常に終了したかを判断して、正常に終了したと判断した場合には、ステップＳ８０５で、出力ポートが作成された場合、作成処理結果として、Ｗｅｂサーバ７０２を介してＷｅｂブラウザ７０３に出力ポート情報を表示して、本処理を終了する。
【００９６】
一方、ステップＳ８０４で、正常に終了しないと判断した場合、すなわち出力ポートの作成に失敗したと判断した場合、ステップＳ８０６で、ステップＳ８０３の作成処理結果として、Ｗｅｂサーバ７０２を介してＷｅｂブラウザ７０３にエラー情報を表示して、処理を終了する。
【００９７】
図９は、本発明に係るプリントシステムにおける第２のデータ処理手順の一例を示すフローチャートであり、図８のステップＳ８０３に示すサーバのポートの作成処理の詳細手順に対応し、該処理は、図７に示したサーバ１０１のプリントサービス７０４による処理に対応するものである。なお、Ｓ９０１〜Ｓ９０５は各ステップを示す。
【００９８】
先ず、ステップＳ９０１で、ステップＳ８０２でＷｅｂサービス７０１から受け取った出力ポート情報において、追加するポートがＩＰアドレスではなく、ホスト名で指定されているかを判断して、ホスト名で指定されていないと判断した場合は、ステップＳ９０４へ進む。
【００９９】
一方、ステップＳ９０１で、ホスト名で指定されていると判断した場合は、ステップＳ９０２へ進み、ＤＮＳサーバ７０５にアクセスして名前解決処理（名前をＩＰアドレスに変換する処理を含む）を行う。
【０１００】
そして、ステップＳ９０３で、名前解決処理で名前解決が成功したか（ＩＰアドレスを取得できたか）否かを判断して、解決していないと判断した場合は、ステップＳ９０５へ進む。
【０１０１】
一方、ステップＳ９０３で、名前解決が成功したと判断した場合は、ステップＳ９０４で、ステップＳ９０１の判断結果、ＩＰアドレスが最初から指定されていたと判断した場合、またはステップＳ９０３の結果、名前解決に成功してＩＰアドレスを取得できた場合は、出力ポートを作成する。
【０１０２】
そして、ステップＳ９０５で、ステップＳ９０４のポート作成処理の結果、またはステップＳ９０３で名前解決が失敗したことをＡＰＩを介してＷｅｂサーバ７０１に返して、本処理を終了して、図８に示したステップＳ８０４の処理に移行する。
【０１０３】
なお、上記実施形態では、名前解決処理をサーバマシン１０１のプリントサービス７０４がＤＮＳサーバ７０５にアクセスして行う場合について説明したが、プリントサービス７０４内にあらかじめＩＰアドレスとホスト名を記録しておく、または一度名前解決を行ったＩＰアドレスとホスト名を記録したテーブル等を備えることにより、名前解決処理の際に、これらの記録したテーブルを利用してサーバ１０１内で名前解決を行う場合にも本発明は応用が可能である。
【０１０４】
以上説明したように、上記実施形態によれば、Ｗｅｂサーバ７０２で名前解決を行うことによりＷｅｂサーバ７０２のデータ負荷が大きくなるという課題に対して、実際に出力ポートを作成する等の処理をプリントサーバ側で代行処理（プリントサーバ側での名前解決処理を含む）させることで、クライアント１０４側のＷｅｂサーバ７０２のデータ処理負担を格段に軽減することが可能となる。
【０１０５】
以下、図１０に示すメモリマップを参照して本発明に係るプリントシステムで読み取り可能なデータ処理プログラムの構成について説明する。
【０１０６】
図１０は、本発明に係るプリントシステムで読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１０７】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１０８】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１０９】
本実施形態における図８，図９に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１１０】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１１１】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１２】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１１３】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０１１４】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１５】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０１１６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１１７】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１９】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組み合わせを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０１２０】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【０１２１】
なお、本発明は、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【図面の簡単な説明】
【０１２２】
【図１】本発明の一実施形態を示す印刷処理システムの構成を示す図である。
【図２】本発明に係るネットワークシステムのデータ処理装置の構成を説明するブロック図である。
【図３】図２に示したＲＡＭのメモリマップの一例を示す図である。
【図４】図２に示したＦＤのメモリマップの一例を示す図である。
【図５】図２に示したＦＤドライブに対して挿入されるＦＤとの関係を示す図である。
【図６】図１に示したプリントシステムを構成する各デバイスのモジュール構成を説明するブロック図である。
【図７】図１に示したクライアントとサーバとのプリントサービス処理のためのモジュール構成を説明するブロック図である。
【図８】本発明に係るプリントシステムにおける第１のデータ処理手順の一例を示すフローチャートである。
【図９】本発明に係るプリントシステムにおける第２のデータ処理手順の一例を示すフローチャートである。
【図１０】本発明に係るプリントシステムで読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【０１２３】
１０１  プリントサーバ
１０４  クライアント
７０１  Ｗｅｂ  Ｓｅｒｖｉｃｅ
７０２  Ｗｅｂ  Ｓｅｒｖｅｒ
７０３  Ｗｅｂブラウザ
７０４  プリントサービス
７０５  ＤＮＳサーバ
【図１】
2005173722.tif 000003
【図２】
2005173722.tif 000004
【図３】
2005173722.tif 000005
【図４】
2005173722.tif 000006
【図５】
2005173722.tif 000007
【図６】
2005173722.tif 000008
【図７】
2005173722.tif 000009
【図８】
2005173722.tif 000010
【図９】
2005173722.tif 000011
【図１０】
2005173722.tif 000012