(57)【要約】【課題】ジョブを実行するためのドライバを従来よりも適切に管理できるようにする。【解決手段】デバイス２０００は、ネットワークに接続すると、ネットワーク参加メッセージをユニキャストで管理サーバ１０００に発行する。管理サーバ１０００は、ネットワーク参加メッセージに対する返答を行って、デバイスメタデータを取得し、デバイスメタデータに含まれるデバイス特性情報と、そのデバイス特性情報に対応するドライバとを関連付ける。更に、管理サーバ１０００は、デバイス特性情報に予め関連付けられたドライバ配信クライアント４０００を検出する。そして、管理サーバ１０００は、管理者によって設定された動作環境モードを判定し、判定した動作環境モードに応じて、ドライバをインストールする。【選択図】図１
2009145970.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されたデバイスから、１対１接続の探索プロトコルに従ってユニキャストで送信されたネットワーク参加メッセージを受信する受信手段と、
前記ネットワークに接続されたクライアント端末装置からのジョブを前記デバイスで実行する際の動作環境を判定する判定手段と、
前記ネットワーク参加メッセージを送信したデバイスを動作させるためのドライバをインストールさせるインストール手段とを有し、
前記判定手段により判定された動作環境が、前記クライアント端末装置から前記デバイスへジョブの実行を直接指示する環境である場合は、前記デバイスへジョブの実行を直接指示できるように前記ドライバを前記インストール手段はインストールし、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示する環境である場合は、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示することが可能になるように前記ドライバを前記インストール手段は、インストールすることを特徴とするドライバ管理装置。
【請求項２】
前記インストール手段は、前記判定手段により、前記動作環境が、前記クライアント端末装置から前記デバイスへジョブの実行を直接指示する環境であると判定されると、前記クライアント端末装置に前記ドライバの全てをインストールさせ、前記判定手段により、前記動作環境が、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示する環境であると判定されると、前記プリントサーバに前記ドライバの一部をインストールさせることを特徴とする請求項１に記載のドライバ管理装置。
【請求項３】
前記ネットワーク参加メッセージを送信したデバイスから、そのデバイスの特性を示すデバイス特性情報を受信する第２の受信手段と、
デバイスの特性を示すデバイス特性情報と、クライアント端末装置及びプリントサーバとの少なくとも何れか一方とを予め関連付けて記憶媒体に登録する登録手段とを有し、
前記インストール手段は、前記第２の受信手段により受信されたデバイス特性情報に関連付けられて前記登録手段により登録されたクライアント端末装置又はプリントサーバに前記ドライバをインストールさせることを特徴とする請求項２に記載のドライバ管理装置。
【請求項４】
前記ネットワーク参加メッセージを送信したデバイスと、そのデバイスの特性を示すデバイス特性情報に対応したドライバとを関連付ける関連付け手段を有することを特徴とする請求項３に記載のドライバ管理装置。
【請求項５】
前記動作環境を、ユーザによる操作に基づいて予め設定する設定手段を有し、
前記判定手段は、前記設定手段により設定された内容に基づいて、前記ネットワークに接続されたクライアント端末装置からのジョブを、前記ネットワークに接続されたデバイスで実行する際の動作環境を判定することを特徴とする請求項１〜４の何れか１項に記載のドライバ管理装置。
【請求項６】
前記設定手段は、１つ又は複数のクライアント端末装置の単位で、前記動作環境を、ユーザによる操作に基づいて予め設定することを特徴とする請求項５に記載のドライバ管理装置。
【請求項７】
ネットワークに接続されたクライアント端末装置からのジョブをデバイスで実行する際の動作環境を判定する判定ステップと、
前記ネットワークに接続されたデバイスから、１対１接続の探索プロトコルに従ってユニキャストで送信されたネットワーク参加メッセージが受信されると、そのネットワーク参加メッセージを送信したデバイスを動作させるためのドライバをインストールさせるインストールステップとを有し、
前記判定ステップにより判定された動作環境が、前記クライアント端末装置から前記デバイスへジョブの実行を直接指示する環境である場合は、前記デバイスへジョブの実行を直接指示できるように前記ドライバを前記インストールステップはインストールし、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示する環境である場合は、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示することが可能になるように前記ドライバを前記インストールステップはインストールすることを特徴とするドライバ管理方法。
【請求項８】
前記インストールステップは、前記判定ステップにより、前記動作環境が、前記クライアント端末装置から前記デバイスへジョブの実行を直接指示する環境であると判定されると、前記クライアント端末装置に前記ドライバの全てをインストールさせ、前記判定ステップにより、前記動作環境が、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示する環境であると判定されると、前記プリントサーバに前記ドライバの一部をインストールさせることを特徴とする請求項７に記載のドライバ管理方法。
【請求項９】
デバイスの特性を示すデバイス特性情報と、クライアント端末装置及びプリントサーバとの少なくとも何れか一方とを予め関連付けて記憶媒体に登録する登録ステップを有し、
前記インストールステップは、前記ネットワーク参加メッセージを送信したデバイスから、そのデバイスの特性を示すデバイス特性情報が受信されると、そのデバイス特性情報に関連付けられて前記登録ステップにより登録されたクライアント端末装置又はプリントサーバに前記ドライバをインストールさせることを特徴とする請求項８に記載のドライバ管理方法。
【請求項１０】
前記ネットワーク参加メッセージを送信したデバイスと、そのデバイスの特性を示すデバイス特性情報に対応したドライバとを関連付ける関連付けステップを有することを特徴とする請求項９に記載のドライバ管理方法。
【請求項１１】
前記動作環境を、ユーザによる操作に基づいて予め設定する設定ステップを有し、
前記判定ステップは、前記設定ステップにより設定された内容に基づいて、前記ネットワークに接続されたクライアント端末装置からのジョブを、前記ネットワークに接続されたデバイスで実行する際の動作環境を判定することを特徴とする請求項７〜１０の何れか１項に記載のドライバ管理方法。
【請求項１２】
前記設定ステップは、１つ又は複数のクライアント端末装置の単位で、前記動作環境を、ユーザによる操作に基づいて予め設定することを特徴とする請求項１１に記載のドライバ管理方法。
【請求項１３】
請求項７〜１２の何れか１項に記載のドライバ管理方法の各ステップをコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドライバ管理装置、ドライバ管理方法、及びコンピュータプログラムに関し、特に、デバイスのドライバを管理するために用いて好適なものである。
【背景技術】
【０００２】
従来から、プリンタ等のデバイスとクライアント端末装置（以下、必要に応じてクライアントと称する）とがネットワークに接続されたデバイス・クライアント環境において、デバイスに対応したドライバをクライアントにインストールする技術があった。
具体的に説明すると、ネットワークに接続されたデバイスがネットワーク参加メッセージをネットワークに送付すると、ネットワーク上のクライアントが、そのネットワーク参加メッセージに応答して、デバイスにドライバをインストールすることが行われていた。また、クライアントは、ネットワークに接続したときにネットワークに送付するネットワーク参加メッセージに対する"デバイスからの応答"に従って、ドライバをインストールすることが行われていた。このような技術は、例えば、Microsoft社のＵＰｎＰプロトコルや、ＷＳＤ（Web Services for Devices）や、Apple社のRendezvous機能により実現される（特許文献１を参照）。
【０００３】
更に、このような技術において、ユーザにとって必要性の無いドライバがクライアントにインストールされるのを防ぐ技術が提案されている（特許文献２を参照）。この技術では、ＵＰｎＰ（Universal Plug and Play）を受け付けるか否かの設定を制御するモジュールをクライアントに設ける。そして、クライアントは、この設定に基づいて、ネットワークに接続されたデバイスにドライバをインストールするか否かを判断する。
【０００４】
【特許文献１】特開２００４−３８９５６号公報
【特許文献２】特開２００７−６６０９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、前述した従来の技術では、デバイスとクライアントとは、サーバを経由せずに、ドライバのインストールの可否を直接やりとりする。したがって、クライアントへのドライバのインストールを、サーバ側で一元管理することができないという課題があった。そこで、サーバを導入することが考えられるが、単にサーバを導入するだけでは、ネットワーク参加メッセージが、クライアントとサーバとの双方に送付される。したがって、クライアントに送付されたネットワーク参加メッセージをサーバ側で管理することができず、前述した課題は解決されない。
【０００６】
また、クライアントから出力されたジョブをデバイスで実行するための動作環境として、様々な環境がある。例えば、ピアトゥピア（peer to peer）の形態で、クライアントから出力されたジョブをデバイスで実行する環境と、プリントサーバを経由して、クライアントから出力されたジョブをデバイスで実行する環境とがある。しかしながら、前述した従来の技術では、ある特定の動作環境でしか、デバイスにドライバをインストールすることができなかった。
【０００７】
本発明は、このような問題点の少なくともひとつに鑑みてなされたものであり、ジョブを実行するためのドライバを従来よりも適切に管理できるようにすることを目的とする。
また、本発明は、以下のいずれの環境においても、ドライバを適切にセットアップし、ドライバ管理装置側で一元管理された統合的なシステムを構築することをさらに別の目的とする。ここで、前記環境は、クライアント端末装置からデバイスへジョブの実行を直接指示する環境、及び、デバイスに接続されたプリントサーバを経由して、クライアント端末装置からデバイスへジョブの実行を指示する環境である。
【課題を解決するための手段】
【０００８】
本発明のドライバ管理装置は、ネットワークに接続されたデバイスから、１対１接続の探索プロトコルに従ってユニキャストで送信されたネットワーク参加メッセージを受信する受信手段と、前記ネットワークに接続されたクライアント端末装置からのジョブを前記デバイスで実行する際の動作環境を判定する判定手段と、前記ネットワーク参加メッセージを送信したデバイスを動作させるためのドライバをインストールさせるインストール手段とを有し、前記判定手段により判定された動作環境が、前記クライアント端末装置から前記デバイスへジョブの実行を直接指示する環境である場合は、前記デバイスへジョブの実行を直接指示できるように前記ドライバを前記インストール手段はインストールし、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示する環境である場合は、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示することが可能になるように前記ドライバを前記インストール手段は、インストールすることを特徴とする。
【０００９】
本発明のドライバ管理方法は、ネットワークに接続されたクライアント端末装置からのジョブをデバイスで実行する際の動作環境を判定する判定ステップと、前記ネットワークに接続されたデバイスから、１対１接続の探索プロトコルに従ってユニキャストで送信されたネットワーク参加メッセージが受信されると、そのネットワーク参加メッセージを送信したデバイスを動作させるためのドライバをインストールさせるインストールステップとを有し、前記判定ステップにより判定された動作環境が、前記クライアント端末装置から前記デバイスへジョブの実行を直接指示する環境である場合は、前記デバイスへジョブの実行を直接指示できるように前記ドライバを前記インストールステップはインストールし、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示する環境である場合は、前記デバイスに接続されたプリントサーバを経由して、前記クライアント端末装置から前記デバイスへジョブの実行を指示することが可能になるように前記ドライバを前記インストールステップはインストールすることを特徴とする。
【００１０】
本発明のコンピュータプログラムは、前記ドライバ管理方法の各ステップをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ネットワークに接続されたデバイスから、１対１接続の探索プロトコルに従ってユニキャストでネットワーク参加メッセージが送信されると、そのデバイスを動作させるためのドライバをインストールする。したがって、ネットワーク参加メッセージを特定の装置で管理することが可能になり、クライアント端末装置から出力されたジョブを実行するためのドライバを特定の装置で管理することができる。また、ネットワークに接続されたクライアント端末装置からのジョブを前記ネットワークに接続されたデバイスで実行する際の動作環境に応じて、ドライバをインストールするようにした。したがって、クライアント端末装置からのジョブをデバイスで実行するための動作環境に適した形態で、そのジョブを実行するためのドライバをインストールすることができる。以上のようにすることで、ジョブを実行するためのドライバを従来よりも適切に管理できる。
【発明を実施するための最良の形態】
【００１２】
（第１の実施形態）
以下に、図面を参照しながら、本発明の第１の実施形態について説明する。
＜デバイス・クライアント管理システムの構成＞
図１は、印刷システムの構成の一例を示す図である。図１において、印刷システムは、ドライバ管理装置の一例である管理サーバ１０００、デバイス２０００、管理者クライアント３０００、クライアント端末装置の一例であるドライバ配信クライアント４０００、及びプリントサーバ５０００を備えて構成される。そして、これら管理サーバ１０００、デバイス２０００、管理者クライアント３０００、ドライバ配信クライアント４０００、及びプリントサーバ５０００は、通信回線６０００に接続されている。
【００１３】
また、管理サーバ１０００、デバイス２０００、管理者クライアント３０００、ドライバ配信クライアント４０００、及びプリントサーバ５０００は、夫々中央演算処理装置１８００、２８００、３８００、４８００、５８００を備えている。中央演算処理装置１８００、２８００、３８００、４８００、５８００は、例えば、関連データを用いながらプログラムを実行する。プログラム及び関連データは、例えば、ＦＤ、ＣＤ−ＲＯＭ、ＩＣメモリカード等の記憶媒体に記憶されており、記憶媒体読取装置１６００、２６００、３６００、４６００、５６００によって読み出される。
【００１４】
また、記憶媒体読取装置１６００、２６００、３６００、４６００、５６００からデータ制御部１７００、２７００、３７００、４７００、５７００にシステムプログラムやアプリケーションプログラムがロードされる。このシステムプログラムやアプリケーションプログラムは、表示部１１００、２１００、３１００、４１００、５１００、及び入力部１２００、２２００、３２００、４２００、５２００から入力される情報を処理する。そして、インターフェース制御部１４００、２４００、３４００、４４００、５４００を経由してデータの入出力を行う。
【００１５】
尚、表示部１１００、２１００、３１００、４１００、５１００は、ＣＲＴディスプレイ又は液晶ディスプレイ等の表示装置を有する。
また、入力部１２００、２２００、３２００、４２００、５２００は、キーボードやマウス等のポインティングデバイス等を備えて構成されている。
更に、記憶媒体読取装置１６００、２６００、３６００、４６００、５６００は、ハードディスクや、光磁気ディスクで構成されるものであってもよいし、これらの組み合わせで構成されるものであってもよい。
【００１６】
デバイス２０００は、スキャナ部２９１０と、印刷部であるプリンタエンジン２９２０とを有し、所謂マルチファンクションを有する印刷装置であり、例えば、ドライバ配信クライアント４０００からの印刷ジョブを、プリンタエンジン２９２０を用いて実行する。尚、この印刷ジョブは、ドライバ配信クライアント４０００から直接的に投入されることもあるし、ドライバ配信クライアント４０００から管理サーバ１０００等を介して間接的に投入されることもある。
更に、デバイス２０００は、ＭＩＢ（Management Information Base）といったデバイス情報を保持する。デバイス情報の取得や設定は、通信回線６０００を介して、主に管理者クライアント３０００から実現することが可能である。
管理サーバ１０００とデバイス２０００は、ＵＰｎＰ制御部１７２０、２７２０を有している。ＵＰｎＰ制御部１７２０、２７２０は、ＵＰｎＰ機能を制御する機能を有し、ＯＳ（Operating System）に付随するものである。
本実施形態では、デバイス２０００が有する第二ＵＰｎＰ制御部２７２０は、通信回線６０００に接続すると、ネットワーク参加メッセージを、管理サーバ１０００に対して送信（発行）する。このとき、第二ＵＰｎＰ制御部２７２０は、ネットワーク参加メッセージを、１対１接続の探索プロトコルの一例であるＵＰｎＰプロトコルに従って、マルチキャストではなくユニキャストで送信する。このネットワーク参加メッセージは、管理サーバ１０００が有する第一ＵＰｎＰ制御部１７２０にて検知される。
【００１７】
一方、ドライバ配信クライアント４０００は、アプリケーションからの印刷を、プリンタドライバを介して行ったり、デバイス２０００にてスキャンしたデータの取得を、スキャナドライバを介して行ったりすることが可能である。以下の説明では、プリンタドライバやスキャナドライバを、必要に応じてドライバと称する。
また、通信回線６０００は、例えば、通常のＬＡＮ（Local Area Network）、又はIEEE1394やＵＳＢ（Universal Serial Bus）といった双方向シリアルインタフェース等を有する。
【００１８】
本実施形態では、管理サーバ１０００の第一デバイス管理アプリケーション部１７１０、ドライバ配信クライアント４０００の第四サービスプログラム部４７１０、及びプリントサーバ５０００の第五サービスプログラム部５７１０等が、特徴的な処理を行う。
【００１９】
第一デバイス管理アプリケーション部１７１０は、第一プログラム制御部１７１１、第一デバイス管理制御部１７１２、第一タスク管理制御部１７１３、第一ドライバ管理制御部１７１４、第一情報保管部１７１５、及び第一ドライバ保管部１７１６を有する。
第一プログラム制御部１７１１は、第一デバイス管理制御部１７１２、第一タスク管理制御部１７１３、及び第一ドライバ管理制御部１７１４の各制御部を制御する役目をなすフレームワークプログラム部である。
【００２０】
第一デバイス管理制御部１７１２は、デバイス２０００の探索、デバイス２０００のステータスの監視、及びデバイス２０００の設定に対する変更等を、第一タスク管理制御部１７１３を介してタスク単位で行う。更に、第一デバイス管理制御部１７１２は、第一ＵＰｎＰ制御部１７２０がＵＰｎＰ機能を有するデバイス２０００を検知したことを受けると、第一ＵＰｎＰ制御部１７２０を介して、デバイス２０００との間で通信を行い、デバイスメタデータを取得する。このようにデバイス２０００は、ＵＰｎＰ機能を有しているので、以下の説明では、デバイス２０００を、必要に応じてＵＰｎＰデバイス２０００と称する。
【００２１】
デバイスメタデータには、デバイス２０００の特性を示すデータと、デバイス２０００のドライバに関するデータとが含まれる。
デバイスの特性を示すデータには、例えば、印刷装置なのか、スキャナなのか、ファックスなのかといったデバイス種別や、デバイス２０００の機能を示すデバイス機能が含まれる。例えば、デバイス種別が印刷装置である場合であって、その印刷装置が、印刷機能以外の機能（例えばファックス機能）を有する場合には、印刷機能とファックス機能とが、デバイス機能に含まれることになる。また、例えば、印刷機能には、どのようなページ言語を使用しているのか、印刷速度はどのくらいか、どのようなフィニッシング機能を有しているのか、といった情報も含めることができる。
一方、ドライバに関するデータには、例えば、そのドライバはどこにあるのかといったドライバの所在に関する情報や、ドライバそのもののダウンロード機能といった情報等が含まれる。
ＵＰｎＰに利用するＷＳＤに代表されるように、ＸＭＬ形式で記載された情報を、Ｗｅｂサービスでやりとりすることが可能である。よって、以上のようなデバイスメタデータの内容には自由度が与えられる。
【００２２】
第一ドライバ管理制御部１７１４は、ドライバ配信クライアント４０００に対してクライアントエージェントを配布するための配布処理を行う。また、第一ドライバ管理制御部１７１４は、プリントサーバ５０００に対してプリントサーバエージェントを配布するための配布処理を行う。
そして、第一ドライバ管理制御部１７１４は、配布したクライアントエージェントやプリントサーバエージェントとのＷｅｂサービス等を利用した通信を行い、ドライバを配布すると共に、そのドライバのインストール指示を行う。
尚、第一ドライバ管理制御部１７１４が行う前述した処理は、第一タスク管理制御部１７１３を介して行われる。
【００２３】
第一タスク管理制御部１７１３は、前述したように、第一デバイス管理制御部１７１２や第一ドライバ管理制御部１７１４のタスク単位の処理を制御する。
タスク単位の処理を制御するとは、タスクに指示された実行情報に基づいて、スケジューリングや、実行結果の表示を行うことを意味する。
例えば、第一ドライバ管理制御部１７１４にて、あるドライバ配信クライアント４０００に対してあるドライバを配布するドライバタスクが作成され、そのドライバタスクが第一タスク管理制御部１７１３に渡されたとする。そうすると、第一タスク管理制御部１７１３は、そのドライバタスクの実行情報に従い、実行時になった時に、第一ドライバ管理制御部１７１４に対して、そのタスクを実行するように指示を行う。
そして、第一ドライバ管理制御部１７１４は、そのドライバタスクを実行し、その実行結果を第一タスク管理制御部１７１３へ返し、第一タスク管理制御部１７１３では、そのドライバタスクの実行結果の表示を行うための処理を行う。
【００２４】
ここで、本実施形態では、第一デバイス管理アプリケーション部１７１０は、所謂Ｗｅｂアプリケーションである。すなわち、第一デバイス管理アプリケーション部１７１０に対する操作は、所謂Ｗｅｂブラウザをインターフェースとして、管理者クライアント３０００の第三表示部３１００及び第三入力部３２００を介して行われる。
尚、第一デバイス管理アプリケーション部１７１０は、Ｗｅｂアプリケーションではなく、通常のネイティブアプリケーションであっても構わない。その場合には、管理者は、通常、管理者クライアント３０００からではなく、管理サーバ１０００の第一表示部１１００と第一入力部１２００を介して、第一デバイス管理アプリケーション部１７１０に対する操作を行う。
【００２５】
第一ドライバ管理制御部１７１４は、ドライバ配信クライアント４０００の第四データ制御部４７００が有する第四サービスプログラム部４７１０と通信を行うための処理を実行する。
ここで、第四サービスプログラム部４７１０は、ドライバのインストール機能を有する所謂サービスプログラムである。以下の説明では、このサービスプログラムを必要に応じてクライアントエージェントと称する。
【００２６】
更に、ドライバ管理制御部１７１４は、プリントサーバ５０００の第五データ制御部５７００が有する第五サービスプログラム部５７１０と通信を行うための処理を実行する。
ここで、第五サービスプログラム部５７１０は、ドライバのインストール機能を有する所謂サービスプログラムである。以下の説明では、このサービスプログラムを必要に応じてプリントサーバエージェントと称する。
【００２７】
クライアントエージェント及びプリントサーバエージェントは、所謂ＳＯＡＰ等のプロトコルを利用して、Ｗｅｂサービスによりドライバ管理制御部１７１４と通信を行う。
更に、クライアントエージェント及びプリントサーバエージェントは、ドライバ管理制御部１７１４との通信の一部として、第一ドライバ保管部１７１６に格納されているドライバを取得し、取得したドライバのインストールを行う機能を有する。
【００２８】
第一情報保管部１７１５は、所謂データベースであり、第一ドライバ保管部１７１６は、ＦＴＰサーバ、ＨＴＴＰサーバ、又はファイルサーバといったドライバをダウンロードするためのサーバである。第一情報保管部１７１５及び第一ドライバ保管部１７１６は、図１に示すように、管理サーバ１０００と同一のサーバにあってもよいし、それらの少なくとも何れか一方が管理サーバ１０００とは別のサーバにあってもよい。第一情報保管部１７１５及び第一ドライバ保管部１７１６は、第一プログラム制御部１７１１、第一デバイス管理制御部１７１２、第一タスク管理制御部１７１３、及び第一ドライバ管理制御部１７１４によりアクセスされ、必要なデータを保存するのに利用される。
【００２９】
＜印刷システムの概念的な構成＞
図２は、プリントサーバ５０００を用いない動作環境（ＰＵＳＨモード）における印刷システムの動作の一例を概念的に示す図である。すなわち、図２では、ドライバ配信クライアント４０００からデバイス２０００への印刷を直接指示するピアトゥピア形態（ＰＵＳＨモード）の動作環境における印刷システムの動作の一例を示している。
図２（ａ）は、管理サーバ１０００、管理者クライアント３０００、及びドライバ配信クライアント４０００が通信回線６０００に接続されているネットワーク環境に、デバイス２０００が参加したことを示している。本実施形態では、管理サーバ１０００に対してユニキャストＵＰｎＰを行うための設定が、デバイス２０００の第二ＵＰｎＰ制御部２７２０に対して予め行われている。したがって、デバイス２０００の第二ＵＰｎＰ制御部２７２０は、デバイス２０００がネットワークに参加すると、ネットワーク参加メッセージ（例えばＷＳＤにおけるＨｅｌｌｏメッセージ）を、ユニキャストで管理サーバ１０００に対して発行する。
【００３０】
図２（ｂ）は、クライアントエージェントとドライバとをドライバ配信クライアント４０００にインストールすることを示している。
図２（ｂ）において、破線の矢印（Flow1）は、管理サーバ１０００がドライバ配信クライアント４０００にクライアントエージェントをインストールすることを示している。
クライアントエージェントは、図１に示した第四サービスプログラム部４７１０であり、デバイス２０００がネットワークに参加する前に、ドライバ配信クライアント４０００にインストールされているものとする。
また、図２（ｂ）において、実線の矢印（Flow2）は、デバイス２０００がネットワークに参加したことによるユニキャストＵＰｎＰを受けて、管理サーバ１０００がドライバ配信クライアント４０００にドライバをインストールすることを示している。本実施形態におけるＰＵＳＨモードでは、ドライバ配信クライアント４０００にドライバの全てがインストールされる。
【００３１】
図３は、プリントサーバ５０００を用いる動作環境（プリントサーバモード）における印刷システムの動作の一例を概念的に示す図である。すなわち、図３では、ドライバ配信クライアント４０００からプリントサーバ５０００を経由してデバイス２０００に印刷の指示を行うプリントサーバ形態における印刷システムの動作の一例を示している。
図３（ａ）は、管理サーバ１０００、管理者クライアント３０００、ドライバ配信クライアント４０００、及びプリントサーバ５０００が通信回線６０００に接続されているネットワーク環境に、デバイス２０００が参加したことを示す。本実施形態では、管理サーバ１０００に対してユニキャストＵＰｎＰを行うための設定が、デバイス２０００の第二ＵＰｎＰ制御部２７２０に対して予め行われている。したがって、デバイス２０００の第二ＵＰｎＰ制御部２７２０は、デバイス２０００がネットワークに参加すると、ネットワーク参加メッセージ（例えばＷＳＤにおけるＨｅｌｌｏメッセージ）を、ユニキャストで管理サーバ１０００に対して発行する。
【００３２】
図３（ｂ）は、クライアントエージェントとドライバをドライバ配信クライアント４０００にインストールすること、プリントサーバエージェントをプリントサーバ５０００にインストールすること、及びポイントアンドプリントにより印刷を実行することを示す。
図３（ｂ）において、破線の矢印（Flow1）は、管理サーバ１０００が、ドライバ配信クライアント４０００、管理サーバ１０００に、夫々クライアントエージェント、プリントサーバエージェントをインストールすることを示している。
ここで、クライアントエージェント（第四サービスプログラム部４７１０）は、デバイス２０００がネットワークに参加する前に、ドライバ配信クライアント４０００にインストールされているものとする。また、プリントサーバエージェント（第五サービスプログラム部５７１０）も、デバイス２０００がネットワークに参加する前に、プリントサーバ５０００にインストールされているものとする。
【００３３】
また、図３（ｂ）において、実線の矢印（Flow2）は、デバイス２０００がネットワークに参加したことによるユニキャストＵＰｎＰを受けて、管理サーバ１０００がプリントサーバ５０００にドライバをインストールすることを示している。本実施形態におけるプリントサーバモードでは、デバイス２０００を動作させるためのドライバ（プリンタドライバ）のうち、少なくともスプールを行うためのドライバがプリントサーバ５０００にインストールされる。
更に、図３（ｂ）において、点線の矢印（Flow3）は、プリントサーバ５０００にインストールされたドライバを、ドライバ配信クライアント４０００がポイントアンドプリントにより利用することを示している。本実施形態におけるプリントサーバモードでは、デバイス２０００を動作させるためのドライバ（プリンタドライバ）のうち、少なくともＵＩドライバがドライバ配信クライアント４０００にインストールされる。
【００３４】
＜制御手順の概要＞
次に、図４のフローチャートを参照しながら、本実施形態の印刷システムにおける基本的な動作の一例を説明する。
まず、デバイス２０００は、ネットワーク（通信回線６０００）に接続すると、管理サーバ１０００に対して、ユニキャストでＵＰｎＰ（ユニキャストＵＰｎＰ）を行う。管理サーバ１０００は、これを受けて、デバイス２０００（ＵＰｎＰデバイス）を検知するためのＵＰｎＰデバイス検知処理を行う（ステップＳ１）。
【００３５】
次に、管理サーバ１０００は、ステップＳ１で検知したデバイス２０００に対する管理を行うためのＵＰｎＰデバイス管理処理を行う（ステップＳ２）。
次に、管理サーバ１０００は、ステップＳ１で検知したデバイス２０００に対応したドライバを検出する。そして、管理サーバ１０００は、ステップＳ１で検知したデバイス２０００と、検出したドライバとを自動的に関連付けるための自動関連付け処理を行う（ステップＳ３）。
【００３６】
次に、管理サーバ１０００は、ステップＳ１で検知したデバイス２０００のデバイス特性に基づいて、ドライバを配布すべきドライバ配信クライアント４０００に関わる情報を取得するためのドライバ配信クライアント情報取得処理を行う（ステップＳ４）。
次に、管理サーバ１０００は、ドライバ配信クライアント４０００からデバイス２０００への印刷に関する動作環境モードに関わる動作環境モード情報を取得するための動作環境モード情報取得処理を行う（ステップＳ５）。
次に、管理サーバ１０００は、動作環境モードに応じて、ドライバ配信クライアント４０００に対して、ステップＳ１で検知したデバイス２０００用のドライバをインストールするためのドライバインストール処理を行う（ステップＳ６）。
【００３７】
＜制御手順の詳細＞
次に、本実施形態の印刷システムにおける詳細な動作の一例を説明する。
まず、デバイス２０００がネットワーク（通信回線６０００）に参加する前に、デバイス特性とドライバ配信クライアント４０００及びプリントサーバ５０００とを関連付ける処理と、動作環境モードを設定する処理とを行う。
【００３８】
図５は、デバイス特性とドライバ配信クライアント４０００とを関連付ける際の管理サーバ１０００における動作の一例を説明するフローチャートである。
まず、管理者は、管理者クライアント３０００の第三表示部３１００、第三入力部３２００から、Ｗｅｂブラウザを介して、管理サーバ１０００の第一デバイス管理アプリケーション部１７１０にアクセスする。そうすると、第一ドライバ管理制御部１７１４は、第一デバイス管理アプリケーション部１７１０のメニューを第三表示部３１００に表示させる。そして、そのメニューの中から［デバイス特性とクライアント関連付け］メニューが、管理者によって選択される。そうすると、第一ドライバ管理制御部１７１４は、デバイス２０００の特性（デバイス特性）とクライアントとを関連付けるためのＵＩ画面を表示させる（ステップＳ１００）。
【００３９】
図６は、［デバイス特性とクライアント関連付け］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
図６に示すＵＩ画面６００では、メニューが左側の領域６０１に表示され、メニューに対応した内容が右側の領域６０２に表示される。管理者が、［デバイス特性とクライアント関連付け］メニューを選択すると、図６に示すように、右側の領域６０２に［デバイス特性の選択］の画面が表示される。
【００４０】
次に、第一ドライバ管理制御部１７１４は、［デバイス特性の選択］の画面に対する管理者による選定操作に基づいて、ドライバ配信クライアント４０００に関連付けるデバイス２０００の特性を入力する（ステップＳ１１０）。
本実施形態では、図６に示す通り、デバイス２０００の特性として、ＩＰアドレス、カラー印刷、印刷速度、及びフィニッシング−製本機能があり、夫々のデバイス２０００の特性に対して、次のように選定することができる。
【００４１】
デバイス２０００のＩＰアドレス特性とは、ＵＰｎＰ機能を有するＵＰｎＰデバイス２０００自体のＩＰアドレスを意味する。図６に示す例では、ＩＰアドレスが、"aaa.bbb.ccc.100"から"aaa.bbb.ccc.110"までの範囲のＩＰアドレスを持つＵＰｎＰデバイス２０００を対象とする。
デバイス２０００のカラー印刷特性とは、ＵＰｎＰデバイス２０００が、カラー印刷（とモノクロ印刷との両方）が可能であることと、モノクロ印刷のみが可能であることとの何れかを意味する。図６に示す例では、カラー印刷が可能であるＵＰｎＰデバイス２０００を対象とする。
【００４２】
デバイス２０００の印刷速度特性とは、ＵＰｎＰデバイス２０００の印刷速度能力を意味する。図６に示す例では、印刷速度が、４０ｐｐｍ以上のＵＰｎＰデバイス２０００を対象とする。
デバイス２０００のフィニッシング−製本機能特性とは、ＵＰｎＰデバイス２０００のフィニッシングの一つとして製本機能がある場合に、それを条件とするか否かを意味する。図６に示す例では、ＵＰｎＰデバイス２０００のフィニッシングの一つとして製本機能があることを条件としないことを意味する。
【００４３】
尚、これらはデバイス２０００の特性の一例である。管理サーバ１０００とデバイス２０００との間でのＵＰｎＰ時のデバイスメタデータのやりとりで取得できる情報であれば、様々な項目をデバイス２０００の特性として利用できる。
例えば、前述したもの他に、ＰＤＬ（ページ記述言語、例えばＰＣＬやＰＳ等）やデバイスの仕向け（日本、米国、英国等）等をデバイス２０００の特性とすることができる。
【００４４】
次に、図６に示すＵＩ画面６００の［次へ］ボタン６０３が押下されると、第一ドライバ管理制御部１７１４は、次の処理を行う。すなわち、第一ドライバ管理制御部１７１４は、ＵＩ画面６００で設定されたデバイス２０００の特性と関連付けるドライバ配信クライアント４０００を選択するためのＵＩ画面を表示する（ステップＳ１２０）。
図７は、デバイス特性（デバイス２０００の特性）と関連付けるドライバ配信クライアント４０００を選択するためのＵＩ画面の一例を示す図である。
【００４５】
図７に示すＵＩ画面７００に表示されるクライアント一覧７０１は、ドライバ配信クライアント４０００の一覧であり、その内容は、クライアント探索、又はＣＳＶファイル等のエクスポートにより第一情報保管部１７１５に予め記憶されているものとする。
また、図７に示す例では、ツリーの任意クライアントグループに所属しているドライバ配信クライアント４０００を選択しているが、クライアント単位ではなく、クライアントグループ単位でドライバ配信クライアント４０００を選択することも可能である。
【００４６】
図８は、第一情報保管部１７１５に予め記憶されている"ドライバ配信クライアント４０００に関するテーブル"の一例を概念的に示す図である。
図８に示すテーブル８００は、クライアントＩＤ、ＯＳ名称、ＩＰアドレス、及び所属グループから構成されている。
図７に示す例では、デバイス２０００の特性と関連付けるドライバ配信クライアント４０００として、クライアントグループ「グループ１のサブグループ１」に属する「CLIENT00」、「CLIENT02」が選択されていることを示す。
次に、図７に示すＵＩ画面７００の［次へ］ボタン７０２が押下されると、管理サーバ１０００は、図６及び図７に示したＵＩ画面６００、７００の選択内容の確認と登録とを行うためのＵＩ画面を表示する（ステップＳ１３０）。
【００４７】
図９は、図６及び図７に示したＵＩ画面６００、７００の選択内容の確認と登録とを行うためのＵＩ画面の一例を示す図である。
図９に示すＵＩ画面９００の［登録］ボタン９０１が押下されると、第一ドライバ管理制御部１７１４は、図６及び図７に示したＵＩ画面６００、７００の設定内容を、第一情報保管部１７１５へ記憶する。
図１０〜図１３は、図６に示したＵＩ画面６００の設定内容を記憶するテーブルの例を示す図である。また、図１４は、図７に示したＵＩ画面７００の設定内容を記憶するテーブルの一例を示す図である。図１５は、デバイス特性（デバイス２０００の特性）とドライバ配信クライアント４０００とを関連付けて記憶するテーブルの一例を示す図である。これらのテーブル１１０〜１１５が、ステップＳ１３０で第一情報保管部１７１５に記憶される。
【００４８】
図１０〜図１５に示す例では、図１５に示すテーブル１１５がメインテーブルとなる。図１５に示すテーブル１１５は、デバイス特性ＩＤと選択クライアントＩＤとを互いに関連付けて記憶する。このデバイス特性ＩＤの内容は、図１０〜図１３に示すテーブル１１０〜１１３に記憶され、選択クライアントＩＤの内容は、図１４に示すテーブル１１４に記憶される。
【００４９】
例えば、図１５におけるデバイス特性ＩＤ「SelectedDevAttr-1」は、選択クライアントＩＤ「SelectedClients-1」と関連付けられている。つまり、検知したデバイス２０００の特性が「SelectedDevAttr-1」の内容に合致するとする。そうすると、そのデバイス２０００に対応したドライバは、選択クライアントＩＤ「SelectedClients-1」のドライバ配信クライアント４０００にインストールされる。
デバイス特性ＩＤ「SelectedDevAttr-1」は、図１０に示す通り、デバイス特性ＩＤ、ＩＰアドレスＩＤ、カラー印刷、印刷速度ＩＤ、及びフィニッシングＩＤ等のカラムから構成される。これらＩＰアドレスＩＤ、印刷速度ＩＤ、及びフィニッシングＩＤの詳細は、夫々図１１〜１３に示すテーブル１１１〜１１３に記憶される。
【００５０】
図１１は、図１０に示すテーブル１１０に記憶されているＩＰアドレスＩＤに対応するサブテーブルの一例を示す図である。
図１０に示すテーブル１１０では、デバイス特性ＩＤ「SelectedDevAttr-1」に対応するＩＰアドレスＩＤとして、「IPID-1」が記憶されている。そして、図１１に示すテーブル１１１では、ＩＰアドレスＩＤ「IPID-1」に対応するＩＰアドレスとして、「aaa.bbb.ccc.100」から「aaa.bbb.ccc.110」までのＩＰアドレスが記憶されている。
【００５１】
図１２は、図１０に示すテーブル１１０に記憶されている印刷速度ＩＤに対応するサブテーブルの一例を示す図である。
図１０に示すテーブル１１０では、デバイスＩＤ「SelectedDevAttr-1」に対応する印刷速度ＩＤとして、「PVID-1」が記憶されている。そして、図１２に示すテーブル１１２では、印刷速度ＩＤ「PVID-1」に対応する印刷速度として、印刷速度特性が「４０」、条件特性が「ｐｐｍ以上」という印刷速度が記憶されている。
【００５２】
図１３は、図１０に示すテーブル１１０に記憶されているフィニッシングＩＤに対応するサブテーブルの一例を示す図である。
図１０に示すテーブル１１０では、デバイスＩＤ「SelectedDevAttr-1」に対応するフィニッシングＩＤとして、「OFF」が記憶されている。この場合、フィニッシング特性は使用しないことになる。
一方、図１０に示すデバイスＩＤにおいて、「SelectedDevAttr-2」のフィニッシングＩＤは、「FinID-1」である。よって、図１３に示すテーブル１１３では、このフィニッシングＩＤ「FinID-1」に対応するフィニッシング特性として、製本機能が記憶される。
【００５３】
図１４は、図１５に示すテーブル１１５の選択クライアントＩＤに対応するサブテーブルの一例を示す図である。
図１４に示すテーブル１１４では、選択クライアントＩＤ「SelectedClients-1」に対応するドライバ配信クライアント４０００として、「CLIENT00」と「CLIENT02」とが記憶されている。また、これら「CLIENT00」と「CLIENT02」の詳細は、図８に示したテーブル８００に記憶されている。
【００５４】
本実施形態では、以上のようにしてデバイス２０００の特性とドライバ配信クライアント４０００とを予め関連付けることに加え、デバイス２０００の特性とプリントサーバ５０００も図５のフローチャートに類似する処理を行って予め関連付けるようにしている。
この場合、管理者は、前述した第一デバイス管理アプリケーション部１７１０のメニューの中から、［デバイス特性とプリントサーバ関連付け］メニューを選択する。そうすると、第一ドライバ管理制御部１７１４は、デバイス２０００の特性（デバイス特性）とプリントサーバ５０００とを関連付けるためのＵＩ画面を表示する。
【００５５】
図１６は、［デバイス特性とプリントサーバ関連付け］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
図１６に示すＵＩ画面１６０も、図６に示した画面６００と同様に、メニューが左側の領域１６１に表示され、メニューに対応した内容が右側の領域１６２に表示される。
【００５６】
次に、第一ドライバ管理制御部１７１４は、［デバイス特性の選択］の画面に対する管理者による選定操作に基づいて、プリントサーバ５０００に関連付けるデバイス２０００の特性を入力する。図１６に示した例では、図６に示した例と同様に、デバイス２０００の特性として、ＩＰアドレス、カラー印刷、印刷速度、及びフィニッシング−製本機能が選択される。
【００５７】
次に、図１６に示すＵＩ画面１６０の［次へ］ボタン１６３が押下されると、第一ドライバ管理制御部１７１４は、ＵＩ画面１６０で設定されたデバイス２０００の特性と関連付けるプリントサーバ５０００を選択するためのＵＩ画面を表示する。
図１７は、デバイス特性（デバイス２０００の特性）と関連付けるプリントサーバ５０００を選択するためのＵＩ画面の一例を示す図である。
図１７に示すＵＩ画面１７０に表示されるプリントサーバ一覧１７１は、プリントサーバ５０００の一覧であり、その内容は、サーバ探索、又はＣＳＶファイル等のエクスポートにより第一情報保管部１７１５に予め記憶されているものとする。
また、図１７に示す例では、プリントサーバ５０００を個別に選択しているが、サーバ単位ではなく、サーバグループ単位でプリントサーバ５０００を選択することも可能である。
尚、第一情報保管部１７１５に予め記憶されている"プリントサーバ５０００に関するテーブル"は、図１０〜図１５に示したテーブル１１０〜１１５と同様のものとなる。ただし、図１４及び図１５における選択クライアントＩＤは選択プリントサーバＩＤになり、図１４における選択クライアントは選択プリントサーバになる。
【００５８】
図１８は、図１６及び図１７に示したＵＩ画面１６０、１７０の選択内容の確認と登録とを行うためのＵＩ画面の一例を示す。
図１８に示すＵＩ画面１８０は、図１７に示すＵＩ画面１７０の［次へ］ボタン１７２が押下されると表示される。そして、ＵＩ画面１８０の［登録］ボタン１８１が押下されると、第一ドライバ管理制御部１７１４は、図１６及び図１７に示したＵＩ画面１６０、１７０の設定内容を、第一情報保管部１７１５へ記憶する。
本実施形態では、以上のようにして、デバイス２０００の特性と、プリントサーバ５０００とを予め関連付けるようにしている。
以上のように本実施形態では、少なくとも図５のフローチャートを実行することにより、登録手段が実現される。
【００５９】
次に、図１９のフローチャートを参照しながら、ドライバ配信クライアント４０００からデバイス２０００への印刷に関する動作環境モードであるかを設定する際の管理サーバ１０００における動作の一例を説明する。
まず、管理者は、管理者クライアント３０００の第三表示部３１００、第三入力部３２００から、Ｗｅｂブラウザを介して、管理サーバ１０００の第一デバイス管理アプリケーション部１７１０にアクセスする。そうすると、第一ドライバ管理制御部１７１４は、第一デバイス管理アプリケーション部１７１０のメニューを第三表示部３１００に表示させる。そして、そのメニューの中から［動作環境モード］メニューが、管理者によって選択される。そうすると、第一ドライバ管理制御部１７１４は、動作環境を設定するためのＵＩ画面を表示させる。（ステップＳ２００）
【００６０】
図２０は、［動作環境モード］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
図２０に示すＵＩ画面２００では、メニューが左側の領域２０１に表示され、メニューに対応した内容が右側の領域２０２に表示される。管理者が、［動作環境モード］メニューを選択すると、図２０に示すように、右側の領域２０２に［動作環境モードの設定］の画面が表示される。
【００６１】
次に、第一ドライバ管理制御部１７１４は、［動作環境モードの設定］の画面に対する管理者による選定操作に基づいて、ドライバ配信クライアント４０００からデバイス２０００への印刷に関する動作環境モードを入力する（ステップＳ２１０）。
本実施形態では、動作環境モードとしては、「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」と「プリントサーバモード」とがある。管理者は、例えば「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」を選択し[登録]ボタンを押下する。
「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」は、図２に示した印刷のための動作環境で動作するモードである。
このＰＵＳＨモードは、ドライバ配信クライアント４０００のドライバを利用して印刷データを形成し、ネットワーク（通信回線６０００）を経由して直接ＬＰＲポート等を利用してデバイス２０００にて印刷を実現する環境である。また、このＰＵＳＨモードで動作するために、ドライバ配信クライアント４０００に、クライアントエージェントである第四サービスプログラム部４７１０が存在する。このクライアントエージェントは、第一ドライバ管理制御部１７１４と通信を行い、第一ドライバ保管部１７１６からドライバを取得し、インストールする。
【００６２】
一方、「プリントサーバモード」は、図３に示した印刷のための動作環境である。
このプリントサーバモードでは、ドライバ配信クライアント４０００からデバイス２０００への印刷は、プリントサーバ５０００を経由して行われる、所謂プリントサーバ印刷環境で動作するモードである。また、このプリントモードで動作するために、プリントサーバ５０００に、プリントサーバエージェントである第五サービスプログラム部５７１０が存在する。このプリントサーバエージェントは、第一ドライバ管理制御部１７１４と通信を行い、第一ドライバ保管部１７１６からドライバを取得しインストールする。
そして、ドライバ配信クライアント４０００は、プリントサーバ５０００にインストールされているドライバをポイントアンドプリント技術により、ドライバを利用し、デバイス２０００への印刷を実現する。
【００６３】
次に、第一ドライバ管理制御部１７１４は、ステップＳ２１０で入力した動作環境モードの情報を、第一情報保管部１７１５へ記憶する（ステップＳ２２０）。
図２１は、第一情報保管部１７１５に、動作環境モードの情報を記憶するためのテーブルの一例を示す図である。図２１に示すテーブル２１０では、図２０に示すＵＩ画面２００において、ＰＵＳＨモードが選択された場合を例に挙げて示している。
【００６４】
以上により、前述した例では、デバイス特性として、以下の内容が選択されたことになる（図１０〜図１３を参照）。
ＩＰアドレス特性：aaa.bbb.ccc.100からaaa.bbb.ccc.110までの範囲
カラー印刷特性：可能
印刷速度特性：４０ｐｐｍ以上
そして、このようなＵＰｎＰデバイス２０００を検知した場合には、CLIENT00、CLIENT02のドライバ配信クライアント４０００に、ＰＵＳＨモードの動作環境モードで、ドライバをインストールすることとなる（図１４、図１５、図２０を参照）。
以上のように本実施形態では、少なくとも図１９のフローチャートを実行することにより、設定手段が実現される。
【００６５】
次に、図２２のフローチャートを参照しながら、本実施形態の印刷システムにおける詳細な動作の一例を説明する。
まず、図１のステップＳ１のＵＰｎＰデバイス検知処理の詳細について説明する。
デバイス２０００がネットワークに接続されると、第二ＵＰｎＰ制御部２７２０は、ネットワーク（通信回線６０００）に対して、ネットワーク参加を意味するネットワーク参加メッセージを、ユニキャストで管理サーバ１０００へ発行する（ステップＳ３００）。本実施形態では、ネットワーク参加メッセージとして、ＷＳＤに既定されているＨｅｌｌｏメッセージをユニキャストで管理サーバ１０００へ発行する。このように、デバイス２０００は、Ｈｅｌｌｏメッセージを管理サーバ１０００に対してのみ送信する。
【００６６】
管理サーバ１０００の第一デバイス管理制御部１７１２は、第一ＵＰｎＰ制御部１７２０を介して受信したメッセージがＨｅｌｌｏメッセージであるか否かを判定する（ステップＳ３０１）。この判定の結果、受信したメッセージがＨｅｌｌｏメッセージでなければ、図２２のフローチャートによる処理を終了する。一方、受信したメッセージがＨｅｌｌｏメッセージであれば、ステップＳ３０２に進む。このように本実施形態では、少なくともステップＳ３０１の処理を行うことによって受信手段が実現される。
【００６７】
そして、第一デバイス管理制御部１７１２は、第二ＵＰｎＰ制御部２７２０と第一ＵＰｎＰ制御部１７２０とを介して、ネットワーク参加メッセージに対する応答メッセージをデバイス２０００に発行する（ステップＳ３０２）。この応答メッセージの発行は、デバイスメタデータを取得するために行われる。ここでは、ＷＳＤに既定されているGetMetadataメッセージを、応答メッセージとして発行する。
【００６８】
そして、第一デバイス管理制御部１７１２は、第二ＵＰｎＰ制御部２７２０と第一ＵＰｎＰ制御部１７２０とを介して、デバイス２０００により発行されたGetMetadataメッセージを取得するまで待機する（ステップＳ３０３）。
そして、第二ＵＰｎＰ制御部２７２０は、GetMetadataメッセージを取得すると、ネットワーク（通信回線６０００）を介して、管理サーバ１０００にMetadata（デバイスメタデータ）を発行する。前述したように、Metadata（デバイスメタデータ）には、デバイス２０００の特性を示すデータと、デバイス２０００のドライバに関するデータとが含まれる。
以上のステップＳ３００〜Ｓ３０４が、図１のステップＳ１のＵＰｎＰデバイス検知処理の詳細である。
【００６９】
次に、図１のステップＳ２のＵＰｎＰデバイス管理処理の詳細について説明する。
第一デバイス管理制御部１７１２は、ステップＳ３０４で発行されたMetadataを取得する。そして、第一デバイス管理制御部１７１２は、取得したMetadataに基づいて、ステップＳ３０１で検知したデバイス２０００が、ＵＰｎＰによる管理対象のデバイスであるか否かを判定する（ステップＳ３０５）。本実施形態では、検知したデバイス２０００が、印刷機能を有するデバイスであり、且つＵＰｎＰによる管理対象のベンダーのデバイスであるか否かを、取得したMetadataに基づいて判断することにより、このステップＳ３０５の判定を行う。このように本実施形態では、少なくともステップＳ３０５の処理を行うことにより、第２の受信手段が実現される。
この判定の結果、通信相手のデバイス２０００が、ＵＰｎＰによる管理対象のデバイスでない場合には、図２２のフローチャートによる処理を終了する。一方、通信相手のデバイス２０００が、ＵＰｎＰによる管理対象のデバイスである場合には、ステップＳ３０６に進む。
【００７０】
次に、第一デバイス管理制御部１７１２は、取得したMetadataから、ドライバの配信に必要な"デバイス２０００の特性を示す情報"を第一情報保管部１７１５に記憶する（ステップＳ３０６）。尚、以下の説明では、デバイス２０００の特性を示す情報を、必要に応じてデバイス特性情報と称する。
ここでは、デバイス番号「Dev-1」という印刷機能を有するデバイス２０００を検知し、そのMetadataを取得したところ、以下の内容を含むデバイス特性情報が得られたとする。
Ｍａｃアドレス：AA-BB-CC-DD-EE-01
ＵＰｎＰＩＤ：ＵＰｎＰ＿4E0F
ＩＰアドレス：aaa.bbb.ccc.101
カラー印刷：COLOR
印刷速度：４０
フィニッシング機能：None
【００７１】
ここで、カラー印刷「COLOR」とは、検知したデバイス２０００がカラー印刷機能を有することを意味する。また、印刷速度「４０」とは、検知したデバイス２０００の印刷速度が４０ｐｐｍであることを意味する。更にフィニッシング機能「None」とは、検知したデバイス２０００が、フィニッシング機能を有していない通常の排紙口機能のみであることを意味する。
【００７２】
図２３は、第一情報保管部１７１５にデバイス特性情報を記憶するためのテーブルの一例を概念的に示す図である。
図２３に示すテーブル２３０には、ＵＰｎＰデバイス２０００に関する情報として、Ｍａｃアドレス、ＵＰｎＰＩＤ、ＩＰアドレス、カラー印刷の有無、印刷速度、及びフィニッシング機能が、互いに関連付けられて登録される。
尚、Ｍａｃアドレスは、同じ種類のデバイス区別のために用いられるものである。
更に、ＵＰｎＰＩＤは、ドライバのＩＮＦに記述されるユニバーサルプラグアンドプレイ用のＩＤを意味する。すなわち、ＵＰｎＰＩＤが分かれば、ドライバのＩＮＦを検証することにより、対応するドライバであるか否かが判断できる。
【００７３】
次に、第一デバイス管理制御部１７１２は、第一ドライバ管理制御部１７１４に対して、ＵＰｎＰデバイス２０００を検知し、第一情報保管部１７１５に、デバイス特性情報を記憶したことを通知する（ステップＳ３０７）。
この通知には、Ｗｅｂサービス等の通信方式を採ることができる。また、通知を行わずに、デバイス特性情報が、ファイルに記述されたり、データベースに保存されたりしたことを第一ドライバ管理制御部１７１４が定期的に監視することも可能である。
以上のステップＳ３０５〜Ｓ３０７が、図１のステップＳ２のＵＰｎＰデバイス管理処理の詳細である。
【００７４】
次に、図１のステップＳ３のＵＰｎＰデバイスとドライバの自動関連付け処理の詳細について説明する。
第一ドライバ管理制御部１７１４は、第一情報保管部１７１５にアクセスし、ドライバを特定するためのデバイス特性情報が存在するか否かを判定する（ステップＳ３０８）。この判定の結果、ドライバを特定するためのデバイス特性情報が存在しない場合には、図２２のフローチャートによる処理を終了する。一方、ドライバを特定するためのデバイス特性情報が存在する場合には、ステップＳ３０９に進む。
ここでは、先のステップＳ３０６で記憶されたデバイス特性情報（図２３を参照）の中のＵＰｎＰＩＤとして「UPnP＿4E0F」を取得したものとする。
【００７５】
次に、第一ドライバ管理制御部１７１４は、第一ドライバ保管部１７１６にアクセスし、ステップＳ３０６にて取得したＵＰｎＰＩＤと合致するドライバが存在するか否かを判定する（ステップＳ３０９）。この判定の結果、ステップＳ３０６にて取得したＵＰｎＰＩＤと合致するドライバが存在しない場合には、図２２のフローチャートによる処理を終了する。一方、ステップＳ３０６にて取得したＵＰｎＰＩＤと合致するドライバが存在する場合には、ステップＳ３１０に進む。
図２４は、第一ドライバ保管部１７１６にドライバの情報を記憶するためのテーブルの一例を概念的に示す図である。
図２４に示すテーブル２４０には、ドライバＩＤとＵＰｎＰＩＤとが互いに関連付けられて登録されている。
【００７６】
前述した例では、ステップＳ３０９において、第一ドライバ管理制御部１７１４は、DRIVER00が合致したドライバであると判断する（図２３及び図２４を参照）。
この場合、ＵＰｎＰＩＤが「UPnP＿4E0F」のデバイス２０００である"デバイス番号が「Dev-1」のデバイス２０００と、ドライバＩＤが「DRIVER00」であるドライバとが関係付けられる（図２３及び図２４を参照）。そこで、第一ドライバ管理制御部１７１４は、デバイス番号が「Dev-1」のデバイス２０００と、ドライバＩＤが「DRIVER00」であるドライバとを関連付けて第一情報保管部１７１５に記憶する（ステップＳ３１０）。
図２５は、第一情報保管部１７１５に、デバイス２０００とドライバとを関連付けて記憶するためのテーブルの一例を示す図である。
図２５に示すテーブル２５０には、関連付けＩＤ、デバイス番号、及びドライバＩＤが互いに関連付けられて登録されている。具体的に、図２５に示すテーブル２５０において、関連付けＩＤ「Connect-01」には、デバイス番号「Dev-1」とドライバＩＤ「DRIVER00」とが関連付けられている。
このように本実施形態では、少なくともステップＳ３１０の処理を行うことにより、関連付け手段が実現される。
以上のステップＳ３０８〜Ｓ３１０が、図１のステップＳ３のＵＰｎＰデバイスとドライバの自動関連付け処理の詳細である。
【００７７】
次に、図１のステップＳ４のドライバ配信クライアント情報取得処理の詳細について説明する。
第一ドライバ管理制御部１７１４は、第一情報保管部１７１５に記憶されているテーブル１１０へアクセスする（図１０を参照）。そして、第一ドライバ管理制御部１７１４は、図２３に示したテーブル２３０のデバイス特性情報と合致するデバイス特性ＩＤが存在し、且つそのデバイス特性ＩＤに関連付いた選択クライアントＩＤがするか否かを判定する（ステップＳ３１１）。この判定の結果、テーブル２３０のデバイス特性情報と合致するデバイス特性ＩＤと、そのデバイス特性ＩＤに関連付いた選択クライアントＩＤとが存在しない場合には、図２２のフローチャートによる処理を終了する。一方、テーブル２３０のデバイス特性情報と合致するデバイス特性ＩＤと、そのデバイス特性ＩＤに関連付いた選択クライアントＩＤとが存在する場合には、ステップＳ３１２に進む。
前述した例では、図２３に示したテーブル２３０のデバイス特性情報は、図１１〜１３に示したテーブル１１１〜１１３の内容を持つデバイス特性ＩＤ「SelectedDevAttr-1」と合致する。
【００７８】
更に、第一ドライバ管理制御部１７１４は、図１５に示したテーブル１１５へアクセスし、テーブル２３０のデバイス特性情報と合致すると判定されたデバイス特性ＩＤに関連付けられた選択クライアントＩＤを検出する（ステップＳ３１２）。前述した例では、ステップＳ３１１で合致すると判定されたデバイス特性ＩＤ「SelectedDevAttr-1」に関連付けられた選択クライアントＩＤとして「SelectedClients-1」が検出される。
更に、第一ドライバ管理制御部１７１４は、図１４に示したテーブル１１４にアクセスし、検出した選択クライアントＩＤに関連付けられた選択クライアントを検出する（ステップＳ３１３）。前述した例では、検出した選択クライアントＩＤ「SelectedClients-1」から、「CLIENT00」と「CLIENT02」が、ドライバの配布先のクライアントであることを検出する。
以上のステップＳ３１１〜Ｓ３１３が、図１のステップＳ４のドライバ配信クライアント情報取得処理の詳細である。
【００７９】
次に、図１のステップＳ５の動作環境モード情報取得処理の詳細について説明する。
第一ドライバ管理制御部１７１４は、図２１に示したテーブル２１０へアクセスし、動作環境モードの値を取得する。そして、第一ドライバ管理制御部１７１４は、動作環境モードを判定する（ステップＳ３１４）。この判定の結果、動作環境モードが、「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」である場合には、図２２−２のステップＳ４００に進む。また、動作環境モードが、「プリントサーバモード」である場合には、図２２−３のステップＳ５００に進む。また、動作環境モードが、「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」でも「プリントサーバモード」でもない場合には、図２２のフローチャートによる処理を終了する。このように本実施形態では、少なくともステップＳ３１４の処理を行うことにより、判定手段が実現され、ＰＵＳＨ（Ａｇｅｎｔ有り）モードにより第１のモードが実現され、プリントサーバモードにより第２のモードが実現される。
【００８０】
次に、図１のステップＳ６のドライバインストール処理の詳細について説明する。
まず、動作環境モードが「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」である場合のドライバインストール処理について説明する。
第一ドライバ管理制御部１７１４は、選択クライアントと、ドライバＩＤと、デバイス番号のＩＰアドレス情報とを含む即時実行タスク（ドライバ配信タスク）を生成する(ステップＳ４００)。前述した例では、選択クライアント「CLIENT00」、「CLIENT02」と、ドライバＩＤ「DRIVER00」と、デバイス番号「Dev-1」のＩＰアドレス情報とを備えて構成される即時実行タスクを生成する。
【００８１】
次に、第一ドライバ管理制御部１７１４は、生成した即時実行タスクを第一タスク管理制御部１７１３へ登録する（ステップＳ４０１）。
次に、第一タスク管理制御部１７１３は、登録したタスクが即時実行であるので、登録したタスクを第一ドライバ管理制御部１７１４へ通達する。そして、第一ドライバ管理制御部１７１４は、通達されたタスクを実行する（ステップＳ４０２）。前述した例では、第一ドライバ管理制御部１７１４は、選択クライアント「CLIENT00」、「CLIENT02」に対応するドライバ配信クライアント４０００の夫々の第四サービスプログラム部４７１０に対して、ドライバインストール処理を指示する。このように本実施形態では、少なくともステップＳ４０２の処理を行うことにより、インストール手段が実現される。
【００８２】
第四サービスプログラム部４７１０は、タスクで指定されているドライバＩＤと、ＩＰアドレス情報とを取得し、ドライバのインストール処理を行う（ステップＳ４０３）。前述した例では、第四サービスプログラム部４７１０は、ドライバＩＤ「DRIVER00」と、デバイス番号「Dev-1」のＩＰアドレス情報とを取得し、ドライバのインストール処理を行う。
次に、第四サービスプログラム部４７１０は、ドライバのインストール結果を第一ドライバ管理制御部１７１４へ通知する（ステップＳ４０４）。
最後に、第一ドライバ管理制御部１７１４は、受信した"ドライバのインストール結果"を第一タスク管理制御部１７１３へ通達する。第一タスク管理制御部１７１３は、第一情報保管部１７１５へアクセスし、ドライバのインストール結果を保存する（ステップＳ４０５）。
【００８３】
ここで、管理者が、ステップＳ４０５の保存結果を知るために、第三入力部３２００と第三表示部３１００とから、管理サーバ１０００へアクセスする。そうすると、管理者は、ドライバのインストール結果を所定のＵＩ画面から知ることができる。
【００８４】
一方、先のステップＳ３１０において、動作環境モードが「プリントサーバモード」であると判定された場合のドライバインストール処理について説明する。
動作環境モードが「プリントサーバモード」であるとは、先の図１９のステップＳ２１０において、図２０のＵＩ画面２００で「プリントサーバモード」が選択され、同じくステップＳ２２０において、図２１のテーブル２１０にその値を記憶したことを意味する。
【００８５】
第一ドライバ管理制御部１７１４は、ステップＳ３１４までに確定したドライバＩＤと、デバイス番号のＩＰアドレス情報とを含む即時実行タスクを生成する(ステップＳ５００)。前述した例では、ドライバＩＤ「DRIVER00」と、デバイス番号「Dev-1」のＩＰアドレス情報とを備えて構成される即時実行タスクを生成する。
次に、第一ドライバ管理制御部１７１４は、生成した即時実行タスクを第一タスク管理制御部１７１３へ登録する（ステップＳ５０１）。
次に、第一タスク管理制御部１７１３は、登録されたタスクが即時実行であるので、登録したタスクを第一ドライバ管理制御部１７１４へ通達する。そして、第一ドライバ管理制御部１７１４は、通達されたタスクを実行する（ステップＳ５０２）。すなわち、第一ドライバ管理制御部１７１４は、プリントサーバ５０００の第五サービスプログラム部５７１０とＷｅｂサービス通信を行い、ドライバインストール処理を促す。このように本実施形態では、少なくともステップＳ５０２の処理を行うことにより、インストール手段が実現される。
【００８６】
第五サービスプログラム部５７１０は、タスクで指定されているドライバＩＤと、ＩＰアドレス情報とを取得し、ドライバのインストール処理を行う（ステップＳ５０３）。前述した例では、第五サービスプログラム部５７１０は、ドライバＩＤ「DRIVER00」と、デバイス番号「Dev-1」のＩＰアドレス情報とを取得し、ドライバのインストール処理を行う。このとき、インストールしたドライバを、該当するドライバ配信クライアント４０００（「CLIENT00」、「CLIENT02」）がポイントアンドプリントで利用できるようにするための共有設定処理等を行う。
【００８７】
次に、第五サービスプログラム部５７１０は、ドライバのインストール結果を第一ドライバ管理制御部１７１４に通知する（ステップＳ５０４）。
次に、第一ドライバ管理制御部１７１４は、受信した"ドライバのインストール結果"を第一タスク管理制御部１７１３へ通達する。そして、第一タスク管理制御部１７１３は、第一情報保管部１７１５へアクセスし、ドライバのインストール結果を保存する（ステップＳ５０５）。
ここで、管理者が、ステップＳ５０５の保存結果を知るために、第三入力部３２００と第三表示部３１００とから、管理サーバ１０００へアクセスする。そうすると、管理者は、ドライバのインストール結果を所定のＵＩ画面から知ることができる。
【００８８】
次に、第一ドライバ管理制御部１７１４は、先のステップＳ５０５において、プリントサーバ５０００へのドライバのインストールが成功したか否かを判定する（ステップＳ５０６）。この判定の結果、プリントサーバ５０００へのドライバのインストールが成功していない場合には、図２２のフローチャートによる処理を終了する。一方、プリントサーバ５０００へのドライバのインストールが成功し他場合には、ステップＳ５０７に進む。
【００８９】
次に、第一ドライバ管理制御部１７１４は、選択クライアントに対応するドライバ配信クライアント４０００の第四サービスプログラム部４７１０に対して、プリントサーバ５０００の利用指示を、Ｗｅｂサービスを介して行う（ステップＳ５０７）。前述した例では、選択クライアント「CLIENT00」、「CLIENT02」に対応する第四サービスプログラム部４７１０に対して、プリントサーバ５０００の利用指示を、Ｗｅｂサービスを介して行う。このときの指示には、利用すべきプリントサーバ５０００の共有名情報や、プリントサーバ５０００のＩＰアドレス等のロケーションを特定できる情報が含まれる。
【００９０】
次に、第四サービスプログラム部４７１０は、すでにインストールされているドライバの情報を取得する（ステップＳ５０８）。
次に、第四サービスプログラム部４７１０は、利用を指示されたプリントサーバ５０００の共有プリンタと同一のドライバが、ピアトゥピア接続、すなわちＬＰＲ接続により、すでに利用されているか否かを判定する（ステップＳ５０９）。この判定の結果、プリントサーバ５０００の共有プリンタと同一のドライバが、ピアトゥピア接続により、すでに利用されている場合には、ステップＳ５１０に進み、そうでない場合には、ステップＳ５１０を省略してステップＳ５１１に進む。
【００９１】
ステップＳ５１０に進むと、第四サービスプログラム部４７１０は、ピアトゥピア接続されているデバイス２０００に対応するプリンタ及びＬＰＲポート情報を削除して、ピアトゥピア接続を解除する（ステップＳ５１０）。前述した例では、第四サービスプログラム部４７１０は、デバイス番号「Dev-1」のデバイス２０００に対応するプリンタ及びＬＰＲポート情報を削除する。
【００９２】
次に、第四サービスプログラム部４７１０は、プリントサーバ５０００のデバイス２０００に対するポイントアンドプリントを自動的に設定（すなわちサイレント設定）できるか否かを判定する（ステップＳ５１１）。前述した例では、プリントサーバ５０００の"デバイス番号「Dev-1」のデバイス２０００"に対するポイントアンドプリントを自動的に設定できるか否かを判定する。ここで、自動的にポイントアンドプリントが可能か否かは、ドライバ配信クライアント４０００のＯＳの能力に依存する。
この判定の結果、プリントサーバ５０００のデバイス２０００に対するポイントアンドプリントを自動的に設定できる場合には、ステップＳ５１２に進み、そうでない場合には、ステップＳ５１３に進む。
【００９３】
ステップＳ５１２に進むと、第四サービスプログラム部４７１０は、ポイントアンドプリントの設定をサイレントにて実行する（ステップＳ５１２）。
一方、ステップＳ５１３に進むと、第四サービスプログラム部４７１０は、ドライバ配信クライアント４０００の第四表示部４１００に、メッセージボックスやバルーンメッセージなどを表示する（ステップＳ５１３）。このメッセージボックスやバルーンメッセージには、プリントサーバ５０００の"デバイス番号「Dev-1」のデバイス２０００"に対するハイパーリンク情報等を示し、手動のポイントアンドプリントの実行をドライバ配信クライアント４０００のユーザに促す。そして、第四サービスプログラム部４７１０は、ユーザの操作に基づいて、ポイントアンドプリントの設定を実行する。
【００９４】
次に、第四サービスプログラム部４７１０は、ドライバのインストール結果を第一ドライバ管理制御部１７１４へ通知する（ステップＳ５１４）。
このとき、ステップＳ５１３での手動によるポイントアンドプリント設定処理が行われた場合には、ポイントアンドプリントに関する設定を促すメッセージボックスやバルーンメッセージを表示したことにより、ドライバのインストールが成功したと判断する。
【００９５】
次に、第四サービスプログラム部４７１０は、ドライバのインストール結果を第一タスク管理制御部１７１３へ通知する。そして、第一タスク管理制御部１７１３は、第一情報保管部１７１５へアクセスし、ドライバのインストール結果を保存する（ステップＳ５１５）。そして、図２２のフローチャートによる処理を終了する。
【００９６】
ここで、管理者が、ステップＳ４０５の保存結果を知るために、第三入力部３２００と第三表示部３１００とから、管理サーバ１０００へアクセスする。そうすると、管理者は、ドライバのインストール結果を所定のＵＩ画面から知ることができる。
ここで、管理者が、ステップＳ５１５の保存結果を知るためには、第三入力部３２００と第三表示部３１００とから、管理サーバ１０００へアクセスする。そうすると、管理者は、ドライバのインストール結果を所定のＵＩ画面から知ることが可能である。
【００９７】
以上のように本実施形態では、デバイス２０００は、ネットワークに接続すると、ネットワーク参加メッセージ（Helloメッセージ）を、ＵＰｎＰプロトコルに従い、ユニキャストで管理サーバ１０００に発行する。管理サーバ１０００は、ネットワーク参加メッセージに対する返答を行って、デバイスメタデータを取得し、デバイスメタデータに含まれるデバイス特性情報と、そのデバイス特性情報に対応するドライバとを関連付ける。更に、管理サーバ１０００は、デバイスメタデータに含まれるデバイス特性情報に予め関連付けられたドライバ配信クライアント４０００を検出する。そして、管理サーバ１０００は、管理者によって設定された動作環境モードを判定し、判定した動作環境モードに応じて、ドライバをインストールする。具体的に説明すると、動作環境モードがＰＵＳＨモードである場合には、ドライバ配信クライアント４０００に、ドライバを直接インストールする。一方、動作環境モードがプリントサーバモードである場合には、ドライバ配信クライアント４０００に対するドライバをプリントサーバ５０００にインストールし、そのドライバをポイントアンドプリントで利用できるようにする。したがって、動作環境モードが、ＰＵＳＨモードであっても、プリントサーバモードであっても、インストールしたドライバを管理サーバ１０００が一元的に管理することができる。そして、管理サーバ１０００は、デバイス２０００の特性に応じて、ドライバ配信クライアント４０００に適切なドライバを、印刷システムにおける動作環境モードに即した形態でインストールすることを可能となる。以上のようにすることにより、ユーザビリティが向上すると共に管理が容易になる。したがって、管理コストの低減と、業務の高効率化とによるＴＣＯ（total cost of ownership）の削減を向上することができる。
【００９８】
（第２の実施形態）
次に、本発明の第２の実施形態を説明する。前述した第１の実施形態では、印刷システム全体に対して、動作環境モードを設定するようにした（図１９及び図２０を参照）。これに対して、本実施形態では、ドライバ配信クライアント４０００毎に動作環境モードを設定するようにする。このように本実施形態と前述した第１の実施形態とは、動作環境モードの設定方法の一部が主として異なる。したがって、前述した第１の実施形態と同一の部分については、図１〜図２５に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
【００９９】
図２６は、［動作環境モード］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
本実施形態では、第１の実施形態で説明した図１９のフローチャートのステップＳ２１０において、図２６に示すＵＩ画面２６０を用いる。
ＵＩ画面２６０の右上の領域２６１では、図５においてデバイス２０００と関連付けられたドライバ配信クライアント４０００を示す選択クライアントＩＤ毎に、動作環境モードを設定する（図１４を参照）。
また、ＵＩ画面２６０の右下の領域２６２には、各選択クライアントＩＤの詳細が表示される。
【０１００】
具体的に図２６に示す例では、選択クライアントＩＤ「SelectedClients-1」に対しては、動作環境モードとして「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」が選定されている。また、選択クライアントＩＤ「SelectedCleints-2」に対しては、動作環境モードとして「プリントサーバモード」が選定されている。
第一ドライバ管理制御部１７１４は、ＵＩ画面２６０における［登録］ボタン２６３が押下されると、ＵＩ画面２６０の選定操作に基づく動作環境モードの情報を入力し、入力した動作環境モードの情報を、第一情報保管部１７１５に記憶する。
【０１０１】
図２７は、第一情報保管部１７１５に、動作環境モードの情報を記憶するためのテーブルの一例を示す図である。図２７に示すテーブル２７０では、選択クライアントＩＤ「SelectedClients-1」と動作環境モード「ＰＵＳＨ（Ａｇｅｎｔ有り）モード」とが互いに関連付けられている。また、選択クライアントＩＤ「SelectedClients-2」と動作環境モード「プリントサーバモード」とが互いに関連付けられている。
以上により、ＵＰｎＰデバイス２０００が検知されると、そのデバイス特性情報に関連付けられた選択クライアントＩＤが検出され、その選択クライアントＩＤに関連付けられた動作環境モードに応じて、図２２−１のステップＳ３１４以降の処理が施される。このように本実施形態では、少なくとも図２６に示すＵＩ画面を用いることにより、ドライバ配信クライアント４０００の単位で動作環境モードを予め設定する設定手段が実現される。
【０１０２】
以上のように本実施形態では、ドライバ配信クライアント４０００毎に動作環境モードを設定するようにしたので、第１の実施形態で説明した効果に加えて、動作環境モードをより柔軟に設定することができるという効果を有する。
尚、本実施形態では、１つのドライバ配信クライアント４０００毎に動作環境モードを設定するようにしたが、必ずしもこのようにする必要はない。例えば、複数のドライバ配信クライアント４０００からなるグループ毎に動作環境モードを設定するようにしてもよい。この場合には、複数のドライバ配信クライアント４０００の単位で動作環境モードが設定される。
【０１０３】
（本発明の他の実施形態）
前述した本発明の実施形態におけるドライバ管理装置を構成する各手段、並びにドライバ管理方法の各ステップは、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【０１０４】
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【０１０５】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では、図４、図５、図１９、図２２に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接、あるいは遠隔から供給するものも含む。そして、本発明は、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１０６】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１０７】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１０８】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１０９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１１０】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１１１】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１１２】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１１３】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１１４】
尚、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【０１１５】
【図１】本発明の第１の実施形態を示し、印刷システムの構成の一例を示す図である。
【図２】本発明の第１の実施形態を示し、プリントサーバを用いない動作環境（ＰＵＳＨモード）における印刷システムの動作の一例を概念的に示す図である。
【図３】本発明の第１の実施形態を示し、プリントサーバを用いる動作環境（プリントサーバモード）における印刷システムの動作の一例を概念的に示す図である。
【図４】本発明の第１の実施形態を示し、印刷システムにおける基本的な動作の一例を説明するフローチャートである。
【図５】本発明の第１の実施形態を示し、デバイス特性とドライバ配信クライアントとを関連付ける際の管理サーバにおける動作の一例を説明するフローチャートである。
【図６】本発明の第１の実施形態を示し、［デバイス特性とクライアント関連付け］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
【図７】本発明の第１の実施形態を示し、デバイス特性と関連付けるドライバ配信クライアントを選択するためのＵＩ画面の一例を示す図である。
【図８】本発明の第１の実施形態を示し、第一情報保管部に予め記憶されている"ドライバ配信クライアントに関するテーブル"の一例を概念的に示す図である。
【図９】本発明の第１の実施形態を示し、図６及び図７に示したＵＩ画面の選択内容の確認と登録とを行うためのＵＩ画面の一例を示す図である。
【図１０】本発明の第１の実施形態を示し、図６に示したＵＩ画面の設定内容を記憶する第１のテーブルの例を示す図である。
【図１１】本発明の第１の実施形態を示し、図６に示したＵＩ画面の設定内容を記憶する第２のテーブルの例を示す図である。
【図１２】本発明の第１の実施形態を示し、図６に示したＵＩ画面の設定内容を記憶する第３のテーブルの例を示す図である。
【図１３】本発明の第１の実施形態を示し、図６に示したＵＩ画面の設定内容を記憶する第４のテーブルの例を示す図である。
【図１４】本発明の第１の実施形態を示し、図７に示したＵＩ画面の設定内容を記憶するテーブルの一例を示す図である。
【図１５】本発明の第１の実施形態を示し、デバイス特性とドライバ配信クライアントとを関連付けて記憶するテーブルの一例を示す図である。
【図１６】本発明の第１の実施形態を示し、［デバイス特性とプリントサーバ関連付け］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
【図１７】本発明の第１の実施形態を示し、デバイス特性と関連付けるプリントサーバ５０００を選択するためのＵＩ画面の一例を示す図である。
【図１８】本発明の第１の実施形態を示し、図１６及び図１７に示したＵＩ画面の選択内容の確認と登録とを行うためのＵＩ画面の一例を示す。
【図１９】本発明の第１の実施形態を示し、ドライバ配信クライアントからデバイスへの印刷に関する動作環境モードであるかを設定する際の管理サーバ１０００における動作の一例を説明するフローチャートである。
【図２０】本発明の第１の実施形態を示し、［動作環境モード］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
【図２１】本発明の第１の実施形態を示し、動作環境モードの情報を記憶するためのテーブルの一例を示す図である。
【図２２−１】本発明の第１の実施形態を示し、印刷システムにおける詳細な動作の一例を説明するフローチャートである。
【図２２−２】本発明の第１の実施形態を示し、図２２−１に続くフローチャートである。
【図２２−３】本発明の第１の実施形態を示し、図２２−１に続くフローチャートである。
【図２３】本発明の第１の実施形態を示し、デバイス特性情報を記憶するためのテーブルの一例を概念的に示す図である。
【図２４】本発明の第１の実施形態を示し、ドライバの情報を記憶するためのテーブルの一例を概念的に示す図である。
【図２５】本発明の第１の実施形態を示し、デバイスとドライバとを関連付けて記憶するためのテーブルの一例を示す図である。
【図２６】本発明の第１の実施形態を示し、［動作環境モード］メニューが選択された場合に表示されるＵＩ画面の一例を示す図である。
【図２７】本発明の第１の実施形態を示し、動作環境モードの情報を記憶するためのテーブルの一例を示す図である。
【符号の説明】
【０１１６】
１０００  管理サーバ
２０００  デバイス
３０００  管理者クライアント
４０００  ドライバ配信クライアント
５０００  プリントサーバ
６０００  通信回線
【図１】
2009145970.tif 000003
【図２】
2009145970.tif 000004
【図３】
2009145970.tif 000005
【図４】
2009145970.tif 000006
【図５】
2009145970.tif 000007
【図６】
2009145970.tif 000008
【図７】
2009145970.tif 000009
【図８】
2009145970.tif 000010
【図９】
2009145970.tif 000011
【図１０】
2009145970.tif 000012
【図１１】
2009145970.tif 000013
【図１２】
2009145970.tif 000014
【図１３】
2009145970.tif 000015
【図１４】
2009145970.tif 000016
【図１５】
2009145970.tif 000017
【図１６】
2009145970.tif 000018
【図１７】
2009145970.tif 000019
【図１８】
2009145970.tif 000020
【図１９】
2009145970.tif 000021
【図２０】
2009145970.tif 000022
【図２１】
2009145970.tif 000023
【図２２−１】
2009145970.tif 000024
【図２２−２】
2009145970.tif 000025
【図２２−３】
2009145970.tif 000026
【図２３】
2009145970.tif 000027
【図２４】
2009145970.tif 000028
【図２５】
2009145970.tif 000029
【図２６】
2009145970.tif 000030
【図２７】
2009145970.tif 000031