(57)【要約】【課題】クライアント装置に支障を与えることなく、クライアント装置に対してデバイスドライバのインストールを行うことができるプッシュ型インストールシステムを提供する。【解決手段】サーバ装置１０１において、プリンタドライバが指定するとともに、ＬＡＮ１００上の複数のクライアント装置の中から指定されたプリンタドライバのインストール先となる１つ以上のクライアント装置が指定される。そして、ＬＡＮ１００上のクライアント装置毎に取得された稼動状態に基づいて、インストール先として指定されたクライアント装置のそれぞれに対してインストール可能状態にあるか否かが判別される。そして、サーバ装置１０１は、ＬＡＮ１００を介して、インストール可能状態にあると判別されたクライアント装置に対して指定されたプリンタドライバのインストール処理を実行する。【選択図】      図１
2005050061.tif 000002
【特許請求の範囲】
【請求項１】
サーバ装置からネットワークを介して１つ以上のクライアント装置にデバイスドライバをインストールするためのプッシュ型インストールシステムであって、
前記サーバ装置は、
前記ネットワークを介して、該ネットワークに接続されているクライアント装置毎にその稼動状態を取得する取得手段と、
前記取得手段により前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別手段と、
前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストール手段とを備えることを特徴とするプッシュ型インストールシステム。
【請求項２】
複数のクライアント装置とネットワークを介して接続される情報処理装置であって、
前記ネットワークを介して前記クライアント装置毎にその稼動状態を取得する取得手段と、
前記取得手段により前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別手段と、
前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストール手段とを備えることを特徴とする情報処理装置。
【請求項３】
デバイスドライバを指定するとともに、前記複数のクライアント装置の中から前記指定されたデバイスドライバのインストール先となる１つ以上のクライアント装置を指定する指定手段を備え、
前記判別手段は、前記取得手段により前記クライアント装置毎に取得された稼動状態に基づいて、前記インストール先として指定されたクライアント装置毎にインストール可能状態にあるか否かを判別し、
前記インストール手段は、前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対して前記指定されたデバイスドライバをインストールするための処理を実行することを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記ネットワークを介して、前記インストール可能状態にないと判別されたクライアント装置に対して、インストール可能状態にすることを促す旨の通知を行う通知手段を備えることを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記取得手段は、前記クライアント装置の稼動状態として、ＣＰＵの稼働率、メモリ使用量のうち、少なくとも１つの情報を取得することを特徴とする請求項２ないし４のいずれか１つに記載の情報処理装置。
【請求項６】
前記判別手段は、前記ＣＰＵの稼働率が低いまたは前記メモリ使用量が少ないクライアント装置をインストール可能状態にあるクライアント装置と判別することを特徴とする請求項５記載の情報処理装置。
【請求項７】
前記デバイスドライバがインストールされたクライアント装置からインストール完了通知を受信すると、前記ネットワークを介して、前記インストール完了通知の受信に応答して対応するクライアント装置に対して、インストールされたデバイスドライバの情報を通知するドライバ情報通知手段を備えることを特徴とする請求項２ないし６のいずれか１つに記載の情報処理装置。
【請求項８】
前記デバイスドライバは、プリンタドライバであることを特徴とする請求項２ないし７のいずれか１つに記載の情報処理装置。
【請求項９】
サーバ装置からネットワークを介して１つ以上のクライアント装置にデバイスドライバをインストールするためのプッシュ型インストール方法であって、
前記サーバ装置は、
前記ネットワークを介して、前記クライアント装置毎にその稼動状態を取得する取得工程と、
前記取得工程により前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別工程と、
前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストール工程とを有することを特徴とするプッシュ型インストール方法。
【請求項１０】
前記サーバ装置は、デバイスドライバを指定するとともに、前記複数のクライアント装置の中から前記指定されたデバイスドライバのインストール先となる１つ以上のクライアント装置を指定する指定工程を有し、
前記判別工程では、前記取得工程により前記クライアント装置毎に取得された稼動状態に基づいて、前記インストール先として指定されたクライアント装置毎にインストール可能状態にあるか否かを判別し、
前記インストール工程では、前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対して前記指定されたデバイスドライバをインストールするための処理を実行することを特徴とする請求項９記載のプッシュ型インストール方法。
【請求項１１】
前記サーバ装置は、前記ネットワークを介して、前記インストール可能状態にないと判別されたクライアント装置に対して、インストール可能状態にすることを促す旨の通知を行う通知工程を有することを特徴とする請求項１０記載のプッシュ型インストール方法。
【請求項１２】
前記取得工程では、前記クライアント装置の稼動状態として、ＣＰＵの稼働率、メモリ使用量のうち、少なくとも１つの情報を取得することを特徴とする請求項９ないし１１のいずれか１つに記載のプッシュ型インストール方法。
【請求項１３】
前記判別工程で、前記ＣＰＵの稼働率が低いまたは前記メモリ使用量が少ないクライアント装置をインストール可能状態にあるクライアント装置と判別することを特徴とする請求項１２記載のプッシュ型インストール方法。
【請求項１４】
前記サーバ装置は、前記デバイスドライバがインストールされたクライアント装置からインストール完了通知を受信すると、前記ネットワークを介して、前記インストール完了通知の受信に応答して対応するクライアント装置に対して、インストールされたデバイスドライバの情報を通知するドライバ情報通知工程を有することを特徴とする請求項９ないし１３のいずれか１つに記載のプッシュ型インストール方法。
【請求項１５】
前記デバイスドライバは、プリンタドライバであることを特徴とする請求項９ないし１４のいずれか１つに記載のプッシュ型インストール方法。
【請求項１６】
複数のクライアント装置とネットワークを介して接続される情報処理装置により実行可能なプログラムであって、
前記ネットワークを介して前記クライアント装置毎にその稼動状態を取得する取得モジュールと、
前記取得モジュールにより前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別モジュールと、
前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストールモジュールとを有することを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、サーバ装置からネットワークを介して１つ以上のクライアント装置にデバイスドライバをインストールするためのプッシュ型インストールシステム、情報処理装置、プッシュ型インストール方法およびプログラムに関する。
【０００２】
【従来の技術】
プリンタドライバのインストール方法としては、ＯＳ依存の方式、例えばＷｉｎｄｏｗｓ（登録商標）の場合、プリンタのプロパティからプリンタの追加を選択し、その後ウィザードと呼ばれるユーザとの対話形式でユーザが必要情報を入力することによって、プリンタドライバをインストールするものがある。また、ユーザの操作を最小限にするために、アプリケーションと同様にインストーラを用いて、プリンタドライバのインストールを行う方法がある。
【０００３】
しかしながら、上記のそれぞれのインストール方法では、大企業のように、多数のユーザすなわち多数のクライアント装置を抱えている場合、その全てのクライアント装置にプリンタドライバをインストールさせる作業が発生し、その総工数は、経済的には、無視することができないものである。また、クライアント装置側においては、プリンタドライバをインストールする際に所定レベル以上の能力が必要である。そのため、この作業手段に対する詳細なマニュアル作成や、全クライアントに対する教育の実施などが必要となり、最悪の場合、ネットワーク管理者が全てのクライアント装置に対して１台ずつプリンタドライバをインストールするという膨大な作業が必要になる。すなわち、クライアント装置の数が増すに従い、それに比例にして作業工数が増加することになる。
【０００４】
また、オフィスにおいては、近年、多数のコンピュータが導入されており、これらの多数のコンピュータにドライバをそれぞれ適切にインストールする作業は、数日を要することすらある。
【０００５】
このようなプリンタドラバのインストールに掛かる作業工数を極力軽減させるための方法として、プリントサーバを用いたＰｏｉｎｔ  ＆  Ｐｒｉｎｔでのインストール方法があり、この方法の場合、Ｗｉｎｄｏｗｓ  ＮＴまたは２０００のサーバ装置が有する、クライアント装置に対し、プリンタドライバを自動配信する仕組みが用いられる（例えば特許文献１を参照）。
【０００６】
【特許文献１】
特開２００３−１４０８５２号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、プリントサーバを用いたＰｏｉｎｔ＆Ｐｒｉｎｔ方法では、プリンタドライバの自動配信により全てのクライアント装置に対してプリンタドライバのインストールが可能であるが、クライアント装置がどのような状態であるかに関わらず、プリンタドライバのインストールが開始されるので、例えばクライアント装置がプリント処理の実行中にプリンタドラバの更新を行う場合などは、実行中のプリント処理が中断またはプリンタドライバの更新ができないなどの支障が生じる。
【０００８】
本発明の目的は、クライアント装置に支障を与えることなく、クライアント装置に対してデバイスドライバのインストールを行うことができるプッシュ型インストールシステム、情報処理装置、プッシュ型インストール方法およびプログラムを提供することにある。
【０００９】
【課題を解決するための手段】
本発明は、上記目的を達成するため、サーバ装置からネットワークを介して１つ以上のクライアント装置にデバイスドライバをインストールするためのプッシュ型インストールシステムであって、前記サーバ装置は、前記ネットワークを介して、該ネットワークに接続されているクライアント装置毎にその稼動状態を取得する取得手段と、前記取得手段により前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別手段と、前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストール手段とを備えることを特徴とする。
【００１０】
本発明は、上記目的を達成するため、複数のクライアント装置とネットワークを介して接続される情報処理装置であって、前記ネットワークを介して前記クライアント装置毎にその稼動状態を取得する取得手段と、前記取得手段により前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別手段と、前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストール手段とを備えることを特徴とする。
【００１１】
本発明は、上記目的を達成するため、サーバ装置からネットワークを介して１つ以上のクライアント装置にデバイスドライバをインストールするためのプッシュ型インストール方法であって、前記サーバ装置は、前記ネットワークを介して、前記クライアント装置毎にその稼動状態を取得する取得工程と、前記取得工程により前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別工程と、前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストール工程とを有することを特徴とする。
【００１２】
本発明は、上記目的を達成するため、複数のクライアント装置とネットワークを介して接続される情報処理装置により実行可能なプログラムであって、前記ネットワークを介して前記クライアント装置毎にその稼動状態を取得する取得モジュールと、前記取得モジュールにより前記クライアント装置毎に取得された稼動状態に基づいて、前記クライアント装置毎にインストール可能状態にあるか否かを判別する判別モジュールと、前記ネットワークを介して、前記インストール可能状態にあると判別されたクライアント装置に対してデバイスドライバをインストールするための処理を実行するインストールモジュールとを有することを特徴とする。
【００１３】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００１４】
図１は本発明の一実施の形態に係るプッシュ型インストールシステムが構築されたネットワークシステムの構成を示すブロック図である。
【００１５】
ネットワークシステムにおいては、図１に示すように、サーバ装置１０１、複数のクライアント装置１０２，１０３，１０４およびプリンタ１０５が、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１００を介して接続されている。このネットワークシステムにおいては、サーバ装置１０１からＬＡＮ１００を介して各クライアント装置１０２，１０３，１０４に対してプリンタドライバのインストールを行ういわゆるプッシュ型インストールシステムが構築されており、その詳細については後述する。上記ＬＡＮ１００には、また、上述した機器以外に、他のクライアント装置、他のプリンタ、スキャナ、デジタルカメラ、ファクシミリ、マウス、スピーカ、音源装置、電話、複写機などのデバイス（図示せず）が接続されていてもよい。
【００１６】
次に、サーバ１０１装置の構成について図２を参照しながら説明する。図２は図１のサーバ装置１０１の構成を示すブロック図である。
【００１７】
サーバ１０１装置は、図２に示すように、本体２００を備える。本体２００には、ＲＯＭ３のプログラムＲＯＭまたは外部メモリ１１に格納されているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を立ち上げ、このＯＳ上で各種処理を実行するＣＰＵ１が内蔵されている。ＣＰＵ１は、システムバス４に接続される各デバイスを統括的に制御する。
【００１８】
例えば、ＣＰＵ１はＲＯＭ３のプログラムＲＯＭまたは外部メモリ１１に格納されている文書処理プログラムに基づき図形、イメージ、文字、表（表計算を含む）などが混在した文書処理を実行する。ＣＰＵ１はＲＡＭ２を、各種処理を実行する際の作業領域として使用する。
【００１９】
ＲＯＭ３には、上記プログラムＲＯＭとともに、フォントＲＯＭおよびデータＲＯＭが設けられている。フォントＲＯＭには、上記文書処理などに使用されるフォントデータが格納されている。また、同様のフォントデータを外部メモリ１１に格納することもできる。データＲＯＭには、上記文書処理などに使用されるデータが格納されている。
【００２０】
上記システムバス４に接続されているデバイスには、キーボードＩ／Ｆ５、ディスプレイＩ／Ｆ６、外部メモリＩ／Ｆ７、ネットワークＩ／Ｆ８がある。
【００２１】
キーボードＩ／Ｆ５は、キーボード９やマウスなどのポインティングデバイス（図示せず）からのキー入力を制御する。ディスプレイＩ／Ｆ６は、液晶表示装置、ＣＲＴなどのディスプレイ１０の表示を制御する。外部メモリＩ／Ｆ７は、外部メモリ１１へのアクセスを制御する。
【００２２】
外部メモリ１１は、各種アプリケーションプログラム、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバなどを記憶するハードディスク（ＨＤ）、フロッピー（登録商標）ディスク（ＦＤ）などからなる。
【００２３】
ネットワークＩ／Ｆ８は、ＬＡＮ１００に接続され、各クライアント装置１０２，１０３，１０４およびプリンタ１０５との通信制御処理を実行する。
【００２４】
ＣＰＵ１は、例えばＲＡＭ２上に設けられた表示情報用ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ディスプレイ１０上でＷＹＳＩＷＹＧを可能とする。また、ＣＰＵ１は、ディスプレイ１０上のマウスカーソル（図示せず）などで指定されたコマンドに基づき登録された各種ウインドウを開き、各種のデータ処理を実行する。
【００２５】
各クライント装置１０２〜１０４は、上記サーバ装置１０１と同様の構成を有し、ここでは、その構成についての説明は省略する。
【００２６】
次に、プリンタ１０５の構成について図３を参照しながら説明する。図３は図１のプリンタ１０５の構成を示すブロック図である。
【００２７】
プリンタ１０５は、図３に示すように、プリンタ１０５の動作を制御するコントローラ３００を備える。コントローラ３００には、ＬＡＮ１００と接続されるネットワークＩ／Ｆ１６が設けられている。ネットワークＩ／Ｆ１６は、ＬＡＮ１００を介して、各クライアント装置１０２〜１０４からプリンタ言語形式で出力される文字、図形、イメージなどの印刷情報を取り込み、この取り込まれた印刷情報は、システムバス１５を介してＣＰＵ１２に供給される。
【００２８】
ＣＰＵ１２は、ＲＯＭ１４のプログラムＲＯＭまたは外部メモリ２１に格納されている制御プログラムに基づき、各クライアント装置１０２〜１０４からの印刷情報をＲＡＭ１３の作業領域に展開し、１ページ毎に画像データを画信号としてシステムバス１５および印刷部Ｉ／Ｆ１７を介して印刷部（プリンタエンジン）１９に送出し、印刷部１９を１ページ毎にその画信号を記録紙に記録するように制御する。
【００２９】
ＲＯＭ１４には、上記プログラムＲＯＭとともに、フォントＲＯＭおよびデータＲＯＭが設けられている。フォントＲＯＭには、上記画信号を生成する際に使用されるフォントデータが格納され、データＲＯＭにはクライアント装置１０２〜１０４上で利用されるデータが格納されている。また、このデータは、外部メモリ２１に格納するようにしてもよい。
【００３０】
ＲＡＭ１３は、演算や処理の結果の記憶、入力データのバッファリング領域、記録紙の両面分の描画情報の展開領域、環境データ格納領域、ＮＶＲＡＭなどに用いられる。ＲＡＭ１３に加えて、増設ポート（図示せず）に接続されるオプションＲＡＭによりメモリ容量を拡張することが可能なように構成されている。
【００３１】
外部メモリ２１は、ハードディスク（ＨＤ）、フロッピー（登録商標）ディスク（ＦＤ）などの記憶手段からなり、外部メモリ２１へのアクセスは外部メモリＩ／Ｆ１８が制御する。また、外部メモリ２１は、他の記憶媒体例えばメモリカードなどから構成することも可能である。また、外部メモリ２１の数は１つに限らず、内蔵フォントに加えてオプションフォント、言語系の異なるプリンタ制御言語を解釈するプログラムなどを格納した複数の他の外部メモリを接続するように構成することもできる。さらに、ＮＶＲＡＭを設け、操作部２０からのプリンタモード設定情報を記憶するようにしてもよい。
【００３２】
ＣＰＵ１２への指示は、操作部２０から与えられる。操作部２０は、各種モードなどの設定に用いられるキーおよびＬＥＤ表示器などを有する。
【００３３】
本実施の形態においては、サーバ装置１０１からＬＡＮ１００を介して１つ以上のクライアント装置にプリンタドライバをインストールするプッシュ型インストールを行うことが可能である。このプリンタドライバのプッシュ型インストールについて図４〜図７を参照しながら説明する。図４は図１のサーバ装置１０１上のＲＡＭ２のメモリマップを示す図、図５は図１のサーバ装置１０１によるプリンタドライバのプッシュ型インストールの処理手順を示すフローチャート、図６は図１のサーバ装置１０１に表示された検索実施後のプリンタとクライアント装置の一画面例を示す図、図７はプリンタドライバを受け取るためのクライアント装置１０２〜１０４の構成を示すブロック図である。
【００３４】
サーバ装置１０１においては、図４に示すように、インストール関連処理プログラム２０４がＲＡＭ２にロードされ、これによりプリンタドライバのプッシュ型インストールが実行可能になる。インストール関連処理プログラム２０４には、プリンタドライバのプッシュ型インストールを実現するためのインストール制御プログラムが含まれる。ここで、本図は、インストール関連処理プログラム２０４とともに、アプリケーション２０１、関連データ２０３、ＯＳ２０５、ＢＩＯＳ２０６がＲＡＭ２上にロードされている状態を示し、ＲＡＭ２の空き領域は、空きメモリ２０２として示されている。
【００３５】
インストール制御プログラムは、ＬＡＮ１００を介してクライアント装置毎にその稼動状態を取得する取得モジュールと、インストールするプリンタドライバを指定するとともに、複数のクライアント装置の中から指定されたプリンタドライバのインストール先となる１つ以上のクライアント装置を指定する指定モジュールと、取得モジュールによりクライアント装置毎に取得された稼動状態に基づいて、インストール先として指定されたクライアント装置のそれぞれに対してインストール可能状態にあるか否かを判別する判別モジュールと、ＬＡＮ１００を介して、判別モジュールによりインストール可能状態にあると判別されたクライアント装置に対して指定されたプリンタドライバのインストールするための処理を実行するインストールモジュールとを含む。
【００３６】
ここで、クライアント装置の稼動状態としては、該クライアント装置のＣＰＵの稼働率、メモリ使用量の少なくとも１つの情報が取得され、この情報に基づいて各クライアント装置がプリンタドライバをインストール可能な状態にあるか否かの判別が行われる。
【００３７】
プリンタドライバのインストール先となるクライアント装置１０２〜１０４においては、図７に示すように、サービス（またはアプリケーション）１２０が動作する。そのサービス（アプリケーション）１２０には、大きく分けて２つのモジュールがあり、一つは検索モジュール１２１、他の一つはプリンタドライバインストール用モジュール１２２〜１２７である。管理者に指示された内容で、サーバ装置１０１からプリンタドライバを含むドライバインストールセットがＬＡＮ１００経由でクライアント装置１０２〜１０４に送出される。ＬＡＮ１００上のプロトコルとしては、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）が用いられる。ＳＯＡＰは、テキストベースのＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述可能なため、セキュリティが考慮されて、コマンド（プリンタドライバを含むドライバインストールセット）は暗号化される。サーバ装置１０１からの暗号化されたコマンドは、クライアント装置１０２〜１０４内の暗号解読モジュール１２２により解読され、これに基づいて制御モジュール１２３が、プリンタドライバのインストールを実行するように実行モジュール１２６を制御する。
【００３８】
ここで、既にプリンタドライバがインストールされている場合は、このインストールされているプリンタドライバの削除が行われた後に、新たなプリンタドライバのインストールが行われるものとする。
【００３９】
次に、本実施の形態におけるプリンタドライバのプッシュ型インストールについて図５を参照しながら詳細に説明する。ここで、図５に示す手順は、上記インストール制御プログラムに従ってサーバ装置１０１のＣＰＵ１により実行されるものである。
【００４０】
図５に示すように、まず、ＣＰＵ１は、ステップＳ１００１において、プリンタドライバのインストール先となるネットワーク１００上のプリンタを見つけるために、ネットワーク１００に接続されているプリンタの情報を検索し、取得する。この検索方法は、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）などを用いた通信プロトコルを用いて行われる。ここで取得されるプリンタの情報は、プリンタドライバのインストールが可能なプリンタの情報であればよく、その情報としては、例えばプリンタ名称とＩＰ  Ａｄｄｒｅｓｓとである。
【００４１】
そして、このプリンタの検索の結果がディスプレイ１０に操作画面に表示し、この操作画面上での管理者による指定操作を入力する。この操作画面は、例えば図６に示すような構成の画面からなる。この図６に示す操作画面の場合、画面上の左側にプリンタドライバのインストールが可能なプリンタの一覧２０００が表示される。このプリンタの一覧２０００には、上記ステップＳ１００１で取得されたプリンタ名称とＩＰ  Ａｄｄｒｅｓｓが含まれる。ここで、図中のプリンタ装置のＩＰ  Ａｄｄｒｅｓｓの表記においては「ａ」としている部分があるが、実際は全て数字で表される。
【００４２】
次いで、ＣＰＵ１は、ステップＳ１００２において、ＳＬＰ（Ｓｅｒｖｉｃｅ  Ｌｏｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）やＳＳＤＰ（Ｓｉｍｐｌｅ  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）などを用いた通信プロトコルを用いて、ＬＡＮ１００に接続されているクライアント装置の情報を検索し、取得する。ここで取得されるクライアント装置の情報は、そのクライアント装置名、ＩＰ  Ａｄｄｒｅｓｓおよびクライアント装置の稼動状態としてのＣＰＵ稼働率を示す情報である。なお、本実施の形態では、クライアント装置の稼動状態としてＣＰＵ稼働率が取得されているが、これに代えて、メモリ使用量を取得するようにしてもよい。
【００４３】
そして、ＣＰＵ１は、ステップＳ１００３において、上記ステップＳ１００２で取得されたクライアント装置の稼動状態を示す情報に基づいて当該クライアント装置のＣＰＵ稼働率（またはメモリ使用量）のチェックを行い、ビィジー状態のクライアント装置とアイドル状態のクライアント装置とを判別する。ここで、ＣＰＵ稼働率が所定レベルより低い（またはメモリ使用量が所定値より少ない）クライアント装置はアイドル状態のクライアント装置と判別され、ＣＰＵ稼働率が所定レベルより高い（またはメモリ使用量が所定値より少ない）クライアント装置はビィジー状態のクライアント装置と判別される。
【００４４】
このクライアント装置に対する検索結果は、図６に示す操作画面上の右側に、ＬＡＮ１００に接続されているクライアント装置の一覧２００１として表示される。このクライアント装置の一覧２００１には、上記ステップＳ１００２で取得されたクライアント装置名、ＩＰ  Ａｄｄｒｅｓｓとともに、接続ポート番号を示すＣｏｎｔｒｏｌ  Ｐｏｒｔ、クライアント装置の稼動状態を示すＳｔａｔｕｓが表示される。ここで、図６中のクライアント装置のＩＰ  Ａｄｄｒｅｓｓの表記においては「ａ」としている部分があるが、実際は全て数字で表される。また、クライアント装置のＳｔａｔｕｓは、上記ステップＳ１００３のチェック結果に基づいたものである。また、電源断などで応答がないクライアント装置に対しては、その情報の全てを表示しないようにしてよいし、Ｓｔａｔｕｓとして、Ｎｏ  Ｒｅｓｐｏｎｓｅ（ノーレスポンス状態）と表示するようにしてもよい。本例では、電源断などで応答がないクライアント装置に対しては、その情報の全てが表示されないように設定されている。
【００４５】
次いで、ＣＰＵ１は、ステップＳ１００４において、上記操作画面上で管理者により行われたプリンタおよびクライアント装置の指定操作を入力する。ここでは、例えば、管理者が上記操作画面上でプリンタ名称のアイコンを選択し、選択されたプリンタ名称のアイコンをドラッグアンドドロップの操作によりクライアント装置名のアイコン上に重ねることにより、選択されたプリンタ名称に対応するプリンタドライバのインストール先となるクライアント装置を選択することが可能になる。また、プリンタドライバのインストール先が複数ある場合、ＳｈｉｆｔキーやＣｔｒｌキーなどを用いてインストール先となる複数のクライアント装置を選択することも可能である。このようにして、選択されたプリンタドライバのインストール先となるクライアント装置が選択されると、図示していないが、「選択されたプリンタのプリンタドライバを選択された全てのクライアント装置にインストールしますか」という確認メッセージが上記操作画面上に表示され、ここで、「ＯＫボタン」が押下されると、選択されたプリンタのプリンタドライバの選択された全てのクライアント装置へのインストール開始が指示される。
【００４６】
次いで、ＣＰＵ１は、ステップＳ１００５において、上記ステップＳ１００４で選択されたクライアント装置の中にアイドル状態以外のクライアント装置（すなわちビジィー状態のクライアント装置）が含まれているか否かを判定する。ここで、選択されたクライアント装置の中にアイドル状態以外のクライアント装置が含まれていないと判定された場合、ＣＰＵ１は、ステップＳ１００６に処理を進める。これに対し、選択されたクライアント装置の中にアイドル状態以外のクライアント装置が含まれていると判定された場合、ＣＰＵ１は、ステップＳ１０１０において、ＬＡＮ１００を介して、選択されたクライアント装置の中に含まれるアイドル状態以外のクライアント装置に対してアイドル状態にすることを促すメッセージを送信し、処理をステップＳ１００６に進める。
【００４７】
ステップＳ１００６において、ＣＰＵ１は、ＬＡＮ１００を介して、選択されたクライアント装置中のアイドル状態であるクライアント装置に対して選択されたプリンタドライバをダウンロードする。このプリンタドライバがダウンロードされたクライアント装置においては、上述したように、プリンタドライバが既にインストールされている場合、既にインストールされているプリンタドライバの削除が行われた後に、ダウンロードされたプリンタドライバのインストールが行われる。そして、クライアント装置上でプリンタドライバのインストールや更新が正しく行われた場合、当該クライアント装置からサーバ装置１０１へインストール完了通知が返される。
【００４８】
そして、ＣＰＵ１は、ステップＳ１００７において、インストール先のクライアント装置からのインストール完了通知の受信応答処理を行う。この受信応答処理は、インストール先のクライアント装置から返されたインストール完了通知を受信し、この受信したインストール完了通知に応答して当該クライアント装置に対してインストールまたは更新したプリンタドライバ名を含むドライバ情報を通知するものである。
【００４９】
次いで、ＣＰＵ１は、ステップＳ１００８において、ステップＳ１００７のインストール完了通知の受信結果に基づいて、選択されたクライアント装置の全てに対するプリンタドライバのインストール結果の一覧を表示する。ここでは、選択されたクライアント装置毎にそのインストールが正常に完了したか否かを示す情報を表示する。ここで、例えば、選択されたクライアント装置の中にアイドル状態以外のクライアント装置が含まれている場合、アイドル状態以外のクライアント装置に対しては、アイドル状態にすることを促すメッセージは送信されているが、プリンタドライバはインストールされてないので、このようなクライアント装置に対しては、選択されたプリンタドライバがインストールされていない旨を示す情報が対応付けて表示されることになる。このようなアイドル状態にないことによりプリンタドライバがインストールされなかったクライアント装置がある場合、上記インストール結果の一覧とともに、プリンタドライバのインストールの再試行を選択するための「再試行」ボタンが表示される。
【００５０】
そして、ＣＰＵ１は、ステップＳ１００９において、上記「再試行」ボタンの押下により再試行が選択されたか否かを判定し、再試行が選択されなかった場合、本処理を終了する。これに対し、再試行が選択された場合、ＣＰＵ１は、上記ステップＳ１００２に戻る。これにより、アイドル状態にすることを促すメッセージが送信されたクライアント装置がアイドル状態にされたか否かを判定することができ、このクライアント装置がアイドル状態であれば、このクライアント装置を再度選択することによってプリンタドライバをインストールすることができる。
【００５１】
以上より、本実施の形態では、サーバ装置１０１によりクライアント装置毎の稼動状態が取得され、この取得された稼動状態に基づいてアイドル状態と判別されたクライアント装置のみにプリンタドライバがインストールされるので、このプリンタドライバのインストール時にクライアント装置に支障が発生することを回避することができる。
【００５２】
また、インストール先として選択されたクライアント装置の中にアイドル状態以外のクライアント装置が含まれている場合、アイドル状態以外のクライアント装置に対しては、アイドル状態にすることを促すメッセージが送信されるので、インストール先として選択されたビジィー状態のクライアント装置のユーザに対して当該クライアント装置をアイドル状態にすることを促すことができ、ひいては他のクライアント装置へのプリンタドライバのインストールの終了後までに当該クライアント装置をアイドル状態にすることができる。その結果、ビジィー状態のクライアント装置へプリンタドライバをインストール際に、ビジィー状態のクライアント装置をアイドル状態すなわちプリンタドライバインストール可能な状態へ即座に移行させることができる。
【００５３】
さらに、本実施の形態によれば、ネットワーク管理者が、所定の端末にて一括インストール指示であるプッシュインストールに指示を入力だけで、自動的に、複数のクライアントに対して負荷を掛けることなく自動的にインストールさせることができ、大幅にネットワーク管理者の作業効率を向上させることができる。
【００５４】
なお、本実施の形態では、プリンタドライバをインストールする場合を説明したが、本発明の原理は、各種デバイスのドライバ、例えばディスプレイ、スキャナ、デジタルカメラ、ファクシミリ、マウス、スピーカ、音源装置、電話、複写機、などに対するドライバのインストールにも適用可能であることもいうまでもない。
【００５５】
なお、本発明の目的は、前述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
【００５６】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
【００５７】
【発明の効果】
以上説明したように、本発明によれば、クライアント装置に支障を与えることなく、クライアント装置に対してデバイスドライバのインストールを行うことができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係るプッシュ型インストールシステムが構築されたネットワークシステムの構成を示すブロック図である。
【図２】図１のサーバ装置１０１の構成を示すブロック図である。
【図３】図１のプリンタ１０５の構成を示すブロック図である。
【図４】図１のサーバ装置１０１上のＲＡＭ２のメモリマップを示す図である。
【図５】図１のサーバ装置１０１によるプリンタドライバのプッシュ型インストールの処理手順を示すフローチャートである。
【図６】図１のサーバ装置１０１に表示された検索実施後のプリンタとクライアント装置の一画面例を示す図である。
【図７】プリンタドライバを受け取るためのクライアント装置１０２〜１０４の構成を示すブロック図である。
【符号の説明】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
１１  外部メモリ
１００  ＬＡＮ
１０１  サーバ装置
１０２，１０３，１０４  クライアント装置
１０５  プリンタ
【図１】
2005050061.tif 000003
【図２】
2005050061.tif 000004
【図３】
2005050061.tif 000005
【図４】
2005050061.tif 000006
【図５】
2005050061.tif 000007
【図６】
2005050061.tif 000008
【図７】
2005050061.tif 000009