(57)【特許請求の範囲】
【請求項１】
クライアント装置と通信する情報処理装置おいて、
印刷装置を駆動する制御プログラムであるドライバの、クライアント装置におけるセットアップ状況を管理する装置管理手段と、
前記セットアップ状況に基づいて、前記複数のクライアント装置に対応するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とをクライアント装置に対して送信する処理を制御する送信制御手段と、
を含むことを特徴とする情報処理装置。
【請求項２】
クライアント装置と通信する情報処理装置における方法であって、
印刷装置を駆動する制御プログラムである印刷装置の、ドライバのクライアント装置におけるセットアップ状況を管理する装置管理工程と、
前記セットアップ状況に基づいて、前記複数のクライアント装置に対応するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とをクライアント装置に送信する処理を制御する送信制御工程とを有することを特徴とする情報処理方法。
【請求項３】
前記セットアップ状況は、前記クライアント装置に組み込まれたドライバ情報のバージョンを示す情報を含み、前記送信制御工程では、前記バージョンを示す情報が、サーバ装置が有するドライバ情報より旧い場合に、前記サーバ装置が有するドライバ情報をクライアント装置に送信するよう送信処理を制御することを特徴とする請求項２に記載の情報処理方法。
【請求項４】
前記セットアップ状況は、前記クライアント装置に組み込まれたドライバ情報の識別情報を含み、
前記送信制御工程では、前記ドライバ情報の識別情報が示すドライバ情報が前記クライアント装置に存在しない場合に、前記ドライバ情報をクライアント装置に送信するよう送信処理を制御することを特徴とする請求項２に記載の情報処理方法。
【請求項５】
前記セットアップ状況は、クライアント装置と通信することにより、前記サーバ装置が収集することを特徴とする請求項２に記載の情報処理方法。
【請求項６】
前記ドライバ情報は、プリンタドライバを含むことを特徴とする請求項２に記載の情報処理方法。
【請求項７】
クライアント装置と通信する情報処理装置において実行される制御プログラムであって、
印刷装置を駆動する制御プログラムである印刷装置のドライバの、クライアント装置におけるセットアップ状況を管理する装置管理工程と、
前記セットアップ状況に基づいて、前記複数のクライアント装置に対応するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とをクライアント装置に送信する処理を制御する送信制御工程とを情報処理装置に実行させることを特徴とする制御プログラム。
【請求項８】
複数のクライアント装置と通信する情報処理装置において、
ドライバ情報をインストールすべき複数のクライアント装置を判断する判断手段と、
前記クライアント装置に接続された印刷装置を制御するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とを前記判断手段により判断された複数のクライアントに対して配信する処理を制御する送信制御手段とを有することを特徴とする情報処理装置。
【請求項９】
複数のクライアント装置と通信する情報処理装置における方法において、
ドライバ情報をインストールすべき複数のクライアント装置を判断する判断工程と、
前記クライアント装置に接続された印刷装置を制御するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とを、前記判断工程により判断された複数のクライアントに対して配信する処理を制御する送信制御工程とを有することを特徴とする情報処理方法。
【請求項１０】
前記クライアント装置は、前記セットアップ指示に基づき、前記ドライバ情報のセットアップを行うことを特徴とする請求項９に記載の情報処理方法。
【請求項１１】
前記情報処理装置は、クライアント装置を手動で選択する選択工程を有し、
前記判断工程では、前記選択工程で選択されたクライアント装置を判断することを特徴とする請求項９に記載の情報処理方法。
【請求項１２】
複数のクライアント装置と通信する情報処理装置において実行される制御プログラムであって、
ドライバ情報をインストールすべき複数のクライアント装置を判断する判断工程と、
前記クライアント装置に接続された印刷装置を制御するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とを、前記判断工程で判断された複数のクライアントに対して配信する処理を制御する送信制御工程を情報処理装置に実行させることを特徴とする制御プログラム。
【請求項１３】
印刷装置並びにサーバ装置と通信する情報処理装置において、
前記サーバ装置からのセットアップ指示並びにドライバ情報を認識する認識手段と、
前記サーバ装置にセットアップ指示を要求することなく、前記セットアップ指示を認識するのに応答して、前記印刷装置を制御するためのドライバ情報を前記クライアント装置内にインストールすると共に、印刷装置の識別情報と、前記ドライバ情報と関連付けて前記クライアント装置が登録するようクライアント装置をセットアップするプログラム管理手段と、
を有することを特徴とする情報処理装置。
【請求項１４】
印刷装置並びにサーバ装置と通信する情報処理装置における方法において、
前記サーバ装置からのセットアップ指示並びにドライバ情報を認識する認識工程と、
前記サーバ装置にセットアップ指示を要求することなく、前記セットアップ指示を認識するのに応答して、前記印刷装置を制御するためのドライバ情報を前記クライアント装置内にインストールし、印刷装置の識別情報と、前記ドライバ情報と関連付けて前記クライアント装置が登録するようクライアント装置をセットアップするプログラム管理工程を有することを特徴とする情報処理方法。
【請求項１５】
前記プログラム管理工程では、前記クライアント装置に搭載されたＯＳのアプリケーションプログラミングインタフェースを介して、印刷装置の識別情報と、前記ドライバ情報と関連付けた状態で、ＯＳが認識するようＯＳを制御することを特徴とする請求項１４に記載の情報処理方法。
【請求項１６】
前記プログラム管理工程は、前記クライアント装置内に記憶された既存のドライバの識別情報と、前記セットアップ指示により指示されたドライバの識別情報を比較し、前記既存のドライバの識別情報と、前記セットアップ指示されたドライバの識別情報が一致しない場合に、前記セットアップ指示されたドライバを前記クライアント装置に記憶させることを特徴とする請求項１４に記載の情報処理方法。
【請求項１７】
前記プログラム管理工程では、前記クライアント装置内に記憶された既存のドライバのバージョンを示す情報が、前記セットアップ指示されたドライバのバージョンを示す情報より新しいことを示す場合に、前記クライアント装置のドライバ情報を、前記セットアップ指示されたドライバ情報に更新することを特徴とする請求項１４に記載の情報処理方法。
【請求項１８】
印刷装置並びにサーバ装置と通信する情報処理装置において実行される制御プログラムにおいて、
前記サーバ装置からのセットアップ指示並びにドライバ情報を認識する認識工程と、
前記サーバ装置にセットアップ指示を要求することなく、前記セットアップ指示を認識するのに応答して、前記印刷装置を制御するためのドライバ情報を前記クライアント装置内にインストールし、印刷装置の識別情報と、前記ドライバ情報と関連付けて前記クライアント装置が登録するようクライアント装置をセットアップするプログラム管理工程とを情報処理装置に実行させることを特徴とする制御プログラム。
【請求項１９】
サーバ装置並びに周辺装置と通信する情報処理装置装置において、前記サーバ装置から前記周辺装置のドライバのセットアップ指示に基づいてドライバのセットアップを行うプログラム管理手段と、
前記セットアップの終了に応答して、セットアップが正常に完了したことを確認するテストプリントを前記周辺装置に対して行わせる指示を生成させることを特徴とする情報処理装置。
【請求項２０】
サーバ装置並びに周辺装置と通信する情報処理装置装置における方法であって、
前記サーバ装置から前記周辺装置のドライバのセットアップ指示に基づいてドライバのセットアップを行うプログラム管理工程と、
前記セットアップの終了に応答して、セットアップが正常に完了したことを確認するテストプリントを前記周辺装置に対して行わせる指示を生成させる工程を有することを特徴とする情報処理方法。
【請求項２１】
前記プログラム管理工程では、前記クライアント装置に搭載されたＯＳのアプリケーションプログラミングインターフェースを介してＯＳのインストール手段を呼出し、前記アプリケーションプログラミングインターフェースを介して呼び出された前記ＯＳのインストール工程では、前記クライアント装置にドライバ情報を導入することを特徴とする請求項２０に記載の情報処理方法。
【請求項２２】
前記プログラム管理工程は、前記サーバ装置からの命令に応答して開始されることを特徴とする請求項２０又は２１に記載の情報処理方法。
【請求項２３】
前記サーバ装置からの命令は、シンプル・オブジェクト・アクセス・プロトコルを用いて記述されることを特徴とする請求項２０乃至２２のいずれかに記載の情報処理方法。
【請求項２４】
サーバ装置並びに周辺装置と通信する情報処理装置装置において実行される制御プログラムであって、
前記サーバ装置から前記周辺装置のドライバのセットアップ指示に基づいてドライバのセットアップを行うプログラム管理工程と、
前記セットアップの終了に応答して、セットアップが正常に完了したことを確認するテストプリントを前記周辺装置に対して行わせる指示を生成させる工程を情報処理装置に実行させることを特徴とする制御プログラム。
【請求項２５】
前記プログラム管理工程では、前記クライアント装置に搭載されたＯＳのアプリケーションプログラミングインターフェースを介してＯＳのインストール手段を呼出し、前記アプリケーションプログラミングインターフェースを介して呼び出された前記ＯＳのインストール工程では、前記クライアント装置にドライバ情報を導入するよう情報処理装置を実行することを特徴とする請求項２４に記載の制御プログラム。
【請求項２６】
前記プログラム管理工程は、前記サーバ装置からの命令に応答して実行されることを特徴とする請求項２４又は２５に記載の制御プログラム。
【請求項２７】
前記サーバ装置からの命令は、シンプル・オブジェクト・アクセス・プロトコルを用いて記述されることを特徴とする請求項２６に記載の制御プログラム。
【請求項２８】
クライアント装置と通信する情報処理装置において、
ドライバのセットアップ先であるクライアント装置を判断する判断手段と、
前記クライアント装置に対するドライバのセットアップの指示、並びに、前記クライアント装置に対するドライバのセットアップが正常に完了したことを確認するテストプリントを前記クライアント装置に行わせる指示を、前記クライアント装置に送信する処理を制御する送信制御手段を有することを特徴とする情報処理装置。
【請求項２９】
クライアント装置と通信する情報処理装置における方法であって、ドライバのセットアップ先であるクライアント装置を判断する判断工程と、
前記クライアント装置に対するドライバのセットアップの指示、並びに、前記クライアント装置に対するドライバのセットアップが正常に完了したことを確認するテストプリントを前記クライアント装置に行わせる指示を、前記クライアント装置に送信する処理を制御する送信制御工程を有することを特徴とする情報処理方法。
【請求項３０】
クライアント装置と通信する情報処理装置において実行される制御プログラムであって、
ドライバのセットアップ先であるクライアント装置を判断する判断工程と、
前記クライアント装置に対するドライバのセットアップの指示、並びに、前記クライアント装置に対するドライバのセットアップが正常に完了したことを確認するテストプリントを前記クライアント装置に行わせる指示を、前記クライアント装置に送信する処理を制御する送信制御工程を情報処理装置に実行させることを特徴とする制御プログラム。
【請求項３１】
クライアント装置とサーバ装置を含むネットワークシステムにおいて、
前記クライアント装置に接続された周辺装置のドライバのクライアント装置におけるセットアップ状況を管理する装置管理手段と、
前記セットアップ状況に基づいて、前記クライアント装置に対応するドライバ情報を複数のクライアント装置に送信する処理を制御する送信制御手段と、
前記サーバ装置からのセットアップ指示並びにドライバ情報を認識する認識手段と、
前記サーバ装置にドライバ情報を要求することなく、前記サーバ装置からの前記ドライバ情報を受信するのに応答して、前記周辺装置を制御するためのドライバ情報を前記複数のクライアント装置内にインストールするプログラム管理手段を有することを特徴とするネットワークシステム。
【請求項３２】
クライアント装置と通信する情報処理装置において、
ドライバのセットアップ先であるクライアント装置を判断する判断手段と、
前記クライアント装置に対するドライバのセットアップの指示、並びに、前記クライアント装置に対するドライバのセットアップが正常に完了したことを確認するテストプリントの指示を、前記クライアント装置に送信する処理を制御する送信制御手段と、
前記サーバ装置からのセットアップ指示、並びに、ドライバ情報、並びに前記テストプリントの指示を受信する受信手段と、
前記サーバ装置にドライバ情報を要求することなく、前記サーバ装置からの前記ドライバ情報を受信するのに応答して、前記周辺装置を制御するためのドライバ情報を前記クライアント装置内にインストールし、前記テストプリントの指示に基づいてテストプリントを指示する命令を発行するプログラム管理手段を有することを特徴とするネットワークシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークシステム、情報処理装置、方法、及びコンピュータ読み取り可能な記憶媒体に係り、ネットワーク上で共有された情報処理装置や周辺機器の表示や管理等を行うものに関する。
【０００２】
【従来の技術】
近年、パーソナルコンピュータ（以下、ＰＣと称する）や、プリンタ、スキャナ、デジタルカメラ等の周辺機器の普及と共に、ＬＡＮ等のネットワークも普及してきており、ネットワーク上で複数のＰＣによりプリンタ、モデム、スキャナ等を共有するニーズも増えてきた。また、これらの周辺機器を使用するためのドライバも数多く提供され、そのインストール方法も提供されてきた。
【０００３】
インストール方法としては、プリンタドライバを、ネットワークを介してクライアント装置と接続されているサーバ装置の特定のディレクトリに記憶させ、クライアント装置のドライバのインストールあるいはバージョンアップをクライアント装置からの指示に基づいて行う方法がある。また、所定のサーバ装置に格納されたドライバの更新をクライアント装置に通知し、クライアントがサーバ装置にあるドライバの送信を要求することにより、クライアントからのプルでドライバをダウンロードする技術がある。
【０００４】
また、ドライバの配信ではないが、データ配信の世界では、データ配信サーバ装置におけるデータの更新があった場合に、クライアント装置の要求を待つことなく、プッシュでデータ配信を行う技術が知られている。
【０００５】
【発明が解決しようとする課題】
周辺機器を利用可能とするためには、それぞれの機器に対応したドライバをインストールする必要がある。例えば、クライアント装置で新規にデバイスを利用可能する際には、ドライバを新規に追加する必要がある。また、既にドライバがインストールされている場合に、いかにしてドライバのバージョンアップを行なうかという問題がある。
【０００６】
また、クライアント装置について、ドライバのインストール又はバージョンアップを完了した際、実際に正常にドライバがセットアップされたかどうかを判断するのは困難であるという問題がある。
【０００７】
さらに、ドライバのインストール、バージョンアップ、セットアップの手順は、デバイス毎に異なる。また、デバイスやクライアント装置の環境に応じてドライバの種類を選択しなければならず、操作が煩雑である。また、従来の技術によれば、クライアント装置における指示に基づきドライバの追加や変更、ドライバの設定を行うクライアントにおいて、煩雑な処理を実行せねばならず、非常に作業効率が悪いという問題があった。
【０００８】
さらに近年、ネットワークシステムは大規模化しており、複数のクライアント装置に対してそれぞれドライバをインストール又はバージョンアップし、ドライバのセットアップを行う機会が多い。煩雑なドライバのインストール処理、又は、バージョンアップ処理、又は、ドライバの設定処理をクライアント装置に対して行なう場合の作業負担はさらに大きくなるという問題がある。
【０００９】
かかる問題を解決するため、本願発明は、情報をセットアップする際の作業負担を軽減し、クライアント装置に対するドライバ情報のセットアップ処理を簡便な作業で行うことを可能にするための仕組み仕組みを提供することを目的とする。
【００１０】
さらに、一台一台のユーザがドライバのセットアップ状況を意識せずインストール処理行うことができるように、複数のクライアント装置を含む印刷システムにおいて、ドライバをインストールすべき各クライアント装置のセットアップ状況に応じてドライバのインストール処理を実現するための仕組みを提供することを目的とする。
【００１１】
さらに、クライアント装置において、煩雑なインストール操作が必要でないようにするするため、サーバ装置からクライアント装置に対して、クライアント装置からの要求を待つことなく、プッシュインストールを行い、ドライバのセットアップを行うための仕組みを提供することを目的とする。
【００１２】
さらに、ドライバ情報のセットアップが正常に完了したかどうかを調べるために、ドライバ情報のインストール終了後にテストプリントを実行するための仕組みを提供することを目的とする。
【００１３】
さらに、本願において上記の課題を解決した場合には、さらなる次の問題が出てくる。プッシュインストールにより、クライアント装置にドライバを一括インストールした場合、複数のクライアント装置にドライバ情報が正常にセットアップされたか否かをクライアント装置を一台ずつ動作確認する作業の負担が大きいという問題である。そこで、本願発明の実施形態の一つは、セットアップ指示後、周辺装置が正常にセットアップされた否かを確認可能とすべく、複数のクライアント装置に対してドライバ情報をサーバ装置からプッシュインストールすると共に、テストプリントを行わせることを目的とする。
【００１４】
【課題を解決するための手段】
本願発明は、上記の目的を達成すべく次の手段を提供する。
【００１５】
本発明の実施形態として、クライアント装置と通信する情報処理装置における方法であって、印刷装置を駆動する制御プログラムである印刷装置の、ドライバのクライアント装置におけるセットアップ状況を管理する装置管理工程と、前記セットアップ状況に基づいて、前記複数のクライアント装置に対応するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とをクライアント装置に送信する処理を制御する送信制御工程とを有することを特徴とする情報処理方法が開示される。
さらに、複数のクライアント装置と通信する情報処理装置における方法において、ドライバ情報をインストールすべき複数のクライアント装置を判断する判断工程と、前記クライアント装置に接続された周辺装置を制御するドライバ情報を、前記判断工程により判断された複数のクライアントに対して配信する処理を制御する送信制御工程とを有することを特徴とする情報処理方法が開示される。
さらに、複数のクライアント装置と通信する情報処理装置における方法において、ドライバ情報をインストールすべき複数のクライアント装置を判断する判断工程と、前記クライアント装置に接続された印刷装置を制御するドライバ情報と、セットアップされた印刷装置に対するテストプリントの指示とを、前記判断工程により判断された複数のクライアントに対して配信する処理を制御する送信制御工程とを有することを特徴とする情報処理方法が開示される。
さらに、刷装置並びにサーバ装置と通信する情報処理装置における方法において、前記サーバ装置からのセットアップ指示並びにドライバ情報を認識する認識工程と、前記サーバ装置にセットアップ指示を要求することなく、前記セットアップ指示を認識するのに応答して、前記印刷装置を制御するためのドライバ情報を前記クライアント装置内にインストールし、印刷装置の識別情報と、前記ドライバ情報と関連付けて前記クライアント装置が登録するようクライアント装置をセットアップするプログラム管理工程を有することを特徴とする情報処理方法が開示される。
【００４１】
【発明の実施の形態】
以下、図面を参照して、本発明のネットワークシステム、情報処理装置、方法、及び制御プログラムコンピュータ読み取り可能な記憶媒体の実施の形態について説明する。
【００４２】
図１は、本発明の実施形態に用いられる情報処理装置の好適な一例を示すＰＣの構成を説明するブロック図である。同図において、１はシステムバスであり、当該システムバス１を介して以下に述べる各構成ブロックが接続されている。なお、本願の各実施形態においては、ドライバのインストール対象となるクライアント装置、クライアント装置に対してドライバのセットアップ指示を行うインストールサーバ装置の好適な一例として下記の構成を有するＰＣを用いている。
【００４３】
２はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。３はプログラムメモリ（以下、ＰＭＥＭと称する）であり、後述する処理のためのプログラムを適宜ハードディスク１０から選択／読込みし、ＣＰＵ２にて実行する。また、キーボード１２から入力されたデータは、テキストメモリでもあるＰＭＥＭにコード情報として格納される。
【００４４】
４は通信制御部であり、通信ポート５における入出力データの制御を行う。通信ポート５から出力された信号は、通信回線６を経由して、ネットワーク上の他の装置（図１では符号７を付す）の通信ポートに伝えられる。ネットワーク上で共有されているプリンタやスキャナ等とのやり取りは、この通信制御部４を介して行われる。本実施の形態では、ＬＡＮ等のネットワークに関して記述するが、この通信制御部４に接続される通信ポート５及び通信回線６が一般の公衆回線であっても本発明が適応されることは言うまでもない。
【００４５】
８は外部記憶装置制御部である。９、１０はデータファイル用のディスクであり、例えば９はフロッピーディスクＦＤであり、１０はハードディスクＨＤである。クライアント装置のＨＤ１０にはドライバインストールモジュールが記憶されており、サーバ装置のＨＤ１０には、クライアント装置に対するドライバのセットアップを行うためのインストーラが搭載されている。そして、各プログラムは必要に応じて各装置のＨＤ１０からＰＭＥＭ３にロードされ、ＣＰＵ２において実行される。
【００４６】
１１は入力制御部（入力制御手段）であり、キーボード１２、マウス１３等の入力装置（入力手段）が接続される。ユーザは、キーボード１２を操作することによりシステムの動作指令等を行うことができる。また、マウス１３はＣＲＴ１６上で画像情報を加工指示するためのポインティング・デバイスＰＤとして機能し、これによりＣＲＴ１６上のカーソルをＸ，Ｙ方向任意に移動してコマンドメニュー上のコマンド・アイコンを選択して処理の指示を行う他、編集対象の指示、描画位置の指示、ＧＵＩコマンドの入力等も行うことができる。例えば、画面上の所定の位置にＰＤを用いてカーソルを合わせ、この状態でＰＤの所定の部位をユーザが押下した場合、本装置に搭載されるドライバインストールモジュールは、当該入力に応答して、種々の命令を発行するなどの動作する。また、ドライバインストールモジュールは送信制御手段の好適な一例であり、所定の命令に応じて、ＯＳが通信制御部を操作し、所望の情報の送信処理を行わせるなど通信制御部を制御することができる。
【００４７】
１４はビデオイメージメモリ（ＶＲＡＭ）であり、１５は表示出力制御部であり、１６はＣＲＴ（Cathode-Ray Tube）である。ＣＲＴ１６に表示されるデータは、ＶＲＡＭ１４上にビットマップデータとして展開される。
【００４８】
１７はプリンタ制御部であり、接続されているプリンタ１８に対するデータの出力制御を行う。１Ａは、画像読み取り装置制御部であり、接続されている画像読み取り機器１Ｂの制御を行う。
【００４９】
なお、本実施の形態でＰＭＥＭ３に記憶しているプログラムは、ハードディスク１０やフロッピーディスク９等の記憶媒体に記憶されていてもよい。さらに、ネットワークに接続されている他の装置上に記憶されていてもよい。
【００５０】
（第１の実施の形態）
以下、図２〜９を参照して、周辺機器のドライバのセットアップを行う場合について説明する。図２は、サーバ装置におけるドライバのセットアップを行う処理動作を示すフローチャートである。まず、ステップＳ２０１で、情報処理装置の好適な一例であるサーバ装置は、サーバ装置内の装置管理モジュール（装置管理手段）により、ネットワーク上のＰＣ及び周辺機器の接続状況情報を取得し、その情報を記憶する。周辺機器は例えば、インクジェットプリンタ、デジタルカメラ、プリンタ機能を有する複写機などを含む。
【００５１】
次に、ステップＳ２０２で、サーバ装置は、各ＰＣの周辺機器のセットアップ状況を示す情報を取得して認識する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、ＦＡＸ等のドライバを含む。セットアップ状況情報の取得方法として、例えば、各ＰＣ上で自機にインストールされているドライバ情報を取得するモジュール（装置管理手段）を起動することで周辺機器並びに他のＰＣと通信し、情報を収集して、それらの情報をネットワークを通じて通信することが考えられる。ドライバ情報とは、例えば、周辺機器を制御するためのデバイスドライバ、周辺機器のドライバのセットアップ状況とは、登録されている周辺機器の登録名、当該周辺機器を動作させるためのドライバ名（ドライバのシステムへの登録名）、ドライバのバージョン情報、ドライバのモジュール名などを含む。装置名はプリンタ識別情報の好適な一例である。ドライバ名は、ドライバ識別情報の好適な一例である。例えば、プリンタ名、ドライバ名は、文字列以外の情報処理装置が認識可能な数字、記号などの識別子を含む。
【００５２】
図３は、セットアップされているドライバ情報構造体の一例を示す図である。ＰＣ名称、ＩＰアドレス、ＯＳ種類、ユーザ名、デバイスドライバ数、及び各デバイスドライバの情報から構成される。各デバイスドライバ情報は、プリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有情報で構成される。例えば、１番目に登録されているプリンタは、ドライバ名がｐｒｉｎｔｅｒ２０００、バージョンが１．００．００、出力ポートがローカル、共有情報が共有設定（ＯＮ）となっている。
【００５３】
図４は、ネットワーク上のＰＣ及び周辺機器を表示する画面の一例を示す図である。４０１はメニュー、４０２はツールバー、４０３はネットワーク上のＰＣ及び周辺機器を表すアイコンが表示されるメインウインドウである。
【００５４】
４０２ａ〜４０２ｇは、ツールバー４０２においてＰＣ及び周辺機器を操作して行う各機能を表すアイコンである。例えば、４０２ａは選択されたスキャナから画像データを読み込み、該画像データを選択されたプリンタに出力するコピー機能を実行するためのアイコンである。４０２ｂはＦＡＸ機能、４０２ｃは画像データ読み込み機能、４０２ｄは画像データを読み込み、ＯＣＲ処理を行う機能、４０２ｅはＦＡＸ受信データ及び配信データを管理する機能、４０２ｆは情報の更新処理を行う機能、４０２ｇは更新処理を中止する機能を実行するためのアイコンである。
【００５５】
４０３ａ乃至４０３ａｅはネットワーク上で共有されているＰＣ及び周辺機器を表すアイコンである。これらのアイコン４０３ａ乃至４０３ａｅは、ＰＣ、プリンタ、スキャナ、ＦＡＸモデムといったデバイス種類、或いは「処理中」、「エラー発生」等のステータスによってアイコンが変更されて表示される。４０３ａは自機を表すアイコン、４０３ｂは自機がログオンしているドメインを表すアイコンである。自機は特別な機器であるために、他のＰＣとは区別して表示される。
【００５６】
また、アイコン４０３ａｄのようにネットワーク上では共有されているが、ドライバがインストールされていないＰＣ及び周辺機器はアイコンがグレー表示される。また、アイコン４０３ｄ、４０３ｅのように接続機器があるが展開して表示されていない場合には「＋」マークが、アイコン４０３ａｂのように展開されている場合には「−」マークが表示される。アイコン４０３ｃ、４０３ｇのように接続機器が何もない場合にはマークが付加されない。
【００５７】
このように画面でネットワーク上の全てのＰＣ及び周辺機器の接続状態、さらにはステータスを確認することができる。この例では、画面の都合上、全てのアイコンが表示されていないが、画面横に配置されているスクロールバーを使って全てのＰＣ及び周辺機器を確認することができる。
【００５８】
図５は、ネットワーク上の各ＰＣのドライバセットアップ状況を表示する画面の一例を示す図である。５０１はメニュー、５０２はツールバー、５０３はネットワーク上のＰＣ及び周辺機器を表すアイコンが表示されるメインウインドウである。
【００５９】
５０２ａ〜５０２ｇは、ツールバー５０２においてＰＣ及び周辺機器を操作して行う各機能を表すアイコンであり、その内容は、図４に示すアイコン４０２ａ`４０２ｇと同様である。５０３ａ〜５０３ｎはネットワーク上で共有されているＰＣ及び周辺機器を表すアイコンである。ここで、周辺機器のドライバ情報が表示され、確認することができる。
【００６０】
図２のフローチャートに説明を戻すと、ステップＳ２０３で、インストールサーバ装置内のインストーラは、周辺機器のドライバをセットアップするか否かを判定する。例えば、図４においてプリンタ４０３ａｄを選択して、メニューからドライバのセットアップ指示を行うことができる。ここで、ドライバのセットアップ指示がなかった場合は、この処理を終了する。
【００６１】
ドライバのセットアップ指示があった場合、ステップＳ２０４に移行し、ユーザにセットアップするドライバを指示させる画面を表示する。図６はセットアップするドライバを選択するための画面の一例であり、ここで製造元を選択して、ユーザは対象プリンタを指示する。また、ユーザがセットアップ情報のあるフォルダを指示することもできる。
【００６２】
さらに、ステップＳ２０５で、ＰＤからの入力に基づいて、インストールサーバ装置内のインストーラは、ドライバをセットアップするクライアント装置を選択する。図７はドライバをセットアップするクライアント装置を選択するための画面の一例であり、ここでドメイン、及びクライアント装置を選択する。この際、複数のクライアント装置を選択することができる。
【００６３】
そして、インストールサーバ装置内のインストーラは、ＰＤなどからＯＫの指示があると、ステップＳ２０６に移行し、指示されたドライバを指示された各クライアント装置にセットアップする必要があるか否かを、それぞれのクライアント装置からのドライバ情報から判定する。指示されたドライバが既にインストールされている等してセットアップする必要がない場合は、インストール処理を行わない。
【００６４】
インストールサーバ装置内のインストーラは、セットアップする必要がある場合、ステップＳ２０７に移行し、ステップＳ２０５で指示されたクライアント装置に対してステップＳ２０４で指示されたドライバのセットアップ処理を実行するように指示を送るようＯＳを制御する。そして、その指示に従ってドライバのセットアップ処理が実行される。セットアップ指示は、ドライバセットアップ指示構造体とセットアップ指示命令を含む。図８はセットアップ指示に含まれるドライバセットアップ指示構造体の一例であり、デバイス種類、ドライバ名、バージョン情報、出力ポート、セットアップ情報等から構成される。なお、セットアップ情報は、この構造体と共に送られてもよいが、ネットワーク上の共有フォルダに記憶しておいてそのパス名を指示するようにしてもよい。
【００６５】
次に、ステップＳ２０８で、インストールサーバ装置内のインストーラは、ドライバのセットアップ処理が正常終了したか否かを判定する。判定方法としては、ドライバのインストール処理が正常に行われたかどうか判定すると同時に、実際にそのドライバを使用して正常動作するかどうかで判定する。例えば、ドライバが正常にインストールできた場合には、セットアップ指示をしたクライアント装置に対して正常終了したメッセージが送信されるようにして、画面上で確認できるようにする。
【００６６】
プリンタの場合には、さらにテストプリントを実行することで、その印刷結果を見て、正常にインストールできたかどうかを判定できるようにしてもよい。図９は、ドライバのセットアップ確認印刷の一例を示す。このように、印刷要求元である出力元クライアント装置名、ドライバ名、バージョン情報等を印刷することで、どのクライアント装置上でセットアップ処理が正常に完了したかを確認することができる。正常終了した場合は、処理を終了する。
【００６７】
正常終了しなかった場合、ステップＳ２０９に移行し、インストールサーバ装置内のインストーラは、正常終了しなかったクライアント装置に対して再度実行指示をするか否かを判定する。再実行の指示があった場合は、ステップＳ２０４に戻り、再実行の指示がなかった場合、処理を終了する。
【００６８】
以上述べたように、ネットワーク上で共有されているクライアント装置及び周辺機器が表示されている画面において、周辺機器のドライバがインストールされていない場合、簡単な操作でドライバをインストールできると共に、実際にインストールされたことを確認することができ、ネットワーク上での作業効率を大幅に向上させることができる。
【００６９】
（第２の実施形態）
図３９は、本実施形態を示す印刷システムの一例を示す図である。クライアントの好適な一例である３８１に示すクライアント装置Ａ、３８２に示すクライアント装置Ｂ、３８３に示すクライアント装置Ｃ、サーバ装置の好適な一例であるインストールサーバ装置３８５、ウェブサーバ装置３８６がネットワークの好適な一例であるＬＡＮ（ローカルエリアネットワーク）３６０を介して接続されている。本実施形態のインストールサーバ装置３８５、ウェブサーバ３８６は、クライアント装置である３８１乃至３８３は情報処理装置の好適な一例であるＰＣで構成されており、その内部構造は図１と同様である。
【００７０】
図３２は、インストールサーバ装置３８５からドライバのリモートインストール指示をする時のインストールサーバ装置３８５における一実施例のフローチャートである。この処理は、インストールサーバ装置３８５に搭載されたリモートインストール機能を有するインストーラ（送信制御手段）が起動された場合に開始される。以下、インストールサーバ装置３８５におけるインストーラの動作を示す。以下、クライアント装置Ａ、クライアント装置Ｂ，クライアント装置Ｃをまとめて「各クライアント装置」と呼ぶ。
【００７１】
まず、インストールサーバ装置３８５内のインストーラは、ステップＳ３２０１でドライバを各クライアント装置にリモートインストールの指示があったかどうか判定する。リモートインストールの指示は、例えば、ユーザが、図１における各クライアント装置のＣＲＴ１６に表示されるグラフィカルユーザインタフェースを参照して、マウス１３やキーボード１２を操作すると、当該操作に応答してセットアップ指示が入力制御部１１に入力される。ここで、インストールサーバ装置３８５内のインストーラは、リモートインストールの指示がないと判断した場合は、処理を終了する。インストールサーバ装置３８５内のインストーラは、リモートインストールする場合はステップＳ３２０２に移行する。一方、Ｓ３２０１でインストールサーバ装置３８５内のインストーラがリモートインストールの指示があったと判断した場合は、ステップＳ３２０２に進んでリモートインストールするドライバのセットアップ情報を作成する。ドライバのセットアップ情報とは、インストールするドライバの識別情報の好適な一例であるドライバ名、ドライバのバージョンを示す情報の好適な一例であるドライバのバージョン番号、装置の識別情報の好適な一例であるプリンタ名、出力ポート名、ポートを利用可能とするためのモジュールなどの情報で構成される。また、プリンタ名は、各クライアント装置のＯＳのレジストリ等に登録される登録名である。図３３はドライバ情報を設定する画面の一例である。
【００７２】
３３１はプリンタ名指示部である。プリンタ名指示部３３１では各クライアント装置に登録するためのプリンタ名を選択又は入力可能である。ネットワーク上で検索された複数のプリンタをプリンタ名指示部３３１で指示できるようにしてもよい。次に、３３２はポート指定部である。ポート指定部では、３３４ポートの追加指示部をマウスを用いて押下することにより、ポートを追加できる。図３３は、プリンタのネットワーク上の所在を示す情報としてのＩＰアドレスと、プリンティングプロトコルとして、ｌｐｒを用いる旨を指定し、これらに対応付けられる論理的なポートが作成されている様子を示している。ｌｐｒは、ＢＳＤ系のＯＳで開発された伝統的な印刷管理プログラムであるが、他の印刷管理プログラムを用いてもよい。３３３は、ドライバの指定部であり、各クライアント装置にインストールするためのドライバを指示するためのものである。ドライバの追加指示部３３５を操作することにより、ドライバ指定できる。
【００７３】
上記は、ＴＣＰ／ＩＰとｌｐｒを用いて、ネットワークプリンタに対して印刷処理させる場合のポート作成の例であった。ポートは、ローカルプリンタに対しても、作成出来る。例えば、クライアント装置のローカルプリンタを設定する場合には、ＣＯＭポートやＬＰＤポートを指定し、これに基づきセットアップ状況情報を作成してもよい。
【００７４】
また、ポートとして、プリントサーバ経由での印刷を示す設定も可能である。例えば、プリントサーバ３８７のプリントサーバ名が「ＳＶＰＣ１」であり、プリンタ３８４のプリンタ名がＬＡＳＥＲ９５０である場合、「￥￥ＳＶＰＣ１￥ＬＡＳＥＲ９５０」とポートを指定すれば、ＳＶＰＣ１をプリントサーバとしてＬＡＳＥＲ９５０に印刷を行わせるためのポートが設定される。
【００７５】
さらに上記の処理において、ＯＳの種類やＯＳのバージョンについては、インストールサーバ装置３８５が、予め収集してインストールサーバ装置３８５内に記憶した各クライアント装置の情報に基づいて、自動判定を行っている。しかし、各クライアント装置に搭載されているＯＳの自動判定が出来ない場合、インストーラがＳ３２０２でセットアップ情報を生成する前に、ユーザがＯＳの種類やバージョン、ＣＰＵのアーキテクチャを指定できるように、図３３に示すグラフィカルユーザインタフェースを変更してもよい。
【００７６】
次にステップＳ３２０３に移行して、図３４に示すように、インストールサーバ装置３８５内のインストーラは、選択したドライバをインストールするクライアント装置を選択する。同時に複数のクライアント装置を選択することも可能である。そして、インストールするクライアント装置を選択した後に、インストールサーバ装置３８５内のインストーラ（判断手段）は、選択されたＰＣを判断し、ステップＳ３２０４の処理を行う。ここで、インストールサーバ装置３８５内のインストーラは、各クライアント装置上でドライバのインストールが終了した際にテストプリントを実行するかどうか設定する。インストールサーバ装置３８５内のインストーラは、テストプリント実行を設定しない場合はステップＳ３２０６の処理を行う。ここで、テストプリント実行を設定する場合は、ステップＳ３２０５に移行して、インストールサーバ装置３８５内のインストーラは、セットアップ情報にテストプリント指示情報を追加記憶させる。
【００７７】
図３４は、ドライバをセットアップするクライアント装置とテストプリントを指示する画面の一例である。このように同時に複数のクライアント装置を選択することも可能である。また、テストプリント実行のＯＮ／ＯＦＦも設定できる。この例ではドメイン内のクライアント装置を選択するようになっているが、これ以外の指定方法でも可能である。
【００７８】
ステップＳ３２０６では、サーバ装置内のインストーラ（判断手段）は、上述した工程で設定されたセットアップ情報とインストールするドライバを指示された一台又は複数のクライアント装置を判断し、判断されたクライアント装置に送信して処理を終了する。
【００７９】
図３７は、各クライアント装置内の好適な一例としてのソフトウェアのモジュールを示す図である。ここで、一般的なドライバのインストール処理の例を説明する。クライアント装置には、ＯＳが搭載されている。各クライアント装置内の構成は、ユーザ領域３７１とＯＳ３７７領域に分割されている。ドライバインストールモジュール３７１は、ＯＳ上で動作するアプリケーションとして用意され、プログラム管理手段と認識手段の好適な一例である。３７９のシステムプログラムは、クライアント装置内に記憶されているドライバ名、バージョン番号、プリンタ名、ドライバのシステム内のディレクトリをレジストリ３７６に登録している。そして、ドライバインストーラモジュール（認識手段）は、ＯＳのＡＰＩ（アプリケーションプログラミングインタフェース）を介して、レジストリ３７６内の情報を認識することが出来る。ここでは、ドライバインストールモジュール３７１は、外部装置から受信した命令に応答して動作するように設計されている。ドライバインストールモジュール３７１（プログラム管理手段）は、ＡＰＩを介して、システムインストーラ３７４（ＯＳのインストール手段）を呼び出す。システムインストーラは、ＯＳの一機能として用意されており、外部から導入してユーザ領域３７６に記憶されているドライバ３７２をシステムファイル領域３７５に複写或いは移動する。このシステムファイル領域の一部は、ドライバを使用するデバイスの各種情報を登録するためのレジストリ領域３７６が確保されている。また、ドライバインストーラモジュール３７１は、システムインストーラ３７４を呼び出して、デバイス情報をレジストリ領域に格納させることができる。
【００８０】
図３５は、インストールサーバ装置３０５からドライバのリモートインストール指示をする時の各クライアント装置における一実施例のフローチャートである。各クライアント装置では操作者は必要ない。既に起動されているドライバインストールするためのモジュール（以下、ドライバインストールモジュールという。）が、インストールサーバ装置３０５から指示がくることを監視している。
【００８１】
ここでは、ドライバインストールモジュールをクライアント装置において常駐させているものとしている。そして、ドライバインストールモジュールは、インストールサーバ装置３０５から指示を待っている。インストールサーバ装置３８５からの遠隔の起動命令に応答して、ドライバインストールモジュールを起動させ、自動的にインストール処理を開始させるようにしてもよい。ＲＰＣの一例であるＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｓｅｓｓ  Ｐｒｏｔｏｃｏｌ）を用いて遠隔的にドライバインストールモジュールを呼び出すと好適である。或いは、インストールサーバ装置３８５から各クライアント装置が再起動の命令を受信し、各クライアント装置が再起動した際に、ドライバインストールモジュールが起動するように各クライアント装置を設定し、再起動後にドライバインストールモジュールがセットアップ指示を実行するようにしてもよい。これにより、ドライバインストールモジュールを常に常駐させるよりも、ＲＡＭなどの資源を有効活用でき、セキュリティを向上できる。
【００８２】
以下、ドライバインストールモジュールにおける処理を説明する。
【００８３】
まず、ドライバインストールモジュール（認識手段）は、ステップＳ３５０１でインストールサーバ装置３０５からインストール指示があるかどうかを認識して判定する。指示がない場合はインストール処理を終了する。インストール指示があった場合はステップＳ３５０２に移行する。ステップＳ３５０２では、ドライバインストールモジュールは、セットアップ情報に記憶されている出力ポートが既に設定されているかどうか判断する。指示された出力ポートが既に存在する場合には、ステップＳ３５０４に移行する。出力ポートが存在しない場合にはステップＳ３５０３に移行して、ドライバインストールモジュールは、指定された出力ポートをセットアップする。具体的には、例えば、ＴＣＰ／ＩＰ上でｌｐｒを使用して印刷処理を行う場合には、ドライバインストールモジュールはｌｐｒモジュールを組み込みをＯＳに指示し、対応する論理的なポートを作成する。ここで、Ｓ３２０２で作成されたセットアップ情報に含まれるｌｐｒモジュールを使用すると好適である。そして、ステップＳ３５０４に移行する。
【００８４】
ステップＳ３５０４では、ドライバインストールモジュールは、インストール指示されたドライバ名並びにバージョンに対応するドライバが既に設定されているかどうか判定する。指示されたドライバが既に設定されている場合にはステップＳ３５０６に移行する。指示されたドライバが設定されていない場合には、ステップＳ３５０５に移行する。Ｓ３５０５では、ドライバインストールモジュールは、ドライバのインストールを実行する。ここでは、Ｓ３２０２で作成されたセットアップ情報に含まれるドライバプログラムの本体を、クライアント装置内の所定の記憶領域に自動的に格納するようドライバインストールモジュールがＯＳに対して指示してインストール処理を制御する。ドライバインストール処理が終了すると、ステップＳ３５０６に移行する。
【００８５】
そして、ステップＳ３５０６では、インストール指示されたプリンタが既に存在するかどうか判定する。本実施形態においては、各クライアント装置のＯＳのレジストリに既に登録されてる名前を検索し、新しく登録しようとするプリンタ名と同一のものがあるか否かを判断している。同一のプリンタ名が存在しない場合にはステップＳ３５０７に移行して、指定されたプリンタ名でプリンタの設定を行う。本実施形態においては、ドライバインストーラモジュールは、ＯＳのレジストリに新たなプリンタとして当該プリンタ名を登録するようＯＳに指示する。そして、ドライバインストーラモジュールは、当該プリンタ名とドライバとの関連付けを行うようＯＳを制御する。プリンタが既に存在する場合にはステップＳ３５０８に移行する。ＯＳは、同一名称のプリンタはセットアップすることは出来ないので、例えば、枝番号などを付加することで異なるプリンタ名を自動的に作成する。そして、ドライバインストーラモジュールは、そのプリンタ名でプリンタのドライバとプリンタ名の関連付けなどの設定を行うようＯＳを制御する。次にステップＳ３５０９に移行して、ドライバインストーラモジュールは、テストプリント実行指示があるかないかを判定する。ドライバインストーラモジュールは、テストプリント実行指示がない場合にはインストール処理を終了する。ドライバインストールモジュールは、テストプリント実行指示がある場合にはインストール完了したプリンタに対してテストプリント処理を実行させる。具体的には、ドライバにおいて、自クライアント装置並びに印刷対象と成るプリンタ名、ドライバ名などを含む文書を出力する一つのジョブを生成し、当該ジョブをプリンタに送信して印刷処理を行わせる。或いは、自クライアント装置並びに印刷対象と成るプリンタ名（印刷要求元）、ドライバ名などを含む文書を出力をプリンタ側で生成するようなプリンタが認識可能な命令をプリンタに対して送信する。
【００８６】
なお、Ｓ３２０６でドライバ情報としてドライバ本体のプログラムを送信している。他の実施形態として、インストールサーバ装置３８５はドライバを送信する代わりに、インストールすべきドライバのネットワーク上の所在を示すＵＲＬをセットアップ情報と共に送信するような実施形態をとってもよい。ドライバインストールモジュールは、当該ＵＲＬが示すウェブサーバ３８６からドライバをダウンロードし、インストール処理をＯＳに指示してもよい。
【００８７】
上記実施形態によれば、インストールサーバ３０５において、一括セットアップ指示を行うだけで、セットアップ情報が生成され、これに基づいてクライアント装置で自動的或いは半自動的にインストール処理が行われる。これにより、ドライバのインストール、バージョンアップ、セットアップの手順などのデバイス毎に異なる操作を、各クライアント装置を一台ずつ回って行う必要が無くなるという効果がある。さらに、デバイスやクライアント装置の環境、新規インストール又は更新したいドライバのバージョン等に応じてドライバの種類を適切に選択し、プリンタ名を指定してクライアント装置に登録指示し、登録するプリンタをドライバと関連付けてような煩雑な操作を、各クライアント装置を一台ずつ回って行う必要がなくなるという効果がある。
【００８８】
さらに、上記実施形態によれば、テストプリントを行わせることで、インストールサーバ装置３０５において、例えば、サービスマンが複数のクライアント装置に対してドライバのセットアップ指示を行い、クライアント装置のドライバを追加又は更新する際においても、クライアント装置一台ごとに周辺装置の動作確認をする必要がなくなる。例えば、テストプリントを確認するだけで、各クライアント装置へのドライバの設定が正常に終了したか、プリントサーバが正常に動いているか等、セットアップしたプリンタが正常に印刷処理できるように印刷システムが設定されたか否かを、クライアント装置の設定を一台ずつ回って確認することなく、プリンタに出力されたテストプリントを見るだけで判断することが出来るという効果がある。
【００８９】
（第３の実施形態）
以下、前述した実施形態と異なる部分を示す。図３６は、図３５のＳ３５０４並びにＳ３５０５に対応する処理の変形例である。インストールサーバ装置３０５からのセットアップ指示に基づき、ポートのセットアップの終了後、クライアント装置におけるドライバインストールモジュールがドライバをインストールする処理に移行する際に呼び出される処理である。この処理が終了すると、プリンタの登録処理を呼び出す。
【００９０】
本実施形態においては、インストールサーバ装置３８５において、ドライバをセットアップする指示としてドライバの更新を選択した場合には、セットアップ状況を示す情報の好適な一例であるドライバセットアップ情報にドライバ更新指定の情報が格納され、インストールサーバ装置からクライアント装置に送信されるものとする。
【００９１】
Ｓ３６０１で、ドライバインストールモジュールは、ドライバセットアップ情報において指定されたドライバ名のドライバがあるかどうかを判定する。ドライバインストールモジュールが、指定されたドライバ名のドライバがないと判断した場合は、Ｓ３６０２でドライバの新規インストール処理を行う。具体的には、指定されたドライバ名のドライバを構成するドライバモジュールをクライアント装置の所定の記憶領域に記憶する。一方、ドライバインストールモジュールが、Ｓ３６０１で指定されたドライバ名のドライバがあると判断した場合は、Ｓ３６０３の処理を行う。Ｓ３６０３では、ドライバインストールモジュールは、クライアント装置にある既存のドライバのバージョンが、ドライバセットアップ情報に指定された更新しようとするドライバより旧いか否かを判定する。Ｓ３６０３で，ドライバインストールモジュールが、クライアント装置にある既存のドライバのバージョンはドライバセットアップ情報に指定された更新しようとするドライバより旧いと判定した場合は、Ｓ３６０４でドライバ更新処理を行うようにドライバインストールモジュールがＯＳに指示する。そして、ドライバインストールモジュールの指示を受けたＯＳは、ドライバモジュールをクライアント装置の所定の記憶領域に記憶し、Ｓ３６０６に移行する。一方、Ｓ３６０４で、ドライバインストールモジュールは、クライアント装置にある既存のドライバのバージョンは、ドライバセットアップ情報に指定された導入しようとするドライバのバージョンより新しいと判断した場合は、処理を終了する。ドライバインストールモジュールは、Ｓ３６０６で、既存ドライバのモジュールが残っているか否かを判定する。Ｓ３６０６で、ドライバインストールモジュールが、既存ドライバのモジュールが全て新しいドライバにより上書きされて残っていないと判断した場合は処理を終了する。Ｓ３６０６で、ドライバインストールモジュールが、既存ドライバのモジュールの一部又は全てが残っていると判断した場合は、既存ドライバモジュールの削除の処理を行い、削除が終了すると、処理を終了する。
【００９２】
（第４の実施形態）
以下、前述した実施形態と異なる部分を示す。図３８は、図３２のＳ３２０６に対応する処理の変形例である。インストールサーバ装置３０５からのセットアップ指示に基づき、ポートのセットアップの終了後、クライアント装置におけるドライバインストールモジュールがドライバをインストールする処理に移行する際に呼び出される処理である。この処理が終了すると、プリンタの登録処理が呼び出される。
【００９３】
Ｓ３８０１では、インストールサーバ装置３８５内のインストーラは、予め収集してインストールサーバ内に記憶されているセットアップ状況情報の好適な一例であるドライバセットアップ情報を参照し、クライアント装置内のドライバ名並びにバージョン情報を検索する。そして、Ｓ３８０２では、インストールサーバ装置３８５内のインストーラは、ドライバセットアップ情報において指定されたドライバ名のドライバがクライアント装置内にあるかどうかを判定する。Ｓ３８０２で、インストールサーバ装置３８５内のインストーラが、指定されたドライバ名のドライバがないと判断した場合は、Ｓ３８０４でクライアントに対してサーバ装置から能動的にドライバ配信通知を行うようＯＳの送信処理を制御する。一方Ｓ３８０２で、ドライバインストールモジュールが、指定されたドライバ名のドライバがあると判断した場合は、Ｓ３８０３の処理を行う。Ｓ３８０３では、ドライバインストールモジュールは、クライアント装置にある既存のドライバのバージョンが、ドライバセットアップ情報に指定された更新しようとするドライバより旧いか否かを判定する。Ｓ３８０３で，インストールサーバ装置３８５内のインストーラ（送信制御手段）が、クライアント装置にある既存のドライバのバージョンはドライバセットアップ情報に指定された更新しようとするドライバより旧いと判定した場合は、Ｓ３８０４でドライバ配信通知を行うように、インストールサーバ装置３８５内のインストーラがＯＳに指示することで、配信処理を制御する。そして、ドライバインストールモジュールの指示を受けたＯＳは、Ｓ３８０５でクライアント装置からＡＣＫ応答を受けた場合、ドライバ情報をクライアント装置に対して送信しＳ３８０７、処理を終了する。Ｓ３８０５でクライアント装置からＡＣＫ応答を受けなかった場合、インストールサーバ装置３８５内のインストーラは、エラー表示して処理を終了する。上記の処理は、各ＰＣごとに、繰り返せば、複数のＰＣに対して、クライアント装置側からの要求を受けることなく、ドライバをサーバ側から能動的に配信することが出来る。
【００９４】
上記の処理により、セットアップ指示を一回行うだけで、ドライバの削除、更新が自動的に実行でき、大幅なドライバの更新処理の作業負担が軽減できる。また、クライアント装置内のドライバ名並びにバージョン情報をセットアップ状況情報により把握することで、クライアント装置側に新しく組み込む必要のあるドライバを選択的に配信することが出来る。
【００９５】
（第５の実施の形態）
以下、図１０〜１９を参照して、周辺機器のドライバのチェック、さらには削除を行う場合について説明する。図１０は、ドライバのチェック、さらには削除を行う処理動作を示すフローチャートである。まず、ステップＳ１００１で、ネットワーク上の全てのクライアント装置及び周辺機器の接続状況情報を取得し、その情報を記憶する。
【００９６】
次に、ステップＳ１００２で、自機にインストールされている周辺機器のドライバのセットアップ状況情報を取得する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、ＦＡＸ等のドライバのことである。
【００９７】
図１１は、セットアップされているドライバ情報構造体の一例を示す図である。ＰＣ名称、ＩＰアドレス、ＯＳ種類、ユーザ名、デバイスドライバ数、及び各デバイスドライバの情報から構成される。各デバイスドライバ情報は、プリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有情報で構成される。例えば、１番目に登録されているプリンタは、ドライバ名がＬＡＳＥＲ−８３０、バージョンが１．００．００、出力ポートがローカル接続、共有情報が共有設定（ON）となっている。
【００９８】
図１２は、ネットワーク上のクライアント装置を含むＰＣ及び周辺機器を表示した画面の一例を示す図である。３０１はメニュー、３０２はツールバー、３０３はＰＣ及び周辺機器を表すアイコンが表示されるメインウインドウである。
【００９９】
３０２ａ〜３０２ｉは、ツールバー３０２においてＰＣ及び周辺機器を操作して行う各機能を表すアイコンである。例えば、３０２ａは選択されたスキャナから画像データの読み込み、該画像データを選択されたプリンタに出力するコピー機能を実行するためのアイコンである。３０２ｂはＦＡＸ機能、３０２ｃは画像データ読み込み機能、３０２ｄは画像データを読み込み、ＯＣＲ処理を行う機能、３０２ｅはＦＡＸ受信データ及び配信データを管理する機能、３０２ｆは表示切り替え機能、３０２ｇは表示画面編集機能、３０２ｈは情報の更新処理を行う機能、３０２ｉは更新処理を中止する機能を実行するためのアイコンである。
【０１００】
３０３ａ〜３０３ｑはネットワーク上で共有されているＰＣ及び周辺機器を表すアイコンである。これらのアイコン３０３ａ〜３０３ｑは、ＰＣ、プリンタ、スキャナ、ＦＡＸモデムといったデバイス種類、或いは「処理中」、「エラー発生」等のステータスによってアイコンが変更されて表示される。３０３ｃは自機を表すアイコン、３０３ｂは自機がログオンしているドメインを表すアイコンである。自機は特別な機器であるために、他のＰＣとは区別して先頭に表示される。その他のＰＣについては、アルファベット順に昇順或いは降順で表示される。
【０１０１】
また、アイコン３０３ｐのようにネットワーク上では共有されているが、ドライバがインストールされていないＰＣ及び周辺機器はアイコンがグレー表示される。また、アイコン３０３ｊのように接続機器があるが展開して表示されていない場合には「＋」マークが、アイコン３０３ｈ、３０３ｋ、３０３ｎのように展開されている場合には「−」マークが表示される。アイコン３０３ｑのように接続機器が何もない場合はマークが付加されない。
【０１０２】
このように該画面でネットワーク上の全てのＰＣ及び周辺機器の接続状態、さらにはステータスを確認することができる。この例では、画面の都合上、全てのアイコンが表示されていないが、画面横に配置されているスクロールバーを使って全てのＰＣ及び周辺機器を確認することができる。
【０１０３】
図１３は、図１２に示す状態から、アイコン３０３ｈで表されるＰＣに接続されてネットワーク上で共有設定されていたアイコン３０３ｉで表されるプリンタの共有設定が解除された、或いはドライバが削除された場合に表示される画面の一例を示す図である。同図に示すように、アイコン３０３ｉには、「使用不可」を示す表示「×」印が表示される。この状態では、ドライバがインストールされているが、実際の出力先が存在しないので出力できない。
【０１０４】
図１０のフローチャートに説明を戻すと、ステップＳ１００３で、周辺機器のドライバをチェックするか否かを判定する。例えば、図１４に示すような画面が表示されて、チェックするデバイスを選択することでドライバのチェック指示を行うことができる。この画面で、チェックした際に対応するデバイスがないために不要だと判定された場合、メッセージ表示するか否かの設定も併せて指定することができる。ここで、ドライバのチェック指示がなかった場合は、この処理を終了する。
【０１０５】
ドライバのチェック指示があった場合、ステップＳ１００４に移行し、チェック対象とされたドライバ全てをチェックしたか否かを判定する。全てのドライバについてチェックした場合は、この処理を終了する。
【０１０６】
全てのドライバをチェックしていない場合、ステップＳ１００５に移行し、チェックするドライバが削除禁止設定されているか否かを判定する。例えば、通常良く使うプリンタ等でチェック処理を実行したときに、たまたま電源が入っていない等していたために対象デバイスがないと判定されて削除されるのでは、再度ドライバをインストールしなおさなければならず、ユーザにとって不便である。
【０１０７】
そこで、削除したくないドライバに対して削除禁止設定を行えるようにする。図１５はドライバの削除禁止設定を行うための画面の一例であり、ここで削除を禁止したいドライバを選択して、禁止リストに追加登録することで削除禁止設定を行うことができる。逆に、削除禁止を解除したいドライバを選択して、禁止リストから削除することもできる。
【０１０８】
上記ステップＳ１００５で、禁止されていた場合は、ステップＳ１００４に戻り、次のドライバをチェックする。禁止されていない場合、ステップＳ１００６に移行し、ドライバに対応するデバイスが存在するか否かを判定する。例えば、プリンタならば、出力ポート先に問い合わせて応答があるかどうかで判定する。スキャナ等に対しては、入力ポートに対して同様の処理を行ってチェックする。対象デバイスが存在する場合は、ステップＳ１００４に戻り、次のドライバをチェックする。
【０１０９】
対象デバイスが存在しない場合、ステップＳ１００７に移行し、削除メッセージを表示するか否かを判定する。この判定は、ステップＳ１００３で設定された情報に従って行われる。ここで、メッセージを表示するように設定されていた場合は、ステップＳ１００８に移行する。メッセージを表示しないように設定されていた場合、ステップＳ１００９に移行する。
【０１１０】
ステップＳ１００８では、ユーザに対して削除を実行するかどうかの指定を促すメッセージが表示される。図１６は、削除するドライバがあった場合に表示されるメッセージの一例である。このように対象ドライバが表示されて、削除するかどうかの指示を行う。ここで、「はい」が指示された場合は、ステップＳ１００９に移行する。「いいえ」が指示された場合、削除処理がキャンセルされ、ステップＳ１００４に戻り、次のドライバをチェックする。
【０１１１】
ステップＳ１００９では、指定されたドライバの削除処理を実行する。そして処理が終わった後にステップＳ１００４に戻り、次のドライバをチェックする。
【０１１２】
図１０に示したフローチャートでは、デバイスを共有設定されているコンピュータでドライバのチェックを行っているが、デバイスを共有設定しているコンピュータでドライバの削除指示を行う場合も考えられる。図１７、１８では、デバイスを共有設定しているコンピュータでドライバの削除指示を行う場合のフローチャートを示す。
【０１１３】
まず、ステップＳ８０１、Ｓ８０２は、ステップＳ１００１、Ｓ１００２と同様の処理である。ステップＳ８０３で、インストールされているドライバについて全てチェックしたかどうか判定する。全てのドライバについてチェックした場合は、この処理を終了する。
【０１１４】
全てのドライバをチェックしていない場合、ステップＳ８０４に移行し、ドライバに対応するデバイスがローカルデバイスか、ネットワークで共有されたデバイスかを判定する。ローカルデバイスでなかった場合は、ステップＳ８０３に戻り、次のドライバをチェックする。
【０１１５】
ローカルデバイスであった場合には、ステップＳ８０５に移行し、ドライバに対応するデバイスが存在するか否かを判定する。判定方法は、ステップＳ１００５と同様である。ドライバに対応するデバイスが存在する場合は、ステップＳ８１１に移行する。
【０１１６】
ドライバに対応するデバイスが存在しない場合、ステップＳ８０６に移行し、そのドライバが共有設定を行っていたか否かを判定する。共有設定していなかった場合は、ステップＳ８０８に移行する。
【０１１７】
共有設定していた場合、ステップＳ８０７に移行し、対象デバイスが使用できなくなったことを他のコンピュータにネットワークを通じて通知し、ステップＳ８０８に移行する。図１９は、ドライバの削除を通知する情報構造体の一例であり、デバイス種類、ドライバ名、バージョン情報、出力ポート等の情報を持っている。
【０１１８】
ステップＳ８０８では、対象ドライバが削除禁止設定されているか否かを判定する。判定方法は、ステップＳ１００５の場合と同様である。削除禁止設定されている場合は、ステップＳ８０３に戻り、次のドライバをチェックする。
【０１１９】
削除禁止設定されていない場合、ステップＳ８０９に移行し、削除を実行するか否かを判断する。判断方法は、ステップＳ１００８と同様である。ここで、ドライバの削除がキャンセルされた場合は、ステップＳ８０３に戻り、次のドライバをチェックする。
【０１２０】
ドライバの削除実行が指示された場合、ステップＳ８１０に移行し、ドライバの削除処理を実行し、削除処理を終了した後にステップＳ８０３に戻り、次のドライバをチェックする。
【０１２１】
ステップＳ８１１では、対象ドライバが共有設定を解除したか否かを判断する。ここで、対象ドライバが共有設定を解除されていない場合は、ステップＳ８０３に戻り、次のドライバをチェックする。
【０１２２】
対象ドライバが共有設定を解除していた場合、ステップＳ８１２に移行し、対象デバイスが使用できなくなったことを他のコンピュータにネットワークを通じて通知する。
【０１２３】
一方、上述したようなドライバ削除通知が通知されるコンピュータでは、図１８に示すように、まず、ステップＳ９０１で、削除通知を受けたか否かを判断する。通知を受けていない場合は、処理を終了する。
【０１２４】
通知を受けた場合、ステップＳ９０２に移行し、ドライバ削除通知に対応するドライバがあるか否かを判定する。対応するドライバがない場合は、処理を終了する。
【０１２５】
対応するドライバがある場合、ステップＳ９０３に移行し、対象ドライバが削除禁止設定されているか否かを判定する。判定方法は、ステップＳ１００５と同様である。ドライバの削除禁止設定されている場合は、処理を終了する。
【０１２６】
削除禁止設定されていない場合、ステップＳ９０４に移行し、メッセージを表示するか否かを判断する。メッセージ表示設定がされていない場合は、ステップＳ９０６に移行する。メッセージ表示設定されている場合、ステップＳ９０５に移行し、メッセージを表示する。
【０１２７】
そして、ステップＳ９０５で削除指示がされなかった場合は、処理を終了する。ドライバの削除指示がされた場合、ステップＳ９０６に移行し、対象ドライバを削除して処理を終了する。
【０１２８】
以上述べたように、ネットワーク上で共有されているＰＣ及び周辺機器が表示されている画面において、ネットワーク上で共有されている周辺機器が削除或いは共有設定が解除される等して使用できなくなった場合に、不必要になったドライバを簡単な操作でアンインストールできる。また、共有設定していた周辺機器のドライバを削除したり、共有設定を解除した場合に他のコンピュータに通知することで不要なドライバを削除したりすることができる。これらの機能によって、ネットワーク上での作業効率を大幅に向上させることができる。
【０１２９】
（第６の実施の形態）
以下、図２０〜３１を参照して、周辺機器のドライバのバージョンアップを行う場合について説明する。図２０は、ドライバのバージョンアップを行う処理動作を示すフローチャートである。まず、ステップＳ２００１で、ネットワーク上の全てのＰＣ及び周辺機器の接続状況情報を取得し、その情報を記憶する。
【０１３０】
次に、ステップＳ２００２で、各クライアント装置の周辺機器のドライバにセットアップ状況情報を取得する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、ＦＡＸ等のドライバのことである。セットアップ状況情報の取得方法としては、例えば、各クライアント装置上で自機にインストールされているドライバ情報を取得するモジュールを起動させることで情報を収集して、それらの情報をネットワークを通じて通信することが考えられる。
【０１３１】
図２１は、セットアップされているドライバ情報構造体の一例を示す図である。ＰＣ名称、ＩＰアドレス、ＯＳ種類、ユーザ名、デバイスドライバ数、及び各デバイスドライバの情報から構成される。各デバイスドライバ情報はプリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有名、ドライバ情報アドレスで構成される。例えば、１番目に登録されているプリンタはドライバ名がＬＡＳＥＲ−８３０、バージョンが１．００．００、出力ポートがローカル、共有名がＬＡＳＥＲ−８３０、ドライバ情報アドレスがOｘ１００００となっている。この情報を各クライアント装置毎に記録する。
【０１３２】
ステップＳ２００３で、取得した情報を基にネットワーク上の全てのクライアント装置及び周辺機器の接続状況情報を表示する。この画面表示については、図１２により既述したので、その詳細な説明を省略する。
【０１３３】
図２２は、ネットワーク上の各クライアント装置のドライバセットアップ状況を表示した画面の一例を示す図であり、各クライアント装置から取得したドライバ情報構造体を基に表示される。例えば、同図では、私のクライアント装置にインストールされているドライバは、プリンタが６個、スキャナが２個ある。この中で、例えば、「ＩＮＫＪＥＴ−１０Ｖ」というプリンタは、ドライバ名が「ＩＮＫＪＥＴ−１０Ｖ」で、バージョン番号が「１．００．００」で、出力ポート名が「￥￥ＮＯＴＥＰＣ０１￥ＩＮＫＪＥＴ−１０Ｖ」で、名称「ＩＮＫＪＥＴ−１０Ｖ」で共有設定されているネットワーク上で共有されているプリンタドライバであることを示している。
【０１３４】
図２０のフローチャートに説明を戻すと、ステップＳ２００４で、周辺機器のドライバが更新されたか否かを判定する。ここで、ドライバが更新されていない場合は、処理を終了する。ドライバが更新されている場合、ステップＳ２００５に移行する。ドライバの更新方法としては、各クライアント装置上でドライバを更新して、サーバ装置となるＰＣにそのドライバ情報を登録することが考えられる。本実施例においては、サーバ装置並びにクライアント装置は、情報処理装置の好適な一例であるＰＣを使用している。或いは、ユーザが最新のドライバを各メーカのサイトからダウンロードして登録することも考えられる。さらに、ネットワーク上の特定の場所を指定しておいて、ドライバのバージョンチェックを行うこともできる。図２３はドライバのバージョンチェック設定を行うための画面の一例である。このように、特定のＵＲＬを設定しておくことで、定期的にドライバのバージョンチェックを行って、ドライバの更新があった場合には自動的に取得するように設定できる。
【０１３５】
ステップＳ２００５では、更新されたドライバが最新バージョンであるか否かを判定する。そして、最新バージョンでなかった場合は、更新する通知をする必要がないので処理を終了する。最新バージョンであった場合、ステップＳ２００６に移行する。ドライバのバージョンの判定方法としては、サーバ装置で管理している各プリンタのドライバ情報を基に行うことが考えられる。図２４はそれぞれのドライバ毎にバージョン管理されている構造体の一例であり、プリンタやスキャナといったデバイス種類、デバイスのドライバ名、管理されているバージョン情報数、ドライババージョン情報、及びそれに対応するドライバ情報から構成される。管理しているバージョン情報と更新されたドライバのバージョン情報とを比較することで判定する。
【０１３６】
ステップＳ２００６では、更新されたドライバを使用しているクライアント装置があるか否かを判定する。判定は、各クライアント装置から取得したデバイスドライバ情報構造体を用いて行う。ここで、対象クライアント装置がなかった場合は、処理を終了する。対象クライアント装置があった場合、対象クライアント装置リストを表示する。図２５はドライバの更新対象クライアント装置を選択するための画面の一例であり、ここで対象クライアント装置を選択して「ＯＫ」を選択すると、ステップＳ２００７に移行し、選択されたクライアント装置に通知が行われる。また、「対象ＰＣ全てを選択」を選択すると、全ての対象クライアント装置が選択される。
【０１３７】
ステップＳ２００７では、選択された対象クライアント装置に対してドライバが更新されたことを通知する。図２６はデバイス更新通知の情報構造体の一例であり、デバイス種類、ドライバ名、バージョン情報、出力ポートから構成される。
【０１３８】
そして、ステップＳ２００８に移行し、通知したクライアント装置からドライバ情報の取得要求があるか否かを判定する。要求がない場合は、或いはドライバ情報を送信する必要がないとクライアントから応答があった場合は、ステップＳ２１０に移行する。要求がある場合、ステップＳ２００９に移行し、要求があったドライバ情報をクライアントに送信する。
【０１３９】
ステップＳ２０１０では、通知した全てのクライアント装置から応答があったかどうか判定する。全てのクライアント装置から応答があった場合は、処理を終了する。全てのクライアント装置から応答がまだない場合、ステップＳ２００８に戻る。
【０１４０】
一方、図２７は、クライアントにおける処理動作を示すフローチャートである。まず、ステップＳ９０１で、サーバ装置からドライバの更新通知があったか否かを判定する。ここで、通知がない場合は、処理を終了する。
【０１４１】
通知があった場合、ステップＳ９０２に移行し、ドライバ更新をするか否かを判定する。例えば、ドライバ更新の通知があったことをメッセージ表示してユーザが指示する方法が考えられる。図２８はドライバが更新されたことを通知するメッセージの一例である。ここで、「いいえ」が選択された場合は、サーバ装置に対して対象ドライバ情報が必要でないことを通知して、処理が終了される。「はい」が選択された場合、ステップＳ９０３に移行し、サーバ装置に対して対象ドライバ情報を要求する。
【０１４２】
次に、ステップＳ９０４で、ドライバ情報が取得できたか否かを判定する。取得できない場合は、ステップＳ９０３に戻り、サーバ装置に対して再度取得要求する。ドライバ情報を取得できた場合、ステップＳ９０５に移行し、ドライバの更新処理を行う。さらに、ステップＳ９０６で最新のドライバインストール状況をサーバ装置に通知して処理を終了する。
【０１４３】
図２０及び２７に示したフローチャートでは、ドライバの更新処理がされた場合に、通知を行うクライアント装置の選択をサーバ装置となるＰＣで行っているが、クライアントとなるＰＣで自機にインストールされているドライバ状況から判定してドライバの更新処理を行う場合も考えられる。図２９〜３１は、クライアントとなるＰＣで自機にインストールされているドライバ状況から判定して、ドライバの更新処理を行う場合のフローチャートである。
【０１４４】
図２９のステップＳ１２０１〜ステップＳ１２０５は、ステップＳ２００１〜ステップＳ２００５と同じである。次に、ステップＳ１２０６で、ドライバが更新されたことを全てのクライアント装置に通知して処理を終了する。通知する情報構造体も、図２６に示した通りである。
【０１４５】
そして、図３０に示すフローチャートに従って、クライアントからの要求を処理する。まず、ステップＳ１３０１で、ドライバ情報の要求があるか否かを判定する。要求がない場合は、処理を終了する。
【０１４６】
要求があった場合、ステップＳ１３０２に移行し、管理しているドライバ情報から要求があったドライバ情報を読み出す。そして、ステップＳ１３０３で、そのドライバ情報を要求があったクライアントに送信する。
【０１４７】
一方、クライアントにおいては、図３１に示すフローチャートに従って処理が行われる。このフローチャートは、図２７に示すフローチャートとほぼ同じであり、ステップＳ１４０１、ステップＳ１４０３〜ステップＳ１４０７は図２７のステップＳ９０１〜ステップＳ９０６で説明したとおりであるが、ステップＳ１４０２の判定があることが異なる。
【０１４８】
このステップＳ１４０２では、ドライバ更新通知をサーバ装置から受けた場合に、ドライバ更新通知構造体から必要データを読み出して、また、自機にインストールされているドライバ情報と比較して、通知された対象ドライバがあるか否かを判定する。そして、対象ドライバがなかった場合は、この通知を無視して処理を終了する。対象ドライバがあった場合、図２７に示すフローチャートと同様の処理を行う。
【０１４９】
以上述べたように、ネットワーク上で共有されているＰＣ及び周辺機器が表示されている画面において、周辺機器のドライバが更新された場合に、簡単な操作でドライバの更新処理を行うことができる。また、ドライバの更新情報のみを各クライアント装置に通知することで、ドライバの更新処理を行うかどうか判定できるので、ネットワーク上のトラフィックを最小限に抑えることができる。これらの機能によって、ネットワーク上での作業効率を大幅に向上させることができる。
【０１５０】
（その他の実施の形態）
上述した実施の形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置或いはシステム内のコンピュータに対し、上記実施の形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ或いはＭＰＵ）に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【０１５１】
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１５２】
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施の形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）或いは他のアプリケーションソフト等と共同して上述の実施の形態の機能が実現される場合にもかかるプログラムコードは本発明の実施の形態に含まれることはいうまでもない。
【０１５３】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合にも本発明に含まれることはいうまでもない。
【０１５４】
なお、上記実施の形態において示した各部の形状及び構造は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。以上説明したように本発明によれば、ネットワーク上で共有されているＰＣ及び周辺機器が表示されている画面において、周辺機器のドライバがインストールされていない場合、簡単な操作でドライバをインストールでき、さらには実際にインストールされたことを確認することが可能となり、ネットワーク上での作業効率を大幅に向上させることができる。
【０１５５】
なお、本願実施形態によれば、ネットワーク上で共有されているＰＣおよび周辺機器が表示されているウインドウにおいて、周辺機器のドライバがインストールされていない場合、システム管理者がサーバ装置から簡単操作でドライバをリモートインストールできると共に、実際に正しくドライバがインストールされたことをプリンタに対してテストプリントを実行させることで確認することができるので作業効率を良くすることができる。
【０１５６】
【発明の効果】
以上説明したように、本願発明によれば、クライアント装置に対するドライバ情報のセットアップ処理を簡便な作業で行うことにより、セットアップする際の作業負担を軽減することができるという効果がある。
【０１５７】
さらに、複数のクライアント装置を含む印刷システムにおいて、ドライバをインストールすべき各クライアント装置のセットアップ状況に応じてドライバのインストール処理を行うので、一台一台のユーザがドライバのセットアップ状況を意識せずインストール処理行うことができるようになるという効果がある。
【０１５８】
さらに、サーバ装置からクライアント装置に対して、クライアント装置からの要求を待つことなく、プッシュインストールを行い、ドライバのセットアップを行うので、クライアント装置において、煩雑なインストール操作が必要でなくなるという効果がある。
【０１５９】
さらに、ドライバ情報のインストール終了後にテストプリントを実行するための仕組みを提供し、ドライバ情報のセットアップが正常に完了したかどうかを確認することができるという効果がある。
【図面の簡単な説明】
【図１】本実施の形態の情報処理装置の概略構成を示すブロック図である。
【図２】ドライバのセットアップを行う処理動作を示すフローチャートである。
【図３】ドライバ情報構造体の一例を示す図である。
【図４】ネットワーク上のＰＣ及び周辺機器を表示する画面の一例を示す図である。
【図５】ネットワーク上の各クライアント装置のドライバセットアップ状況を表示する画面の一例を示す図である。
【図６】セットアップするドライバを選択するための画面の一例を示す図である。
【図７】ドライバをセットアップするクライアント装置を選択するための画面の一例を示す図である。
【図８】ドライバセットアップ指示構造体の一例を示す図である。
【図９】ドライバのセットアップ確認印刷の一例を示す図である。
【図１０】ドライバのチェック、さらには削除を行う処理動作を示すフローチャートである。
【図１１】ドライバ情報構造体の一例を示す図である。
【図１２】ネットワーク上のＰＣ及び周辺機器を表示した画面の一例を示す図である。
【図１３】アイコン３０３ｉで表されるプリンタの共有設定が解除された、或いはドライバが削除された場合に表示される画面の一例を示す図である。
【図１４】チェックするデバイスを選択するための画面の一例を示す図である。
【図１５】ドライバの削除禁止設定を行うための画面の一例を示す図である。
【図１６】削除するドライバがあった場合に表示されるメッセージの一例を示す図である。
【図１７】ドライバのチェック、さらには削除を行う処理動作を示すフローチャートである。
【図１８】ドライバ削除通知が通知されたときの処理動作を示すフローチャートである。
【図１９】ドライバの削除を通知する情報構造体の一例を示す図である。
【図２０】ドライバのバージョンアップを行う処理動作を示すフローチャートである。
【図２１】ドライバ情報構造体の一例を示す図である。
【図２２】ネットワーク上の各クライアント装置のドライバセットアップ状況を表示した画面の一例を示す図である。
【図２３】ドライバのバージョンチェック設定を行うための画面の一例を示す図である。
【図２４】ドライバ毎にバージョン管理されている構造体の一例を示す図である。
【図２５】ドライバの更新対象のクライアントＰＣを選択するための画面の一例を示す図である。
【図２６】デバイス更新通知の情報構造体の一例を示す図である。
【図２７】ドライバのバージョンアップを行う処理動作を示すフローチャートである。
【図２８】ドライバが更新されたことを通知するメッセージの一例を示す図である。
【図２９】ドライバのバージョンアップを行う処理動作を示すフローチャートである。
【図３０】ドライバのバージョンアップを行う処理動作を示すフローチャートである。
【図３１】ドライバのバージョンアップを行う処理動作を示すフローチャートである。
【図３２】インストールサーバ装置３８５における一実施例のフローチャートを示す図である。
【図３３】インストールサーバ装置３８５におけるドライバ情報を設定する画面の一例を示す図である。
【図３４】インストールサーバ装置３８５におけるクライアント装置の選択画面を示す図である。
【図３５】インストールサーバ装置３０５からドライバのリモートインストール指示をする時の各クライアント装置における一実施例を示す図である。
【図３６】図３５のＳ３５０４並びにＳ３５０５に対応する処理の変形例を示す図である。
【図３７】各クライアント装置内の好適な一例としてのソフトウェアのモジュールを示す図である。
【図３８】図３２のＳ３２０６に対応する処理の変形例を示す図である。
【図３９】本実施形態を示す印刷システムの一例を示す図である。
【符号の説明】
１  システムバス
２  ＣＰＵ
３  プログラムメモリ
４  通制御部
５  通信ポート
６  通信回線
７  ネットワーク上の他の装置
８  外部記憶装置制御部
９  フロッピーディスク
１０  ハードディスク
１１  入力制御部
１２  キーボード
１３  マウス
１４  ビデオイメージメモリ
１５  表示出力制御部
１６  ＣＲＴ
１７  プリンタ制御部
１８  プリンタ
１Ａ  画像読み取り装置制御部
１Ｂ  画像読み取り機器
３３１  プリンタ名指示部
３３２  ポート指示部
３３３  ドライバ指定部
３３４  ポート追加指示部
３３５  ドライバの追加指示部
３７１  ドライバインストールモジュール
３７２  ドライバ
３７３  アプリケーションプログラミングインタフェース
３７４  システムインストーラ
３７５  システムファイル
３７６  レジストリ
３７７  ユーザ領域
３７８  ＯＳ領域
３７９  システムプログラム
３８０  ＬＡＮ
３８１  クライアントＡ
３８２  クライアントＢ
３８３  クライアントＣ
３８４  プリンタＡ
３８５  インストールサーバ
３８６  ファイルサーバ
３８７  プリントサーバ
【図１】
0003870065.tif 000002
【図２】
0003870065.tif 000003
【図３】
0003870065.tif 000004
【図４】
0003870065.tif 000005
【図５】
0003870065.tif 000006
【図６】
0003870065.tif 000007
【図７】
0003870065.tif 000008
【図８】
0003870065.tif 000009
【図９】
0003870065.tif 000010
【図１０】
0003870065.tif 000011
【図１１】
0003870065.tif 000012
【図１２】
0003870065.tif 000013
【図１３】
0003870065.tif 000014
【図１４】
0003870065.tif 000015
【図１５】
0003870065.tif 000016
【図１６】
0003870065.tif 000017
【図１７】
0003870065.tif 000018
【図１８】
0003870065.tif 000019
【図１９】
0003870065.tif 000020
【図２０】
0003870065.tif 000021
【図２１】
0003870065.tif 000022
【図２２】
0003870065.tif 000023
【図２３】
0003870065.tif 000024
【図２４】
0003870065.tif 000025
【図２５】
0003870065.tif 000026
【図２６】
0003870065.tif 000027
【図２７】
0003870065.tif 000028
【図２８】
0003870065.tif 000029
【図２９】
0003870065.tif 000030
【図３０】
0003870065.tif 000031
【図３１】
0003870065.tif 000032
【図３２】
0003870065.tif 000033
【図３３】
0003870065.tif 000034
【図３４】
0003870065.tif 000035
【図３５】
0003870065.tif 000036
【図３６】
0003870065.tif 000037
【図３７】
0003870065.tif 000038
【図３８】
0003870065.tif 000039
【図３９】
0003870065.tif 000040