(57)【要約】【課題】ネットワークプリンタが存在するクライアントにて同一種類、異バージョンのローカルプリンタオブジェクトを生成する際、ネットワークプリンタの更新に伴うドライバ間の不整合の問題を解決し、適切な印刷環境を実現する。【解決手段】クライアント３００は、プリントサーバ４０００を経由してデバイス２０００にて印刷を行う方式と、プリントサーバ４０００を介さずに印刷データをデバイス２００に送信して印刷を行う方式とが共存した環境で使用される。ローカルプリンタに対してセットアップすべきプリンタドライバが、セットアップ済みである、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通であると判断された場合、ローカルプリンタに対してセットアップするべきプリンタドライバをセットアップし、ネットワークプリンタの正常動作を保証すべく、プリントサーバにおけるプリンタドライバに関わる設定処理が行われる。【選択図】図２
2010250369.tif 000002
【特許請求の範囲】
【請求項１】
ローカル接続されたローカルプリンタ、又はプリントサーバを介してネットワークプリンタに対して印刷データを送信して印刷処理を行わせる機能をもち、前記プリントサーバにおいて搭載されたプリンタドライバを用いて印刷データを処理し、前記ネットワークプリンタに対して印刷させる印刷方式と、前記ローカル接続されているローカルプリンタに対して前記プリントサーバを介さずに印刷データを送信して印刷させる印刷方式が共存した環境で使用される情報処理装置であって、
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通であるかを判断する判断手段と、
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通であると前記判断手段が判断した場合、前記ローカルプリンタに対してセットアップするべきプリンタドライバをセットアップするとともに、前記ネットワークプリンタが正常動作するように前記プリントサーバにおけるプリンタドライバに関わる設定を行う設定手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通と前記判断手段が判断した場合、前記設定手段は、そのプリンタドライバを用いて前記ネットワークプリンタをローカルプリンタとしてセットアップし、前記ネットワークプリンタに対応する、プリントサーバにおけるプリンタ設定を削除することを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通と前記判断手段が判断した場合、前記設定手段は、前記ローカルプリンタに対してセットアップするべきプリンタドライバを用いてネットワークプリンタを動作させることができるようセットアップし、前記ネットワークプリンタに対応するプリントサーバにおけるプリンタ設定を更新することを特徴とする、請求項１に記載の情報処理装置。
【請求項４】
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通と前記判断手段が判断した場合、前記設定手段が、そのプリンタドライバを用いて前記ネットワークプリンタをローカルプリンタとしてセットアップし、前記ネットワークプリンタに対応する、プリントサーバにおけるプリンタ設定を削除する選択肢と、前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通と前記判断手段が判断した場合、前記設定手段が、前記ローカルプリンタに対してセットアップするべきプリンタドライバを用いてネットワークプリンタを動作させることができるようセットアップし、前記ネットワークプリンタに対応するプリントサーバにおけるプリンタ設定を更新する選択肢を選択する選択手段をさらに備えたことを特徴とする、請求項１に記載の情報処理装置。
【請求項５】
ローカル接続されたローカルプリンタ、又はプリントサーバを介してネットワークプリンタに対して印刷データを送信して印刷処理を行う場合、前記プリントサーバにおいて搭載されたプリンタドライバを用いて印刷データを処理し、前記ネットワークプリンタに対して印刷させる印刷方式と、前記ローカル接続されているローカルプリンタに対して前記プリントサーバを介さずに印刷データを送信して印刷させる印刷方式が共存した環境における情報処理方法であって、
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通であるかを判断する判断ステップと、
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通であると判断された場合、前記ローカルプリンタに対してセットアップするべきプリンタドライバをセットアップするとともに、前記ネットワークプリンタが正常動作するように前記プリントサーバにおけるプリンタドライバに関わる設定を行う設定ステップと、
を有することを特徴とする情報処理方法。
【請求項６】
コンピュータを、請求項１から３のいずれか１項に記載の前記判断手段及び設定手段として機能させるために該コンピュータによって実行されることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は印刷システムとその制御方法に関し、管理サーバを用いて、ネットワーク上のデバイス、クライアントマシン、及び印刷に必要なソフトウェアを管理するための情報処理装置と制御用のプログラムに関する。なお、クライアントマシンを以下、単にクライアントという。クライアント上の印刷データを形成するソフトウェアは、所謂プリンタドライバであり、以下ではドライバともいう。
【背景技術】
【０００２】
クライアント、プリントサーバ、プリンタ、及びこれらを管理する管理サーバで構成されたネットワーク印刷環境が存在した。印刷方式には、プリントサーバ内の共有プリンタに対応するプリンタドライバとネットワークプリンタオブジェクトに対応するドライバとを用いる印刷方式が知られている。また、クライアントにローカル接続されたローカルプリンタオブジェクトに対応するプリンタドライバを用いた印刷方式がある。クライアントにて共有プリンタに対応したネットワークプリンタオブジェクトを形成する技術については、例えば非特許文献１を参照されたい。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】「Windows Point and Print Technical Overview」、Microsoft社、Published:March 21,2003、Update: Nov 20, 2006
【発明の概要】
【発明が解決しようとする課題】
【０００４】
クライアントにおいて、例えばローカルプリンタオブジェクトに対応するプリンタドライバを更新すると、そのプリンタオブジェクトがネットワークプリンタオブジェクトに対応するプリンタドライバを上書きしてしまう。これによって、共有プリンタオブジェクトに対応するプリントサーバ側のプリンタドライバとネットワークプリンタオブジェクトに対応するプリンタドライバとの間にバージョン等の不整合が生じてしまうことがあった。
【０００５】
これが原因で、クライアントからネットワークプリンタを利用し、プリントサーバを介した印刷ができなくなるか、あるいは不適切な印刷結果をもたらす虞が生じるという問題があった。よって従来技術では印刷システム環境を適切に維持できなくなってしまうという保守及び管理面での問題があった。
【課題を解決するための手段】
【０００６】
前記課題を解決するために、本発明は、ローカル接続されたローカルプリンタ、又はプリントサーバを介してネットワークプリンタに対して印刷データを送信して印刷処理を行わせる機能をもち、前記プリントサーバにおいて搭載されたプリンタドライバを用いて印刷データを処理し、前記ネットワークプリンタに対して印刷させる印刷方式と、前記ローカル接続されているローカルプリンタに対して前記プリントサーバを介さずに印刷データを送信して印刷させる印刷方式が共存した環境で使用される情報処理装置であって、以下の手段を備える。
【０００７】
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通であるかを判断する判断手段。
【０００８】
前記ローカルプリンタに対してセットアップするべきプリンタドライバが、前記情報処理装置においてセットアップされている、ネットワークプリンタのプリンタドライバより新しいバージョンであり尚且つ共通であると前記判断手段が判断した場合、前記ローカルプリンタに対してセットアップするべきプリンタドライバをセットアップするとともに、前記ネットワークプリンタが正常動作するように前記プリントサーバにおけるプリンタドライバに関わる設定を行う設定手段。
【発明の効果】
【０００９】
ネットワークプリンタとローカルプリンタが共存する印刷環境においてローカルプリンタの更新時には、ネットワークプリンタが正常動作するようにプリントサーバにおけるプリンタドライバに関わる設定を行う。これによりドライバのバージョン管理を適切に行うことが可能となり、正常な印刷システム環境を維持し、保守及び管理面での利便性を向上させることができる。
【図面の簡単な説明】
【００１０】
【図１】図２乃至図１０とともに本発明の一実施形態を示す図であり、クライアントの処理例を示すフローチャートである。
【図２】システム構成を例示したブロック図である。
【図３】更新モード設定のためのユーザインタフェース画面について一例を示す図である。
【図４】管理サーバ上での前処理を例示したフローチャートである。
【図５】管理サーバでの処理を例示したフローチャートである。
【図６】クライアントでの処理を（ａ）に、プリントサーバでのインストール処理を（ｂ）に、プリントサーバでの共有プリンタ更新処理を（ｃ）に例示したフローチャートである。
【図７】更新モード選択情報の格納テーブルを（ａ）に、クライアント情報の格納テーブルを（ｂ）に、プリントサーバの情報の格納テーブルを（ｃ）に例示した図である。
【図８】ネットワーク印刷システム環境と印刷方式を例示した概念図である。
【図９】ネットワークプリンタとローカルプリンタが共存する場合の問題点を説明するための概要図である。
【図１０】インストール規則表の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明に係る実施形態の前提を説明する。
図８に例示するネットワーク印刷システム環境では、印刷機能を有するデバイス２０００と、クライアント３０００と、プリントサーバ４０００と、それらを管理する管理サーバ１０００が通信回線５０００を介して接続されている。ここでクライアント３０００は、ローカル接続されたローカルプリンタ、又はプリントサーバ４０００を介してネットワークプリンタに対して印刷データを送信して印刷処理を行わせることができる。
【００１２】
このようなシステム環境において、次のような印刷方式がある。
その１つは、プリントサーバ４０００において搭載されたプリンタドライバを用いて印刷データを処理し、ネットワークプリンタに対して印刷させる方式である。これは図８（ａ）に実線の印刷経路で示すように、クライアント３０００からプリントサーバ４０００を経由して、デバイスＡへ印刷を行うプリントサーバ経由の印刷方式である。つまり、この方法ではプリントサーバ４０００に共有プリンタオブジェクトを生成し、クライアント３０００にてそのプリンタに対応したネットワークプリンタオブジェクトを生成し、プリントサーバ４０００を経由して印刷を行う。
【００１３】
もう１つはローカルプリンタに対してプリントサーバ４０００を介さずに印刷データを送信して印刷させる方式である。この場合、図８（ｂ）に点線の印刷経路で示すように、クライアント３０００のローカルプリンタから直接的に印刷データをデイバスＢへ送信して印刷を行う。つまりクライアント３０００からプリントサーバ４０００を経由せずに印刷が行われる。
このようにクライアント３０００は２つの方式が共存した環境で使用可能である。
【００１４】
以下、前記に使用した用語について説明する。
先ず「管理サーバ」とは、主にＩＴ（情報技術）管理者がデバイスの探索や動作状態の監視、各種設定等を一括して行うためのサーバである。すなわち、管理サーバは、管理するデバイスを探索し、探索したデバイスが正常に動作しているか否かを監視し、更にデバイスが保持するＭＩＢ(Management Information Base)情報等の設定を行う。更に、管理サーバは、複数のクライアントやプリントサーバに対して、デバイスに対応した適切なプリンタドライバのインストール処理やアンインストール処理を指示する付加的な機能を有する。ここで、プリンタオブジェクトとは、プリントサーバや、クライアント３０００内のＯＳが管理するレジストリに登録されているプリンタの設定のことである。具体的には、印刷先（アドレス）、プリンタ名、ドライバのパス、プリンタの属性（共有プリンタ、ネットワークプリンタ、ローカルプリンタ等）が記憶されている。
【００１５】
次に「共有プリンタ方式」は、プリントサーバにインストールしたプリンタドライバを共有化する設定とし、複数のクライアントからの使用を許容したプリンタドライバのインストール形態である。そして、共有プリンタオブジェクトとは、プリントサーバにおいて設定される共有プリンタの各種設定を含む構造体である。共有プリンタオブジェクトは、後述するネットワークプリンタと各種オブジェクト間通信を行うことで、印刷処理を実現する。
【００１６】
「ネットワークプリンタオブジェクト」とは、前記共有プリンタをクライアントで利用するために、共有プリンタに対応する形で、クライアントにインストールされる構造体のことである。例えばＭｉｃｒｏｓｏｆｔ社のオペレーティングシステムＷｉｎｄｏｗｓ（登録商標）が提供するポイントアンドプリント機能を利用して、クライアントにて共有プリンタに対応したネットワークプリンタを形成することができる（例えば、非特許文献１参照）。
【００１７】
また、この形態では、プリントサーバ上の共有プリンタとクライアントのネットワークプリンタのプリンタドライバとの間で同期が取れていることが肝要となる。ここでいうプリンタドライバの同期とは、ドライバの属性を同一に保つことを意味する。つまりプリンタドライバには、製造元、仕向け、ＰＤＬ（例えば、ＰＣＬ、ＰｏｓｔＳｃｒＩＰｔ等の印刷ジョブを形成するためのページ記述言語）、バージョンといった属性があるが、それらの同一性を保つことを意味する。特に、単一のプリンタドライバに着目した場合に、障害対応、機能向上に伴い、バージョンアップを施す場合が多々ある。このような場合、例えば共有プリンタのプリンタドライバがバージョン１．００である場合には、共有プリンタに対応したクライアントのネットワークプリンタもバージョン１．００にする必要がある。
【００１８】
プリントサーバを経由した印刷方式では、基本的に印刷ジョブを形成するためのドキュメント設定についてはクライアントのネットワークプリンタで行い、デバイス設定、スプーリングはプリントサーバ上の共有プリンタで行う。ここでドキュメント設定とは、印刷ジョブを形成するための用紙サイズ、部数、給紙方法等、印刷の際に個別に設定すべき項目を意味する。一方、デバイス設定とは、そのデバイスで一意に決める項目であり、ポート設定、デバイスで使用可能な排紙オプション等を意味する。すなわち、ドキュメント設定は、クライアントで個別に設定する項目であり、デバイス設定は、クライアント共通に設定する項目である。なお、例えばＷｉｎｄｏｗｓ（登録商標）のプリンタドライバでは、このような設定を各プリンタドライバが保持するプロパティ機能により設定可能である。また、印刷ジョブを形成するためのレンダリング処理についてもプリントサーバ側で行われる場合もある。
【００１９】
このように、プリントサーバ経由での印刷方式の場合、クライアントとプリントサーバのプリンタドライバが対となって印刷処理を実現することになる。
また前記ポイントアンドプリント機能においては、プリントサーバ上の共有プリンタのバージョンアップが行われると、その共有プリンタに対応したクライアントのネットワークプリンタも自動的にバージョンアップがなされる。
【００２０】
次に「ローカルプリンタ」とは、一般に、クライアントに対してローカル接続されているプリンタをいう。ローカルプリンタにおいては、例えば、前記したドキュメント設定、デバイス設定、レンダリング処理、スプール処理、ポート処理等の印刷のための処理を全てクライアントで行うことがある。従って、ローカルプリンタを用いた印刷方式では、クライアントのプリンタドライバで形成した印刷ジョブは、プリントサーバを経由することなく、デバイスへ直接送付される。
【００２１】
以上のように、クライアントからデバイスへの印刷を実現するには、プリントサーバ上の共有プリンタに対応したネットワークプリンタを利用する形態と、個別にインストールしたローカルプリンタを利用する形態がある。
ここで注意すべきことは、クライアントでのプリンタドライバのバージョンアップが、ネットワークプリンタとローカルプリンタでは異なることである。つまり、ネットワークプリンタの更新については、クライアントが個別に行う必要はない。これはプリントサーバ上の共有プリンタをバージョンアップすることにより、自動的にその共有プリンタに対応したネットワークプリンタが更新されるからである。
【００２２】
これに対して、ローカルプリンタの更新については、クライアントで個別に行う必要がある。
【００２３】
しかしながら、上述した従来技術では、クライアントにネットワークプリンタとローカルプリンタが存在している場合に、プリンタドライバの整合性に関して次のような課題があった。
すなわち、ネットワークプリンタとローカルプリンタが同一種類のプリンタドライバであって出力デバイスに関して共通に使用される場合に、ローカルプリンタのプリンタドライバをバージョンアップする状況を想定する。このバージョンアップにより、同一プリンタドライバであるネットワークプリンタもバージョンアップされることになる。その結果、ネットワークプリンタが対応していたプリントサーバ上の共有プリンタとの間でプリンタドライバが異なり、両者の整合性が取れなくなってしまう。
【００２４】
図９はそのような事例を示す。プリントサーバには、プリンタドライバＡ(v100)による共有プリンタＡが生成されている。ここで「v100」はプリンタドライバのバージョン１．００を意味する。
【００２５】
次に、前記ポイントアンドプリント機能を利用して、クライアントにて共有プリンタＡに対応したネットワークプリンタＡ(v100)が生成される。
その後、クライアントにてローカルプリンタＢをプリンタドライバＡ(v200)でインストールする。つまり「v200」はプリンタドライバのバージョン２．００を意味し、プリンタドライバＡ(v200)はプリンタドライバＡ(v100)をバージョンアップしたものである。
【００２６】
これにより、クライアントのネットワークプリンタＡ(v100)もプリンタドライバＡ(v200)にバージョンアップされる。
結果として、クライアントのネットワークプリンタＡはバージョン２．００となるが、それに対応したプリントサーバ上の共有プリンタＡはバージョン１．００のままとなってしまう。
【００２７】
以下、添付図面を参照して本発明の実施形態を詳細に説明する。
図１に示すフローチャートの説明に先立ち、印刷システム環境の構成を説明する。
図２は、本実施形態の適用例を示すブロック図である。本システムは、管理サーバ１０００と、印刷機能を有するデバイス２０００と、クライアントマシンを代表的に示すクライアント３０００と、プリントサーバ４０００から構成される。そしてこれらの装置が通信回線５０００を介して互いに通信可能に接続されている。なお通信回線５０００については、通常のＬＡＮ、あるいはＩＥＥＥ１３９４やＵＳＢといった双方向シリアルインタフェース等によって構成される。
【００２８】
各情報処理装置はコンピュータを用いて構成され、それぞれに中央演算処理装置１８００、２８００、３８００、４８００を備えており、主要な制御手段として機能する。つまり、管理サーバ１０００は第一中央演算処理装置１８００を備え、デバイス２０００は第二中央演算処理装置２８００を備える。そしてクライアント３０００は第三中央演算処理装置３８００を備え、プリントサーバ４０００は第四中央演算処理装置４８００を備える。
【００２９】
また各情報処理装置において、プログラム及び関連データは、ＦＤ、ＣＤ−ＲＯＭ、ＩＣメモリカード等の記憶媒体に記憶され、記憶媒体読取装置１６００、２６００、３６００、４６００からそれぞれ読み出される。つまり、管理サーバ１０００は第一記憶媒体読取装置１６００を備え、デバイス２０００は第二記憶媒体読取装置２６００を備える。そしてクライアント３０００は第三記憶媒体読取装置３６００を備え、プリントサーバ４０００は第四記憶媒体読取装置４６００を備える。なお記憶媒体としては、ハードディスク、光磁気ディスク等で構成してもよいし、これらの組み合わせによって構成してもよい。
【００３０】
各装置には記憶部１５００、２５００、３５００、４５００がそれぞれ設けられており、これらの記憶部からデータ制御部１７００、２７００、３７００、４７００にシステムプログラムやアプリケーションプログラムがそれぞれロードされる。つまり、管理サーバ１０００は第一記憶部１５００と第一データ制御部１７００を備え、デバイス２０００は第二記憶部２５００と第二データ制御部２７００を備える。そしてクライアント３０００は第三記憶部３５００と第三データ制御部３７００を備え、プリントサーバ４０００は第四記憶部４５００と第四データ制御部４７００を備える。なお第一データ制御部１７００は、デバイス管理アプリケーション部１７１０を用いて構成される。また第三データ制御部３７００は実行ファイル部３７１０を用いて構成され、第四データ制御部４７００はドライバ管理サービス部４７１０を用いて構成される。それらの詳細については後述する。
【００３１】
前記システムプログラムやアプリケーションプログラムは、各装置の表示部１１００、２１００、３１００、４１００の表示情報、及び入力部１２００、２２００、３２００、４２００から入力される情報を処理する。つまり管理サーバ１０００は第一表示部１１００と第一入力部１２００を備え、デバイス２０００は第二表示部２１００と第二入力部２２００を備える。そしてクライアント３０００は第三表示部３１００と第三入力部３２００を備え、プリントサーバ４０００は第四表示部４１００と第四入力部４２００を備える。なお、表示部１１００、２１００、３１００、４１００には、ＣＲＴディスプレイ、液晶ディスプレイ等の表示装置を用いることができる。また入力部１２００、２２００、３２００、４２００は、キーボードやマウス等のポインティングデバイス等により構成することができる。
各装置には入出力データ制御部１３００、２３００、３３００、４３００が設けられている。つまり管理サーバ１０００は第一入出力データ制御部１３００を備え、デバイス２０００は第二入出力データ制御部２３００を備える。そしてクライアント３０００は第三入出力データ制御部３３００を備え、プリントサーバ４０００は第四入出力データ制御部４３００を備える。
【００３２】
各装置は、それらのインタフェース制御部１４００、２４００、３４００、４４００を経由して互いにデータの入出力を行う。つまり管理サーバ１０００は第一インタフェース制御部１４００を備え、デバイス２０００は第二インタフェース制御部２４００を備える。そしてクライアント３０００は第三インタフェース制御部３４００を備え、プリントサーバ４０００は第四インタフェース制御部４４００を備える。
【００３３】
なお、装置内の構成要素はバスを介して通信可能に接続されており、例えば、デバイス２０００の各要素はバス２９９９で繋がっている。
デバイス２０００は印刷処理機能を有する印刷装置であり、デバイスインタフェース制御部２８５０とプリンタエンジン部２９００を備える。このデバイス２０００は、印刷機能のみを有するシングルファンクションペリフェラル（ＳＦＰ）であってもよいし、印刷機能以外にスキャナ、コピー、ファクス機能等を有するマルチファンクションペリフェラル（ＭＦＰ）であってもよい。更に、デバイス２０００はＭＩＢ等のデバイス情報を保持し、それら情報の取得や設定については、ネットワークを介してＩＴ管理者が管理サーバ１０００から行える。
【００３４】
クライアント３０００では、ネットワークプリンタによる、プリントサーバ４０００を経由したデバイス２０００からの印刷を行うか、又はローカルプリンタを介してデバイス２０００へ印刷データを直接送信することによって印刷が可能である。それぞれの印刷経路は図８に示した通りである。
【００３５】
ネットワークプリンタを介した印刷方式では、図８（ａ）に実線で示すように、印刷データはクライアント３０００からデバイス２０００（デバイスＡ）へと、プリントサーバ４０００を介して送付される。
またローカルプリンタを介した印刷方式では、図８（ｂ）の点線で示すように、印刷データはクライアント３０００からデバイス２０００（デバイスＢ）へと、直接的に送付される。つまり、この方式では印刷経路にてプリントサーバ４０００を経由しない。
【００３６】
ここで、プリントサーバ４０００では、ドライバを共有プリンタとしてインストールすることで、クライアント３０００からのポイントアンドプリント等の機能により、クライアント３０００にネットワークプリンタを提供する。
【００３７】
次に、本発明を適用したシステム構成の要部に関して、図２を用いて説明する。
主要な構成要素は、管理サーバ１０００のデバイス管理アプリケーション部１７１０、クライアント３０００の実行ファイル部３７１０、及びプリントサーバ４０００のドライバ管理サービス部４７１０である。
【００３８】
デバイス管理アプリケーション部１７１０は更にドライバ管理制御部１７１１、情報管理部１７１２、及びドライバ保管部１７１３から構成される。
デバイス管理アプリケーション部１７１０は、デバイス２０００に対する探索機能を有しており、デバイス探索の結果として、デバイス名やデバイスのＩＰアドレス等を取得する機能を有する。ここで、デバイス探索とは、公知のＳＮＭＰ、ＩＰ  Ｂｒｏａｄｃａｓｔ、ＳＬＰ／Ｍｕｌｔｉｃａｓｔ等による探索を意味する。
【００３９】
ドライバ管理制御部１７１１は、プリンタの追加やドライバの更新を実現するドライバタスク機能、及びドライバのインストールを実現する実行ファイルのダウンロード機能を有する。
【００４０】
以降、本実施形態では、プリンタの追加やドライバの更新を実現するドライバタスク機能を「ＰＵＳＨ機能」と称する。またドライバのインストールを実現する実行ファイルのダウンロード機能を「ＰＵＬＬ機能」と称する。
【００４１】
ＰＵＳＨ機能は、ＩＴ管理者が、任意のデバイスに対応したドライバをクライアント３０００やプリントサーバ４０００に対して、リモートでインストールする機能を意味する。
【００４２】
一方、ＰＵＬＬ機能では、クライアント３０００からの任意のデバイスに対応したドライバをインストールするための実行ファイルのダウンロードを許容する。
そして、クライアント３０００にて実行ファイルを実行することにより、実行ファイルは、ドライバ管理制御部１７１１からドライバのインストールに必要な情報を取得してインストールを実現する。ここで、ドライバのインストールに必要な情報とは、インストール対象となるドライバの実体の所在情報や、プリンタポートを生成するために必要なデバイス２０００のＩＰアドレス等の情報を意味する。以降、ドライバのインストールに必要な情報を「ドライバ情報」と呼ぶことにする。
【００４３】
また、実行ファイルを用いて実行ファイル部３７１０が構成される。
実行ファイル部３７１０とドライバ管理制御部１７１１との間の情報のやりとりについては、所謂ＳＯＡＰ(Simple Object Access Protocol)等のプロトコルを利用したＷｅｂサービスによる通信で行われる。
すなわち、ＰＵＳＨ機能は、管理サーバ１０００主導でのクライアント３０００やプリントサーバ４０００へのドライバのインストールであり、ＰＵＬＬ機能は、クライアント主導でのドライバのインストールであると言える。
【００４４】
ただしＰＵＳＨ機能では、ドライバタスクを実行するために、エージェントサービスを、ターゲットとするクライアント３０００やプリントサーバ４０００に予めインストールする必要がある。ここで、エージェントサービスを用いて、プリントサーバ４０００のドライバ管理サービス部４７１０が構成される。つまりドライバのインストール機能を有する所謂サービスプログラムを用いてこの処理が行われる。
【００４５】
ドライバ管理サービス部４７１０とドライバ管理制御部１７１１との間の情報のやりとりは、実行ファイル部３７１０とドライバ管理制御部１７１１との間の情報のやりとりと同様に、ＳＯＡＰ等のプロトコルを利用したＷｅｂサービス通信により行う。
またドライバ管理サービス部４７１０は、実行ファイル部３７１０と同様、ドライバ保管部１７１３に格納されたドライバの取得やプリンタポート情報の取得、ドライバのインストール機能を有する。
【００４６】
ドライバ保管部１７１３は、ＦＴＰ(File Transfer
Protocol)サーバ、ＨＴＴＰ(Hypertext Transfer Protocol)サーバ、あるいはファイルサーバ等であり、ドライバが保存されたサーバである。該ドライバは印刷データを形成するためのソフトウェアとしてのプリンタドライバである。ドライバ保管部１７１３に保存されているドライバについては、実行ファイル部３７１０やドライバ管理サービス部４７１０からダウンロードが可能である。
【００４７】
一方、情報管理部１７１２は、所謂データベース（ＤＢ）を用いて構成される。情報管理部１７１２は、例えば図７に示すようなテーブル情報を管理する。この他、情報管理部１７１２はドライバ管理制御部１７１１が提供する更新モード設定情報（図３参照）や、ドライバ保管部１７１３にて管理されているドライバの属性情報を管理している。
【００４８】
なお情報管理部１７１２とドライバ保管部１７１３は、本実施形態のように管理サーバ１０００と同一のサーバ内に設けてもよいし、また別のサーバに設けてもよい。
以下、本実施形態における制御手順の詳細について、図２を参照しつつ、図１及び図３乃至６を用い説明する。
【００４９】
図１は、クライアント３０００の実行ファイル部３７１０でのクライアント処理を例示したフローチャートである。なお図中の五角形枠内に示す数字２、９、１０については、図５においてそれらに該当する箇所を示している。
【００５０】
図３は、クライアント３０００において新たにドライバをインストールする場合に使用する更新モード設定のためのユーザインタフェース画面を例示し、管理サーバ１０００のドライバ管理制御部１７１１により提供される。本例では４つ選択肢としての更新モード１乃至４から所望のモードを選択することができ、画面上には選択後に用いる登録ボタンと、取り消し用のキャンセルボタンが設けられている。
【００５１】
図４は、管理サーバ１０００のドライバ管理制御部１７１１での、図３に対した設定処理の流れを示すフローチャートである。
図５は、管理サーバ１０００のドライバ管理制御部１７１１での、管理サーバの処理の流れを示すフローチャートである。なお図中の五角形枠内に示す数字３、４については、図６（ａ）においてそれらに該当する箇所を示している。また図中の五角形枠内に示す数字５、６については、図６（ｂ）においてそれらに該当する箇所を示し、図中の五角形枠内に示す数字７、８については、図６（ｃ）においてそれらに該当する箇所を示している。
【００５２】
図６（ａ）は、クライアント３０００の実行ファイル部３７１０での、クライアント処理の流れを示すフローチャートである。
図６（ｂ）、図６（ｃ）は、プリントサーバ４０００のドライバ管理サービス部４７１０での、プリントサーバ処理の流れを示すフローチャートである。
【００５３】
図７は、管理サーバ１０００の情報管理部１７１２に格納されている、所謂データベーステーブルを例示した図である。
図７（ａ）は、図３の更新モード選択情報が格納されているテーブルを示す。本例では更新モード１を示すデータがテーブルに格納されている。
【００５４】
図７（ｂ）は、図１に示すクライアント処理により、管理サーバ１０００に送付したクライアント情報が格納されているテーブルを示す。本例では、ネットワークプリンタの名称が「プリンタＡ」であり、そのドライバの名称が「ドライバＡ」で、そのバージョンが１．００である。そしてプリントサーバの名称が「プリントサーバ４０００」であり、共有プリンタの名称が「共有Ｂ」である。
【００５５】
図７（ｃ）は、管理サーバ１０００のドライバ管理制御部１７１１が管理しているテーブルを例示し、プリントサーバ４０００に関する情報が格納されている。本例では、プリントサーバの名称が「プリントサーバＡ」であり、共有プリンタの名称が「共有Ａ」である。そしてドライバの名称が「ドライバＡ」で、そのバージョンが１．００であり、プリンタの名称が「プリンタＡ」である。
【００５６】
先ず図３を用いて第一乃至四の更新モードについて説明する。
第一の更新モード（以下、更新モード１という）は、インストールするドライバがネットワークプリンタと同一種類であって共通に使用される場合にネットワークプリンタをローカルプリンタへ変更するモードである。つまり新たにインストールするドライバが、既存のネットワークプリンタと同一種類であり、ドライバ自体も同一種類である場合に、ネットワークプリンタをローカルプリンタに変更しドライバの整合性を取る。更新モード１では、新たにクライアント側で生成するローカルプリンタを優先とすることとなり、よってＰＵＬＬモード優先であると言える。
【００５７】
これに対して第二乃至第四の更新モードは、プリントサーバモード優先である。
第二の更新モード（以下、更新モード２という）では、プリントサーバ４０００が管理下にない場合に、これを管理下に置く。そして本モードにて、プリントサーバ上の共有プリンタ、クライアントのネットワークプリンタ、及びローカルプリンタの使用するドライバの整合性を取る。ここで、プリントサーバ４０００を管理下に置くとは、ドライバ管理制御部１７１１の管理下に置くことを意味する。その際には、プリントサーバ４０００にドライバ管理サービス部４７１０をインストールし、プリントサーバ４０００の共有プリンタ情報を図７（ｃ）に示すように、情報管理部１７１２で管理する。
【００５８】
第三の更新モード（以下、更新モード３という）は、プリントサーバ４０００が管理下クライアントである場合に、ドライバ間の整合性を取るモードである。つまりこれは、プリントサーバ４０００の共有プリンタ、クライアント３０００のネットワークプリンタ、及びローカルプリンタのドライバの間で整合性を取るモードである。
【００５９】
第四の更新モード（以下、更新モード４という）は、プリントサーバ４０００が管理下に置かれているか否かに関わらず、クライアント３０００におけるネットワークプリンタのドライバのバージョンを優先させるモードである。
なお前記の説明においてドライバの整合性を取るとは、ドライバの種類やバージョンを同一にすることを意味し、これによってドライバの正常動作が保証される。
【００６０】
図１０は、図３での更新モード選択情報が更新モード１を示す場合に適用されるインストール規則の一例を示す。より具体的には、既存ネットワークプリンタを構成するドライバと新たにインストールするドライバが同一種類であるが、それらのバージョンが異なる場合にどのようなインストール結果にすべきかの規則を示す。なお、表の左欄には既存ネットワークプリンタ情報についてドライバＡのバージョン(V100,V200,V300)及び出力先デバイス（デバイスＡ,デバイスＢ）を示す。また表の上欄には、新たにインストールするドライバ情報について、ドライバＡのバージョン(V100,V200,V300)及び出力先デバイス（デバイスＡ,デバイスＢ）を示す。ここで「V300」はバージョン３．００を示す。各欄から該当する行位置と列位置を特定すれば、対応したインストール規則が得られる。
【００６１】
通例、同一種類でバージョンが異なるドライバが競合する場合、ドライバのバージョンの高いドライバを優先させる。
例えば、既存ネットワークプリンタを構成するドライバのバージョンが１．００であり、かつ出力先デバイス２０００をデバイスＡとする（左欄のV100及びデバイスＡを参照）。そしてこのクライアント３０００に対して、バージョン２．００のドライバＡで、かつ出力先デバイス２０００がデバイスＢであるローカルプリンタを新たに生成する場合を想定する（上欄のV200及びデバイスＢを参照）。
【００６２】
デバイスＡとデバイスＢは、物理的にはプリントポート、すなわちＩＰアドレスが異なるデバイス２０００である。
この場合、図１０のインストール規則において、規則（１）が適用される。すなわち、既存ネットワークプリンタについては、バージョン２．００のドライバＡを用いて、出力先をデバイスＡとするローカルプリンタに変更した上で生成することを意味する。更に規則（１）では、出力先をデバイスＢとする、新たに指定されたローカルプリンタオブジェクトを生成することを意味する。
【００６３】
別例として、既存ネットワークプリンタを構成するドライバのバージョンが３．００であり、かつ出力先デバイス２０００をデバイスＡとする（左欄のV300及びデバイスＡを参照）。そしてこのクライアント３０００に対して、バージョン１．００のドライバＡで、かつ出力先デバイス２０００がデバイスＢであるローカルプリンタを新たに生成する場合を想定する(上欄のV100及びデバイスＢを参照)。
【００６４】
この場合には、図１０のインストール規則において、規則（２）が適用される。すなわち、既存ネットワークプリンタについては、バージョン３．００の既存のドライバＡを用いて、出力先をデバイスＡとするローカルプリンタに変更した上で生成することを意味する。更に規則（２）では、出力先をデバイスＢとする新たなローカルプリンタについても、バージョン３．００の既存のドライバＡを用いて生成することを意味する。
【００６５】
以上のように、既存ネットワークプリンタ情報及び新たにインストールするドライバ情報に応じて、適切なインストール規則が得られる。なお図１０のインストール規則をあくまで例示であって、これを変更することにより、本実施形態とは異なるインストール結果を得ることも、もちろん可能である。
【００６６】
例えば、前記した後の例において、既存ネットワークプリンタを構成するドライバのバージョンと、新たに指定されたドライバのバージョンを比較する。既存ネットワークプリンタを構成するドライバのバージョンが、新たに指定されたドライバのバージョンよりも新しい場合には、既存ネットワークプリンタをローカルプリンタに作り変えないことも可能である。そして、新たに指定されたローカルプリンタについては、既存ネットワークプリンタを構成するドライバを用いて出力先をデバイスＢとするローカルプリンタオブジェクトを生成する。なお図１０のインストール規則については、管理サーバ１０００の第一ドライバ管理制御部１７１１から取得してもよいし（後述する図１のステップ２０３参照）、また実行ファイル部３７１０の一部として組み込んでもよい。
【００６７】
次に、本実施形態における前提条件を説明する。
先ずプリントサーバ４０００には、ドライバ名が「ドライバＡ」でそのバージョンが１．００にてサポートされている、プリンタ名「プリンタＡ」がインストールされているものとする。また、このプリンタＡは、共有名が「共有Ａ」の共有プリンタとする。なお、プリントサーバ４０００については、管理サーバ１０００のドライバ管理制御部１７１１において、未だ管理されていないプリントサーバとする。つまり、これは図７（ｃ）に示すような管理データがテーブルにない状態である。更に、プリントサーバ４０００には、管理サーバのドライバ管理制御部１７１１と通信するためのドライバ管理サービス部４７１０（図２の点線枠を参照）がインストールされていないものとする。
【００６８】
一方、クライアント３０００には、前記した「共有Ａ」の共有プリンタに対応したネットワークプリンタ名「プリンタＡ」が、ポイントアンドプリント機能によりインストールされているものとする。ここで、共有プリンタ「共有Ａ」と、クライアント３０００のネットワークプリンタ「プリンタＡ」は、それらのドライバが同一種類であって、かつバージョンも同一であり、整合性が取れている状態である。
【００６９】
このような印刷システム環境において、管理サーバ１０００ではドライバ管理制御部１７１１の情報管理部１７１２及びドライバ保管部１７１３によって、次のドライバが管理されているものとする。
・ネットワークプリンタと同一種類のドライバ（そのバージョンは、ネットワークプリンタを構成するドライバよりも新しいバージョン、つまり２．００である）。
すなわち、ドライバ名が「ドライバＡ」であって、そのバージョンが２．００であり、プリンタ名が「プリンタＡ」である。ここで、プリンタ名については、ネットワークプリンタと同じであってもよいし、違っていてもよい。このドライバをクライアント３０００にインストールする際には、クライアント３０００のネットワークプリンタで使用されているドライバの更新処理を伴うことを意味する。
【００７０】
以上の前提条件を踏まえた上で、図４に示す管理サーバ１０００での処理について説明する。
先ずＩＴ管理者は、管理サーバ１０００の第一入力部１２００及び第一表示部１１００を用いて、第一データ制御部１７００のデバイス管理アプリケーション部１７１０にアクセスする（ステップ１００参照）。
【００７１】
ここで、デバイス管理アプリケーション部１７１０に用いるアプリケーションが、ウェブ（Ｗｅｂ）アプリケーションの類であれば、管理サーバ１０００からではなく、別途の管理者用クライアントからのアクセスが可能である。また、管理者用クライアントから管理サーバ１０００へのリモートアクセスが可能な場合には、デバイス管理アプリケーション部１７１０にて、所謂ネイティブアプリケーションを用いても構わない。
【００７２】
次に、ＩＴ管理者は管理サーバ１０００の第一入力部１２００及び第一表示部１１００を用いて、第一ドライバ管理制御部１７１１上の更新モード設定メニューで選択操作を行う（ステップ１０１参照）。これは、図３に例示するユーザインタフェース画面を表示してＩＴ管理者に操作を促すことを意味し、この画面はドライバ管理制御部１７１１の制御下にある。
【００７３】
次に、図３のユーザインタフェース画面に対して、クライアント３０００での実行ファイルの実行時にネットワークプリンタが存在していた場合の更新モードが選択される(ステップ１０２参照)。
【００７４】
続いて、ドライバ管理制御部１７１１は、図３の画面にある登録ボタンの操作が検出された場合に、選択された更新モードを示すデータを情報管理部１７１２に保存する（ステップ１０３参照）。例えば、図７（ａ）に示す通り、更新モードとして更新モード１を選択したものとする。
【００７５】
以上が前処理となり、新たにドライバをクライアント３０００にインストールする処理について以下に説明する。
図１を用いて、クライアント３０００での処理について説明する。
【００７６】
最初に、クライアント３０００は、管理サーバ１０００のデバイス管理アプリケーション部１７１０のドライバ管理制御部１７１１へアクセスする（ステップ２００参照）。
【００７７】
次に、クライアント３０００は、任意のドライバをインストールするための実行ファイルをダウンロードする（ステップ２０１参照）。
クライアント３０００は、ダウンロードした実行ファイルを実行する（ステップ２０２参照）。ここで、ダウンロードした実行ファイルを実行してそのプロセスがアクティブであることは、第三データ制御部３７００上で実行ファイル部３７１０が動作していることと同意である。
【００７８】
また、実行ファイル部３７１０は、ドライバ管理制御部１７１１から実行ファイルをダウンロードしてきた時点で、管理サーバ１０００の所在情報（ＩＰアドレスやＤＮＳ等）を、実行ファイル部３７１０の一部として保持しているものとする。
【００７９】
一方で、実行ファイル部３７１０は、管理サーバ１０００の所在情報が無い場合には、ＳＬＰ／Ｍｕｌｔｉｃａｓｔ等を用いた管理サーバ１０００の探索機能を有することも可能である。
【００８０】
実行ファイル部３７１０は、管理サーバ１０００のドライバ管理制御部１７１１にアクセスし、インストールすべきドライバのドライバ情報を情報管理部１７１２から取得する（ステップ２０３参照）。
【００８１】
次に実行ファイル部３７１０は、新たにインストールするターゲットドライバ（インストール対象となるドライバ）自体を管理サーバ１０００のドライバ保管部１７１３から取得する（ステップ２０４参照）。
ここで本例にて、取得したドライバは、そのバージョンが２．００であり、その出力先デバイスがデバイスＢであるものとする。
【００８２】
続いて、実行ファイル部３７１０は、クライアント３０００にインストールされているドライバのドライバ情報を取得する（ステップ２０５参照）。
ここで本例の場合、クライアント３０００のドライバは、前記ステップ２０４により取得したドライバと同一種類である。しかし、このドライバはバージョンが１．００のネットワークプリンタであり、出力先はデバイスＡであるものとする。すなわち、既存のドライバと新たにインストールするドライバは同一種類ではあるが、両者のバージョンは異なり、かつ出力先デバイスも異なる。
【００８３】
次に、実行ファイル部３７１０は、クライアント上でのネットワークプリンタの存否を判定する（ステップ２０６参照）。ここでの判定結果は「はい」であり、ネットワークプリンタが存在する場合、ステップ２０７に進む。なお判定結果が「いいえ」の場合にはステップ２２１に進む。
【００８４】
次に、実行ファイル部３７１０は、新たにインストールするドライバと同一種類のネットワークプリンタが存在するか否かを判定する（ステップ２０７参照）。ここでの判定結果は「はい」であり、ステップ２０８に進む。なお判定結果が「いいえ」の場合にはステップ２２１に進む。
【００８５】
続いて、実行ファイル部３７１０は、管理サーバ１０００のドライバ管理制御部１７１１から更新モード情報を取得する（ステップ２０８参照）。この情報は、図４のステップ１０３にて情報管理部１７１２に保存されている。
本例では、図７（ａ）に示すように更新モード１を示す更新モード情報を実行ファイル部３７１０が取得することになる。
【００８６】
次に、実行ファイル部３７１０は、取得した更新モードが、更新モード１であるか否かを判定する（ステップ２０９参照）。判定結果は「はい」であり、ステップ２１０に進むが、判定結果が「いいえ」の場合にはステップ２１８に進む。
実行ファイル部３７１０は、新たにインストールするドライバ、つまりセットアップするべきプリンタドライバのバージョンが、既存ネットワークプリンタを構成するドライバのバージョンよりも新しいか否かを判定する（ステップ２１０参照）。判定結果は「はい」であり、ステップ２１５に進む。
【００８７】
続いて、実行ファイル部３７１０は、図１０に示す予め規定されたインストール規則に従い、新たにインストールするドライバを用いてローカルプリンタオブジェクトを生成する（ステップ２１５参照）。
【００８８】
次に、実行ファイル部３７１０は、新たにインストールするドライバの出力先デバイスと、既存ネットワークプリンタの出力先デバイスが同じであるか否かを判定する（ステップ２１６）。判定結果は「いいえ」であり、ステップ２１７に進む。
【００８９】
次に、実行ファイル部３７１０は、新たにインストールするドライバを用いて、既存ネットワークプリンタの出力先デバイスをプリンタポートとするローカルプリンタオブジェクトを生成する（ステップ２１７参照）。
そして、プリントサーバ４０００におけるプリンタドライバに関わる設定処理が行われる（ステップ２１４参照）。この処理には、ネットワークプリンタに対応する、プリントサーバにおけるプリンタ設定の削除も含まれ、例えば実行ファイル部３７１０は、既存ネットワークプリンタオブジェクトを削除する。
【００９０】
一方、前記ステップ２１０での判定結果が「いいえ」の場合には、ステップ２１１に進む。ここで実行ファイル部３７１０は、図１０のインストール規則に従い、既存ネットワークプリンタを構成するドライバを用いてローカルプリンタオブジェクトを生成する。
次に、実行ファイル部３７１０は、新たにインストールするドライバの出力先デバイスと、既存ネットワークプリンタの出力先デバイスが同じであるか否かを判定する（ステップ２１２参照）。判定結果が「いいえ」の場合にはステップ２１３に進むが、判定結果が「はい」の場合にはステップ２１４に進む。
【００９１】
実行ファイル部３７１０は、既存ネットワークプリンタを構成するドライバを用いて、既存ネットワークプリンタの出力先デバイスをプリンタポートとするローカルプリンタオブジェクトを生成する（ステップ２１３参照）。そして、ステップ２１４を経て処理が終了する。
なお、前記ステップ２１２、２１６での判定結果が「はい」の場合には、ステップ２１４を経て処理が終了する。
【００９２】
次に、更新モード２の場合について処理の流れを説明する。
図７（ａ）に示す更新モードが更新モード２である場合、前記ステップ２００乃至２０８の後に、前記ステップ２０９での判定処理が行われる。判定結果は「いいえ」であり、ステップ２１８に進む。
【００９３】
実行ファイル部３７１０は、更新モードを判別する。そして更新モードが、更新モード２であるか又は更新モード３であるかが判定される（ステップ２１８参照）。判定結果は「はい」であり、ステップ２１９に進む。
【００９４】
実行ファイル部３７１０は、新たにインストールするドライバのバージョンが、既存ネットワークプリンタを構成するドライバのバージョンよりも新しいか否かを判定する（ステップ２１９参照）。判定結果が「はい」の場合にはステップ２２０に進み、判定結果が「いいえ」の場合にはステップ２２５に進む。
【００９５】
実行ファイル部３７１０は、管理サーバ１０００のドライバ管理制御部１７１１に対して、プリントサーバ４０００へのタスク実行を依頼する（ステップ２２０参照）。なお、このとき、実行ファイル部３７１０は、新たにインストールするドライバのドライバ情報（ドライバ種別、バージョン、出力先デバイス）を伴った依頼を行う。
【００９６】
図５を用いて、管理サーバ１０００での処理について説明する。
ドライバ管理制御部１７１１は、クライアント３０００からのタスク実行の依頼を受信する（ステップ１０４参照）。
【００９７】
次にドライバ管理制御部１７１１は、クライアント３０００の実行ファイル部３７１０に対して、ネットワークプリンタ情報を要求する（ステップ１０５参照）。
この要求を受けるクライアント３０００の処理について図６（ａ）を用いて説明する。
【００９８】
実行ファイル部３７１０は、クライアント３０００のネットワークプリンタ情報を取得する（ステップ２３０参照）。ここで、ネットワークプリンタ情報は、ネットワークプリンタを構成しているドライバ情報、及びそのネットワークプリンタがどのプリントサーバ上の共有プリンタと連動しているかを示す情報である。
【００９９】
本例ではネットワークプリンタ情報において、以下の情報を含む。
・プリントサーバ名「プリントサーバＡ」上のドライバの名称が「ドライバＡ」であり、そのバージョンが１．００であること、及び共有プリンタ名「共有Ａ」からなるネットワークプリンタの名称が「プリンタＡ」であること。
なお、前記情報は、クライアントのレジストリ等の記憶域に登録されており、レジストリを探索するか、又はオペレーティングシステムが提供するＡＰＩ（Application Programming Interface）を利用して取得できる。
【０１００】
次に、実行ファイル部３７１０は、ドライバ管理制御部１７１１に対して、ネットワークプリンタ情報を送付する（ステップ２３１参照）。
【０１０１】
再び図５に戻って、管理サーバ１０００の処理について説明を続ける。
ステップ１０６にてドライバ管理制御部１７１１は、クライアント３０００の実行ファイル部３７１０からネットワークプリンタ情報を受信し、これを情報管理部１７１２に保存する。本例では、クライアント３０００には、プリントサーバＡの共有名「共有Ａ」のドライバに対応したネットワークプリンタＡがインストールされており、そのバージョンが１．００とされる。
【０１０２】
次に、ドライバ管理制御部１７１１は情報管理部１７１２にアクセスし、管理しているプリントサーバ、及びその共有プリンタ情報を取得する（ステップ１０７参照）。その一例を図７（ｃ）に示す。ただし、本例においてこの時点では管理下のプリントサーバ情報はないものとする。
ドライバ管理制御部１７１１は情報管理部１７１２にアクセスし、更新モード設定情報を取得する（ステップ１０８参照）。この場合、取得した更新モード設定情報は、更新モードが更新モード２であることを示す。
【０１０３】
次に、ドライバ管理制御部１７１１は更新モードを判別する。そして更新モードが更新モード２であるか又は更新モード３であるかが判定される（ステップ１０９参照）。判定結果は「はい」でありステップ１１０に進む。
ドライバ管理制御部１７１１は、前記ステップ１０６で取得したネットワークプリンタ情報と、ステップ１０７で取得したプリントサーバ、及びその共有プリンタ情報を比較する(ステップ１１０)。ここでの比較とは、クライアント３０００のネットワークプリンタに対応した共有プリンタがインストールされているプリントサーバ４０００を管理しているか否かについて、ドライバ管理制御部１７１１が判定することを意味する。判定結果が「いいえ」の場合にステップ１１１に進む。
【０１０４】
ドライバ管理制御部１７１１は、プリントサーバ４０００を管理下に置くために、プリントサーバ４０００に対してエージェントであるドライバ管理サービス部４７１０を配信するためのタスクを作成する（ステップ１１１参照）。
【０１０５】
続いて、ドライバ管理制御部１７１１は、プリントサーバ４０００に対してエージェント配信タスクを実行する（ステップ１１２参照）。
ここでプリントサーバ４０００に対するドライバ管理サービス部４７１０のインストールは、例えばＭｉｃｒｏｓｏｆｔ社のＯＳに同梱されているＷＭＩ等のリモート配信技術を利用することを意味する。なおＷＭＩは「Windows Management Instrumentation」の略称である。
【０１０６】
図６（ｂ）を用いて、プリントサーバ４０００での処理について説明する。
プリントサーバ４０００の第四データ制御部４７００は、ドライバ管理制御部１７１１からのエージェントタスク処理として、ドライバ管理サービス部４７１０のインストール処理を行う（ステップ３００参照）。
【０１０７】
次に、第四データ制御部４７００は、ドライバ管理サービス部４７１０のインストール処理が成功したか否かを判断する（ステップ３０１参照）。判定結果が「はい」の場合にステップ３０２に進み、判定結果が「いいえ」の場合にステップ３０３に進む。
【０１０８】
ドライバ管理サービス部４７１０は、プリントサーバ４０００において既に共有プリンタがインストールされているか否かを示すプリントサーバ情報を取得する（ステップ３０２参照）。
続いて、ドライバ管理サービス部４７１０は、管理サーバ１０００のドライバ管理制御部１７１１に対して、ステップ３０１での成否を示す情報、及びステップ３０２で取得した情報を返送する（ステップ３０３参照）。
【０１０９】
再び図５に戻って、管理サーバ１０００での処理について説明を続ける。
ステップ１１３にてドライバ管理制御部１７１１は、プリントサーバ４０００のドライバ管理サービス部４７１０からのエージェントタスク結果に基づいて、エージェントタスクが成功したか否かを判断する。その判断結果が「はい」の場合にステップ１１４に進む。
【０１１０】
ドライバ管理制御部１７１１は、プリントサーバ４０００のドライバ管理サービス部４７１０からのプリントサーバ情報を情報管理部１７１２に登録する（ステップ１１４参照）。本例では、図７（ｃ）に示すようにプリントサーバ名「プリントサーバＡ」の情報が登録されたものとする。
【０１１１】
次にステップ１１０に戻り、ドライバ管理制御部１７１１が判定処理を行う。今度は判定結果が「はい」であり、ステップ１１５に進む。ここでドライバ管理制御部１７１１は、プリントサーバ４０００の共有プリンタに対するドライバ更新タスクを作成する。本例においてドライバ更新タスクとは、プリントサーバ４０００の共有名「共有Ａ」のドライバＡをバージョン１．００から２．００に更新するためのタスクを作成することを意味する。
【０１１２】
次に、ドライバ管理制御部１７１１は、プリントサーバ４０００のドライバ管理サービス部４７１０に対して、作成したドライバ更新タスクを実行する（ステップ１１６参照）。
【０１１３】
図６（ｃ）を用いて、プリントサーバ４０００での処理について説明する。
ドライバ管理サービス部４７１０は、共有プリンタＡのドライバを更新することで、そのバージョンを１．００から２．００へアップデートする（ステップ３０４参照）。
次に、ドライバ管理サービス部４７１０は、管理サーバ１０００のドライバ管理制御部１７１１に対して、タスクの実行結果を返送する（ステップ３０５参照）。
【０１１４】
再び図５に戻って管理サーバ１０００での処理について説明を続ける。
ステップ１１７にてドライバ管理制御部１７１１は、前記ステップ１１６でのドライバ更新タスクが成功したか否かを判断する。その判断結果が「はい」の場合にステップ１１８に進む。
ドライバ管理制御部１７１１は、クライアント３０００の実行ファイル部３７１０に対して、ネットワークプリンタの更新を伴うドライバ更新タスク処理を指示する（ステップ１１８参照）。
【０１１５】
図１に戻り、クライアント３０００での処理について説明する。
ステップ２２１にて実行ファイル部３７１０は、ネットワークプリンタのドライバ更新を伴うローカルプリンタのインストール処理を実行する。そして一連の処理が終了となる。
【０１１６】
一方、図５のステップ１１３での判定結果が「いいえ」の場合や、前記ステップ１１７での判定結果が「いいえ」の場合には、図１のステップ２２３の後（判定結果「はい」）、ステップ２２４に進む。クライアント３０００の実行ファイル部３７１０は、プリンタの追加やドライバの更新といった処理は行わず、一連の処理が終了する。
【０１１７】
次に、更新モード３を選択した場合の処理の流れを説明する。
この場合、管理サーバ１０００のドライバ管理制御部１７１１は、クライアント３０００のネットワークプリンタに対応した共有プリンタのプリントサーバを管理下に置いているものとする。すなわちこれは図７（ｃ）に示すような情報が情報管理部１７１２に登録されていることを意味する。
【０１１８】
図５を用いて管理サーバ１０００での処理について説明する。
ステップ１０４乃至１０９までの処理については前述の通りである。
ステップ１１０において、ドライバ管理制御部１７１１は、クライアント３０００のネットワークプリンタに対応した共有プリンタのプリントサーバを管理下に置いている。よって判定結果は「はい」であり、ステップ１１５に進む。これ以降の処理は、図５のステップ１１５乃至１１８、図６（ｃ）のステップ３０４及び３０５、図１のステップ２２１及び２２４について説明した通りである。よって重複回避のためのそれらの説明を割愛する。
【０１１９】
次に、更新モード４を選択した場合の処理の流れを説明する。
図１を用いて、クライアント３０００での処理について説明する。
ステップ２００乃至２０８の処理は前述の通りであり、ステップ２０９での判定結果は「いいえ」であり、ステップ２１８に進む。ここでの判定結果は「いいえ」であり、ステップ２２２に進む。実行ファイル部３７１０は更新モードを判別する。そして更新モード４であるか否かが判定される。判定結果は「はい」であり、ステップ２２３に進む。
【０１２０】
実行ファイル部３７１０は、新たにインストールするドライバのバージョンが、既存ネットワークプリンタを構成するドライバのバージョンよりも新しいか否かを判定する（ステップ２２３参照）。判定結果が「はい」の場合にステップ２２４に進む。ここでクライアント３０００の実行ファイル部３７１０は、プリンタの追加やドライバの更新といった処理を行わずに、一連の処理を終了する。
【０１２１】
なお前記ステップ２１９や２２３での判定結果が「いいえ」の場合、すなわち新たにインストールするドライバのバージョンが、既存ネットワークプリンタのバージョンと同じか又は古い場合にはステップ２２５に進む。ここで実行ファイル部３７１０は、既存ネットワークプリンタを構成するドライバを用いて、ローカルプリンタを新たにインストールする。そして一連の処理が終了する。
【０１２２】
また、前記ステップ２０６や２０７での判定結果が「いいえ」の場合にはステップ２２１に進む。ここで実行ファイル部３７１０は、ローカルプリンタの追加や更新の処理を行う。そして一連の処理が終了する。
【０１２３】
図５に示すステップ１０９での判定結果が「いいえ」の場合には、ステップ１１９に進む。ここでドライバ管理制御部１７１１は、クライアント３０００の実行ファイル部３７１０に対して、ネットワークプリンタのバージョンを優先させる指示を出す。そして実行ファイル部３７１０は、図１に示すステップ２２３乃至２２５の処理を行った後で、一連の処理が終了する。
【０１２４】
なお、図１のステップ２１４、２２１、２２４、２２５の処理後に、インストール処理結果を表示しても構わない。つまりメッセージボックス等を用いて、クライアント３０００の第三表示部３１００に処理結果を表示することで操作者に注意を促すことができる。
【符号の説明】
【０１２５】
１０００  管理サーバ
１７００，２７００，３７００，４７００  データ制御部
１７１１  ドライバ管理制御部
１７１２  情報管理部
１７１３  ドライバ保管部
１８００，２８００，３８００，４８００  中央演算処理装置
２０００  デバイス
３０００  クライアント
３７１０  実行ファイル部
４０００  プリントサーバ
【図１】
2010250369.tif 000003
【図２】
2010250369.tif 000004
【図３】
2010250369.tif 000005
【図４】
2010250369.tif 000006
【図５】
2010250369.tif 000007
【図６】
2010250369.tif 000008
【図７】
2010250369.tif 000009
【図８】
2010250369.tif 000010
【図９】
2010250369.tif 000011
【図１０】
2010250369.tif 000012