(57)【特許請求の範囲】
【請求項１】
情報の送受信が可能なローカルネットワーク上に接続された端末装置と、前記ローカルネットワークを介して前記端末装置に関する識別情報を送受信することが可能な管理サーバと、前記ローカルネットワークを介して前記管理サーバから前記端末装置に関する識別情報を受信可能なクライアント端末とを備えた端末管理システムにおいて、
前記クライアント端末は、
前記管理サーバから送信された前記端末装置に関する識別情報に応じて前記管理サーバに対して前記端末装置に対応するドライバプログラムを要求する要求情報を送信する要求情報送信手段と、
前記管理サーバから送信されたドライバプログラムのインストーラを実行してインストールを行うインストール手段と、を備え、
前記管理サーバは、
前記ローカルネットワーク上に接続された端末装置を検索する端末検索手段と、
前記クライアント端末の情報を参照して、前記端末検索手段が検索した端末装置に関する識別情報を前記クライアント端末に対して送信する端末情報送信手段と、
前記端末装置を動作させるためのドライバプログラムを記憶するドライバ記憶手段と、
前記ドライバ記憶手段にドライバプログラムが記憶されている場合に、前記ドライバ記憶手段から取得した当該ドライバプログラムをインストーラに付加するインストーラ付加手段と、
前記インストーラ付加手段がドライバプログラムを付加したインストーラを前記クライアント端末に対して送信するインストーラ送信手段と、
前記クライアント端末から送信された要求情報に応じて、要求情報で要求されたドライバプログラムを前記ドライバ記憶手段が記憶しているか否かを判定する記憶判定手段と、
前記記憶判定手段が要求情報で要求されたドライバプログラムを記憶していないと判定した場合、又は前記記憶判定手段が要求情報で要求されたドライバプログラムと同じタイプのドライバプログラムを記憶していると判定し、かつ、所定の条件が満たされている場合に前記ローカルネットワークとは異なる外部ネットワークに接続されたデータサーバに対してドライバプログラムを要求するドライバ要求手段と、
前記データサーバから送信されたドライバプログラムのバージョンを判定するバージョン判定手段と、を備え、
前記ドライバ記憶手段は、前記記憶判定手段が要求情報で要求されたドライバプログラムを記憶していないと判定した場合に取得されたドライバプログラムを新たに記憶するとともに、前記バージョン判定手段が判定した結果、前記データサーバから送信されたドライバプログラムのバージョンが既に前記ドライバ記憶手段に記憶されている同じタイプのドライバプログラムのバージョンよりも更新されたものである場合に、該ドライバプログラムを記憶することを特徴とする端末管理システム。
【請求項２】
前記所定の条件とは、前記ドライバ記憶手段に記憶されているドライバプログラムが取得された時期が１年以上前であることを特徴とする請求項１記載の端末管理システム。
【請求項３】
前記記憶判定手段が要求情報で要求されたドライバプログラムと同じタイプのドライバプログラムを記憶していると判定し、かつ、所定の条件が満たされていない場合、前記ドライバ要求手段は、前記ローカルネットワークとは異なる外部ネットワークに接続されたデータサーバに対して前記端末装置を動作させるためのドライバプログラムを要求せず、前記インストーラ付加手段は、前記ドライバ記憶手段に記憶されているドライバプログラムをインストーラに付加することを特徴とする請求項１記載の端末管理システム。
【請求項４】
前記バージョン判定手段が判定した結果、前記データサーバから送信されたドライバプログラムのバージョンが既に前記ドライバ記憶手段に記憶されている同じタイプのドライバプログラムのバージョンよりも更新されたものである場合に、クライアント端末に対してこの更新されたバージョンに関する情報を送信するバージョン送信手段を備えることを特徴とする請求項１乃至請求項３の何れか１項記載の端末管理システム。
【請求項５】
前記クライアント端末の情報は、前記管理サーバが備える記憶手段が記憶していることを特徴とする請求項１乃至請求項４の何れか１項記載の端末管理システム。
【請求項６】
前記クライアント端末の情報は、前記管理サーバが外部から取得することを特徴とする請求項１乃至請求項５の何れか１項記載の端末管理システム。
【請求項７】
前記クライアント端末の情報は、前記ローカルネットワーク上に接続され前記管理サーバが読み出し可能な情報を記憶した資源サーバが記憶していることを特徴とする請求項６に記載の端末管理システム。
【請求項８】
前記端末装置に関する識別情報には、前記端末装置の名称と前記端末装置固有のアドレス情報が含まれていることを特徴とする請求項１乃至請求項７の何れか１項記載の端末管理システム。
【請求項９】
前記クライアント端末は、前記インストール手段がインストールを完了した旨の情報を前記管理サーバに対して送信する完了送信手段を備え、
前記管理サーバは、前記完了送信手段から送信された情報をインストールが完了したドライバプログラムに関連付けて記憶する完了結果記憶手段を備えたことを特徴とする請求項１乃至請求項８の何れか１項記載の端末管理システム。
【請求項１０】
情報の送受信が可能であり、複数のサブネットからなるローカルネットワーク上に接続された端末装置と、前記ローカルネットワークを介して前記端末装置に関する識別情報を送受信することが可能な管理サーバと、前記ローカルネットワークを介して前記管理サーバから前記端末装置に関する識別情報を受信可能なクライアント端末とを備えた端末管理システムにおいて、
前記管理サーバは、
前記ローカルネットワーク上に接続された端末装置を検索する端末検索手段と、
前記クライアント端末の情報を参照して、前記端末検索手段が検索した端末装置に関する識別情報を当該端末装置が接続されたサブネットと同じサブネット上に接続された前記クライアント端末に対してのみ送信する端末情報送信手段と、
前記クライアント端末から送信された要求情報に応じて前記ローカルネットワークとは異なる外部ネットワークに接続されたデータサーバに対して前記端末装置を動作させるためのドライバプログラムを要求するドライバ要求手段と、
前記ドライバ要求手段の要求に応じて前記データサーバから送信されたドライバプログラムを受信するドライバ受信手段と、
前記ドライバ受信手段が受信したドライバプログラムをインストーラに付加するインストーラ付加手段と、
前記インストーラ付加手段がドライバプログラムを付加したインストーラを前記クライアント端末に対して送信するインストーラ送信手段と、を備え、
前記クライアント端末は、
前記管理サーバから送信された前記端末装置に関する識別情報に応じて前記管理サーバに対して前記端末装置に対応するドライバプログラムを要求する要求情報を送信する要求情報送信手段と、
前記管理サーバから送信されたドライバプログラムのインストーラを実行してインストールを行うインストール手段と、を備えたことを特徴とする端末管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報の送受信が可能なローカルネットワーク上に接続された端末装置と、前記ローカルネットワークを介して前記端末装置に関する情報を送受信することが可能な管理サーバと、前記ローカルネットワークを介して前記管理サーバから前記端末装置に関する情報を受信可能なクライアント端末とを備えた端末管理システムに関する。
【背景技術】
【０００２】
従来より、情報の送受信が可能なローカルネットワーク上にプリンタ等の端末装置と、この端末装置に関する情報をローカルネットワークを介して送受信することが可能な管理サーバと、クライアント端末とが接続されている端末管理システムでは、クライアント端末から管理サーバに対して端末装置を動作させるためのドライバプログラムを要求する要求情報を送信されると、管理サーバではこれに応じてドライバプログラムを管理サーバ自身の記憶部から読み出しクライアント端末に送信する。クライアント端末は管理サーバから送信されたドライバプログラムを受信して、これをインストールし端末装置を動作可能な状態になっていた。また、例えばＬＡＮ等のネットワークにプリントサーバ、クライアント、プリンタ等が接続された印刷システムでは、プリントサーバの共有プリンタ監視部が共有プリンタ情報に基づいてネットワーク上に共有設定されている共有プリンタを監視し、新規の共有プリンタがネットワーク上に接続されたことを検出した場合には、そのプリンタドライバをインストールする旨のメッセージが記載されたメールをクライアントに対して送信する。そして、クライアントがプリンタドライバをプリントサーバからダウンロードしてこれをインストールするようになっている（例えば、特許文献１参照。）。
【０００３】
【特許文献１】特開２００４−２８０２１８号公報（第５−６頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述のような従来の印刷システムにおいては、新規のプリンタのプリンタドライバをプリントサーバに記憶されているものからダウンロードするようになっているため、新規のプリンタを検出した場合にはその度にプリントサーバにプリンタドライバを用意しなければならなかった。そして、プリンタドライバを用意する際には、オペレータ等がプリンタドライバを要求等して入手し、これを手作業でプリントサーバに記憶させてダウンロード可能な状態に設定等行わなければならず作業が面倒なものとなっていた。
【０００５】
本発明は、このような問題に鑑みてなされたものであり、その目的とするところは、ネットワーク上に新規の端末装置が設置されても、効率的に端末装置のドライバプログラムをクライアント端末に配信することが可能な端末管理システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は、情報の送受信が可能なローカルネットワーク上に接続された端末装置と、前記ローカルネットワークを介して前記端末装置に関する識別情報を送受信することが可能な管理サーバと、前記ローカルネットワークを介して前記管理サーバから前記端末装置に関する識別情報を受信可能なクライアント端末とを備えた端末管理システムにおいて、前記クライアント端末は、前記管理サーバから送信された前記端末装置に関する識別情報に応じて前記管理サーバに対して前記端末装置に対応するドライバプログラムを要求する要求情報を送信する要求情報送信手段と、前記管理サーバから送信されたドライバプログラムのインストーラを実行してインストールを行うインストール手段と、を備え、前記管理サーバは、前記ローカルネットワーク上に接続された端末装置を検索する端末検索手段と、前記クライアント端末の情報を参照して、前記端末検索手段が検索した端末装置に関する識別情報を前記クライアント端末に対して送信する端末情報送信手段と、前記端末装置を動作させるためのドライバプログラムを記憶するドライバ記憶手段と、前記クライアント端末から送信された要求情報に応じて、要求情報で要求されたドライバプログラムを前記ドライバ記憶手段が記憶しているか否かを判定する記憶判定手段と、前記記憶判定手段が要求情報で要求されたドライバプログラムを記憶していないと判定した場合、前記ローカルネットワークとは異なる外部ネットワークに接続されたデータサーバに対して前記ドライバプログラムを要求するドライバ要求手段と、前記データサーバから送信されたドライバプログラムのバージョンを判定するバージョン判定手段と、前記ドライバ記憶手段に記憶された前記ドライバプログラムをインストーラに付加するインストーラ付加手段と、前記インストーラ付加手段がドライバプログラムを付加したインストーラを前記クライアント端末に対して送信するインストーラ送信手段と、を備え、前記ドライバ記憶手段は、前記バージョン判定手段が判定した結果、前記データサーバから送信されたドライバプログラムのバージョンが既に自装置に記憶されているドライバプログラムのバージョンよりも更新されたものである場合に、該ドライバプログラムを記憶することを特徴とする。
【０００７】
このような発明によれば、管理サーバがクライアント端末からの要求情報に応じて、外部ネットワークを介してデータサーバからドライバプログラムを取得する。そして、バージョン判定手段は、データサーバから送信されたドライバプログラムのバージョンを判定し、前記データサーバから送信されたドライバプログラムのバージョンが既に自装置に記憶されているドライバプログラムのバージョンよりも更新されたものである場合に、該ドライバプログラムをドライバ記憶手段に記憶させる。次いで、ドライバ記憶手段に記憶されたプリンタドライバに基づいてインストーラを作成してクライアント端末に送信するので、オペレータ等がドライバプログラムを入手して管理サーバに記憶させダウンロード可能な状態に設定等する作業を省略することができるとともに、最新のドライバプログラムを効率的に配信することが可能となる。
【０００８】
更に、本発明に係る他の端末管理システムは、情報の送受信が可能なローカルネットワーク上に接続された端末装置と、前記ローカルネットワークを介して前記端末装置に関する情報を送受信することが可能な管理サーバと、前記管理サーバが読み出し可能な情報を記憶した資源サーバと、前記ローカルネットワークを介して前記管理サーバから前記端末装置に関する情報を受信可能なクライアント端末とを備えた端末管理システムにおいて、前記資源サーバは、前記ローカルネットワーク上に接続されたクライアント端末情報を記憶し、前記管理サーバは、前記ローカルネットワーク上に接続された前記端末装置を検索する端末検索手段と、前記資源サーバが記憶している前記クライアント端末の情報を参照して、前記端末検索手段が検索した端末装置に関する情報を前記クライアント端末に対して送信する端末情報送信手段と、前記端末装置を動作させるためのドライバプログラムを記憶するドライバ記憶手段と、前記ローカルネットワークとは異なる外部ネットワークに接続されたデータサーバに対して、前記ローカルネットワーク上に接続されたクライアント端末からの要求情報で要求された種類のドライバプログラムを要求するドライバ要求手段と、前記データサーバから送信されたドライバプログラムのバージョンを判定するバージョン判定手段と、前記バージョン判定手段が判定した結果、ドライバプログラムのバージョンが要求情報で要求された種類のドライバプログラムのバージョンより新しい場合にクライアント端末に対してこの新しいバージョンに関する情報を送信するバージョン送信手段と、前記クライアント端末から送信された要求情報に応じて、要求情報で要求されたドライバプログラムを前記ドライバ記憶手段が記憶しているか否かを判定する記憶判定手段と、前記記憶判定手段が要求情報で要求されたドライバプログラムを記憶していると判定した場合に、前記ドライバ記憶手段から要求情報で要求されたドライバプログラムを読み出し、このドライバプログラムをインストーラに付加するインストーラ付加手段と、前記インストーラ付加手段がドライバプログラムを付加したインストーラを前記クライアント端末に対して送信するインストーラ送信手段と、を備え、前記クライアント端末は、前記管理サーバから送信された前記端末装置に関する情報に応じて前記管理サーバに対して前記端末装置に対応するドライバプログラムを要求する要求情報を送信する要求情報送信手段と、前記管理サーバから送信されたインストーラを実行してドライバプログラムのインストールを行うインストール手段と、を備えたことを特徴とする。
【０００９】
このような発明によれば、管理サーバがクライアント端末からの要求情報に応じて、ドライバプログラムをドライバ記憶手段が記憶しているか否かを判定し、記憶している場合にはこれを付加してインストーラを作成し、クライアント端末に送信するので、要求情報が送信されてからドライバプログラムを外部ネットワークを介して受信する処理が不要となり、より効率的にドライバプログラムを配信することが可能となる。また、管理サーバが外部ネットワークを介してドライバプログラムを受信し、これが新しいバージョンである場合には、このバージョンに関する情報をクライアント端末に送信するので、クライアントはバージョンに関する情報を参照して新しいドライバプログラムを要求することができる。
【発明の効果】
【００１０】
以上のように本発明の端末管理システムは、ネットワーク上に新規の端末装置が設置されても、効率的に端末装置のドライバプログラムをクライアント端末に配信することが可能であるという効果を有する。
【発明を実施するための最良の形態】
【００１１】
（第１の実施の形態）
以下、本発明を実施するための最良の形態の第１の実施の形態について図面を用いて詳細に説明する。図１は、本発明に係る端末管理システム１０全体の構成を示す説明図である。本発明に係る端末管理システム１０は、外部インターネット１に接続されたデータサーバ４００と、ローカルネットワーク２に接続された管理サーバ１００、クライアント端末２００、プリンタ３００と、外部インターネット１とローカルネットワーク２とを接続するルータ３とを備えている。
【００１２】
外部インターネット１は、インターネット等の公衆網、外部ネットワークである。ローカルネットワーク２は、ＬＡＮネットワーク等であり、このローカルネットワーク２上に接続された管理サーバ１００、クライアント端末２００等の機器間での情報の送受信が可能となっている。
【００１３】
ルータ３は、ローカルネットワーク２上に接続された管理サーバ１００等の機器のアドレスを特定するＩＰアドレスを割り振る機能を有し、ローカルネットワーク２上に接続された機器と、外部インターネットワーク１上に接続された機器同士での情報の送受信を行えるようになっている。
【００１４】
図３は、管理サーバ１００の構成を示す説明図である。管理サーバ１００は、情報の送受信が可能なコンピュータバス１０１と、後述するプログラムを実行することにより各種の機能を実現することが可能なＣＰＵ１０２と、キーボード、マウス等により構成される入力装置１０３と、液晶ディスプレイ装置、ＣＲＴ等により構成される出力装置１０４と、ローカルネットワーク２を介して他の機器と情報の送受信を行うネットワークＩ／Ｆ部１０５と、情報の格納および読み出しが可能なＲＡＭ１０６と、情報の読み出しが可能なＲＯＭ１０７と、各種の機能を実現するプログラムを記憶した記憶装置１０８とを備えている。
【００１５】
記憶装置１０８は、ＣＰＵ１０２が実行することにより機能を実現するプログラムを記憶している。オペレータ等が管理サーバ１００自体の操作を行うためのシステムを構築するプログラムであるオペレーティングシステム１０９と、オペレーティングシステム１０９上で動作するプログラムであるウェブサーバ１１０と、ローカルネットワーク２上に接続された新規の端末装置を検索する機能を有するプログラムである検索部１１１と、ローカルネットワーク上に接続されたクライアント端末２００等に対してメールを送信する機能を有するプログラムであるメール送信部１１２と、外部インターネット１を介してデータサーバ４００から端末装置のドライバプログラムを取得する機能を有するプログラムであるドライバ取得部１１３と、外部インターネット１を介して取得したドライバプログラムをクライアント端末２００がインストール可能となるようにインストーラを作成する機能を有するプログラムであるインストーラ作成部１１４と、インストーラ作成部１１４が作成したドライバプログラムのインストーラをクライアント端末２００に送信する機能を有するプログラムであるドライバ送信部１１５とを記憶している。なお、記憶装置１０８は、管理サーバ１００の内部に設けられたものに限られず、外部に取り付けられたハードディスク、フロッピー（登録商標）ディスク等の外部記録媒体であっても良い。
【００１６】
図２は、クライアント端末２００の構成を示す説明図である。クライアント端末２００は、情報の送受信が可能なコンピュータバス２０１と、後述するプログラムを実行することにより各種の機能を実現することが可能なＣＰＵ２０２と、キーボード、マウス等により構成される入力装置２０３と、液晶ディスプレイ装置、ＣＲＴ等により構成される出力装置２０４と、ローカルネットワーク２を介して他の機器と情報の送受信を行うネットワークＩ／Ｆ部２０５と、情報の格納および読み出しが可能なＲＡＭ２０６と、情報の読み出しが可能なＲＯＭ２０７と、各種の機能を実現するプログラムを記憶した記憶装置２０８とを備えている。
【００１７】
記憶装置２０８は、ＣＰＵ２０２が実行することにより機能を実現するプログラムを記憶している。クライアント等がクライアント端末２００自体の操作を行うためのシステムを構築するプログラムであるオペレーティングシステム２０９と、ローカルネットワーク上に接続された管理サーバ１００等に対してメールを送信する機能を有するプログラムであるメーラー２１０と、外部インターネット１やローカルネットワーク２を介して管理サーバ１００等からＨＴＭＬデータ等のＷＥＢページ表示画面に関する情報をダウンロードして、出力装置２０４の画面表示、出力等を実行する機能を有するプログラムであるウェブブラウザ２１１とを記憶している。なお、記憶装置２０８は、クライアント端末２００の内部に設けられたものに限られず、外部に取り付けられたハードディスク、フロッピー（登録商標）ディスク等の外部記録媒体であっても良い。
【００１８】
プリンタ３００は、ローカルネットワーク２上に接続された端末装置の具体的な一例であり、クライアント端末２００にインストールされたドライバプログラムの機能により送信された、印刷を指示する情報に従って印刷を行うようになっている。データサーバ４００は、外部インターネット１上にプリンタ３００のメーカの管理者、オペレータ等によって設置された読み出し可能な情報やデータを記憶したサーバであり、図示していないが様々な種類のＯＳやＯＳの言語、エミュレーションに対応した複数種類のプリンタ３００に対応するドライバプログラムを記憶するドライバ記憶部４０１と、外部インターネット１を介して送信されたドライバプログラムの要求に応じて適切なドライバプログラムを送信するドライバ送信部４０２とを備えている。
【００１９】
続いて、第１の実施の形態における端末管理システム１０の動作について図面を用いて詳細に説明する。まず、図４を用いて端末管理システム１０の動作の概要について説明する。管理サーバ１００が新規の端末装置を検出するために、機器に関する情報を求める情報をブロードキャスト送信によりローカルネットワーク２上の全ての機器に対して送信する。プリンタ３００からプリンタ３００に関する情報が送信されると、管理サーバ１００は、これが記憶装置１０８に未だ記憶されていない新規の端末装置に関する情報であると判定する。そして、新規の端末装置が設置された旨のメールを作成してクライアント端末２００に送信する。
【００２０】
クライアント端末２００からＷＥＢページを要求するＷＥＢアクセスがあると、管理サーバ１００は、外部インターネット１を介してデータサーバ４００にプリンタ３００のドライバプログラムに関する情報を要求し、データサーバ４００からドライバプログラムに関する情報が送信されると、このドライバプログラムに関する情報を表示したＷＥＢページのＨＴＭＬデータを作成しクライアント端末２００に送信する。クライアント端末２００からＷＥＢページに表示されたドライバプログラムの要求があると、管理サーバ１００は、外部インターネット１を介してデータサーバ４００にそのドライバプログラムを要求し、データサーバ４００からこれが送信されると、これをインストールするためのインストーラを作成してクライアント端末２００に送信する。
【００２１】
続いて、管理サーバ１００がクライアント端末２００に対して新規の端末装置についてのメールを送信する処理について図５を用いて詳細に説明する。まず、管理サーバ１００のＣＰＵ１０２は、ブロードキャスト送信処理を行う（ステップＳ５０１）。ＣＰＵ１０２は、検索部１１１のプログラムを起動させ、新規の端末装置を検出するために、機器に関する情報を求める機器要求情報を作成する。この機器要求情報は予め記憶装置１０８やＲＯＭ１０７に格納されていても良い。そして、機器要求情報をブロードキャスト送信によりローカルネットワーク２上に接続された全ての機器に送信する。このステップＳ５０１の処理は、例えば２４時間毎等の周期的に実行される。
【００２２】
次に、ＣＰＵ１０２は、タイムアウト検出処理を行う（ステップＳ５０２）。ＣＰＵ１０２は、管理サーバ１００内の図示しないタイマー等を用いて所定時間が経過したか否かを判定する。ブロードキャスト送信に対する応答が無いまま所定時間が経過した場合には（ステップＳ５０２のＹＥＳ）、処理を終了する。
【００２３】
次に、所定時間が経過する前にブロードキャスト送信に対する応答として、プリンタ３００から情報が送信された場合には（ステップＳ５０２のＮＯ）、ＣＰＵ１０２は、このプリンタ３００に関する情報を受信し、ＲＡＭ１０６に格納する（ステップＳ５０３）。このプリンタ３００に関する情報には、プリンタ３００のモデル名、ＩＰアドレス、ＭＡＣアドレス等が含まれている。
【００２４】
次に、ＣＰＵ１０２は、新規の端末装置であるか否かを判定する処理を行う（ステップＳ５０４）。図９に示すような、記憶装置１０８に記憶されたプリンタ情報リストを読み出し、このプリンタ情報リスト内をＲＡＭ１０６に格納したプリンタ３００に関する情報に基づいて検索を行う。プリンタ３００に関する情報がプリンタ情報リストに含まれている場合には（ステップＳ５０４のＮＯ）、ステップＳ５０２以降の処理を繰り返し実行する。
【００２５】
次に、ＣＰＵ１０２は、プリンタ３００に関する情報がプリンタ情報リストに含まれていない場合には（ステップＳ５０４のＹＥＳ）、プリンタ３００が新規の端末装置であると判定してプリンタ３００に関する情報をプリンタ情報リストに追加し、記憶装置１０８に記憶する。ここでは、例えばプリンタ３００として名称が「ＰｒｉｎｔｅｒＣ」に関する情報をグループＢのネットワーク領域に追加したものとする。
【００２６】
次に、ＣＰＵ１０２は、クライアント端末の情報を取得する処理を行う（ステップＳ５０６）。図１０に示すような、記憶装置１０８に記憶されたユーザ情報リストを読み出す。そして、プリンタ３００と同一のネットワーク領域を参照し、このネットワーク領域のユーザとして、クライアント端末２００に該当する「Ｕｓｅｒ３」のメールアドレスを取得する。
【００２７】
次に、ＣＰＵ１０２は、クライアント端末２００に対してメールを送信する処理を行う（ステップＳ５０７）。ＣＰＵ１０２は、メール送信部１１２のプログラムを起動させ、新規の端末装置としてプリンタ３００が設置された旨と、管理サーバ１００にＷＥＢアクセスする際のＵＲＬを表示したメールを作成する。そして、取得したクライアント端末２００に該当する「Ｕｓｅｒ３」のメールアドレスを参照し、ネットワークＩ／Ｆ部１０５によりメールを送信する。その後、ステップＳ５０１のブロードキャスト送信の他の応答があるまで待機状態とし、ステップＳ５０２以降の処理を繰り返し実行する。
【００２８】
続いて、管理サーバ１００がクライアント端末２００に対してドライバプログラムのインストーラを送信する処理について図６を用いて詳細に説明する。まず、管理サーバ１００のＣＰＵ１０２は、ＷＥＢページの要求があるか否かを判定する（ステップＳ６０１）。ＣＰＵ１０２は、クライアント端末２００から管理サーバ１００にＷＥＢアクセスされ、ＷＥＢページの要求があるか否かを判定する。ＷＥＢページの要求がない場合には（ステップＳ６０１のＮＯ）、繰り返しこの処理を実行する。
【００２９】
次に、ＣＰＵ１０２は、ＷＥＢページの要求がある場合には（ステップＳ６０１のＹＥＳ）、要求されたＷＥＢページに表示するプリンタ３００対応のドライバプログラムに関する情報を取得する処理を行う（ステップＳ６０２）。ＣＰＵ１０２は、プリンタ３００対応のドライバプログラムに関する情報を要求するドライバ要求情報をネットワークＩ／Ｆ部１０５によりデータサーバ４００に送信する
【００３０】
すると、データサーバ４００は、外部インターネット１を介してドライバ要求情報を受信すると、このドライバ要求情報に基づいてドライバ記憶部４０１を検索し、図８に示すような、プリンタ３００に対応するドライバプログラムを表示したリストデータを読み出す。このリストデータでは、プリンタ３００のモデル名と、プリンタ３００に対応する各ドライバプログラムの名称と、各ドライバプログラムがサポートしているＯＳ、エミュレーション、ＯＳの言語、バージョンとが表示されている。そして、このリストデータを外部インターネット１を介して管理サーバ１００に送信する。管理サーバ１００はリストデータを受信すると、これをＲＡＭ１０６に格納する。
【００３１】
次に、ＣＰＵ１０２は、ＷＥＢページのＨＴＭＬデータを作成する処理を行う（ステップＳ６０３）。ウェブサーバ１１０を起動させ、プリンタ３００対応のドライバプログラムの一覧のリストに基づいて図１２に示すようなドライバプログラムを選択するためのＷＥＢページのＨＴＭＬデータを作成し、更にこのＨＴＭＬデータにプリンタ３００のＩＰアドレスとＭＡＣアドレスを追加する。図１２に示すＷＥＢページでは、プリンタ３００の名称やＩＰアドレス、ＭＡＣアドレス等が表示されプルダウンメニューによりドライバプログラムのタイプに関する情報を選択するようになっている。
【００３２】
次に、ＣＰＵ１０２は、ＷＥＢページのＨＴＭＬデータを送信する処理を行う（ステップＳ６０４）。ＣＰＵ１０２は、ネットワークＩ／Ｆ部１０５により作成したＨＴＭＬデータをＷＥＢアクセスしてきたクライアント端末２００に送信する。
【００３３】
次に、ＣＰＵ１０２は、クライアント端末２００からドライバプログラムの要求があるか否かを判定する（ステップＳ６０５）。ＣＰＵ１０２は、クライアント端末２００からステップＳ６０４で送信したＨＴＭＬデータのＷＥＢページにおいてプルダウンメニューにより、ドライバプログラムがサポートするＯＳ、エミュレーション、ＯＳの言語等を選択・指定していずれかのタイプのドライバプログラムを要求するプログラム要求情報が送信されたか否かを判定する。ドライバプログラムの要求がない場合には（ステップＳ６０５のＮＯ）、繰り返しこの処理を実行する。
【００３４】
次に、ＣＰＵ１０２は、ドライバプログラムの要求があった場合には（ステップＳ６０５のＹＥＳ）、要求されたタイプのドライバプログラムを取得する処理を行う（ステップＳ６０６）。ＣＰＵ１０２は、クライアント端末２００から送信されたプログラム要求情報で要求されたタイプのドライバプログラムの取得を要求するプログラム取得情報をネットワークＩ／Ｆ部１０５によりデータサーバ４００に送信する。
【００３５】
すると、データサーバ４００は、外部インターネット１を介してプログラム取得情報を受信すると、このプログラム取得情報に基づいてドライバ記憶部４０１を検索し、要求されたタイプのドライバプログラムを読み出す。プログラム取得情報にはプログラム要求情報で指定されている、ドライバプログラムがサポートするＯＳ、エミュレーション、ＯＳの言語等の情報が含まれており、これらの情報に一致するドライバプログラムを検索して読み出す。そして、この読み出したドライバプログラムをドライバ送信部４０２により、外部インターネット１を介して管理サーバ１００に送信する。管理サーバ１００はドライバプログラムを受信すると、これをＲＡＭ１０６に格納する。
【００３６】
次に、ＣＰＵ１０２は、ドライバプログラムのインストーラを作成する処理を行う（ステップＳ６０７）。ＣＰＵ１０２は、インストーラ作成部１１４を起動させ、予め記憶装置１０８に記憶されているプログラムのインストールを実行するためのインストーラのプログラムを読み出し、ＲＡＭ１０６に格納されたドライバプログラムをこのインストーラに付加する。
【００３７】
次に、ＣＰＵ１０２は、インストーラをクライアント端末２００に送信する処理を行う（ステップＳ６０８）。ＣＰＵ１０２は、ドライバ送信部１１５を起動させ、ドライバプログラムを付加したインストーラをネットワークＩ／Ｆ部１０５によりＷＥＢアクセスしてきたクライアント端末２００に送信する。
【００３８】
続いて、クライアント端末２００がドライバプログラムのインストーラによりインストールを実行する処理について図７を用いて詳細に説明する。まず、クライアント端末２００のＣＰＵ２０２は、上述のステップＳ５０７において管理サーバ１００から送信されたメールを受信すると（ステップＳ７０１）、出力装置２０４に表示、出力等を行う。ユーザは、この表示、出力等されたメールを見て新規の端末装置としてプリンタ３００が設置されたことを確認する。
【００３９】
次に、ＣＰＵ２０２は、ユーザの入力装置２０３を用いた操作に応じて管理サーバ１００にＷＥＢアクセスを行う（ステップＳ７０２）。ユーザがプリンタ３００が設置されたことを確認し、プリンタ３００のドライバプログラムのインストールが必要であると判断され、入力装置２０３を用いて管理サーバ１００にＷＥＢアクセスする際のＵＲＬの入力操作がされると、ＣＰＵ２０２は、ウェブブラウザ２１１を起動させ、このＵＲＬで特定される管理サーバ１００に対してＷＥＢページを要求するＷＥＢアクセスを行う。
【００４０】
次に、ＣＰＵ２０２は、ユーザによるＷＥＢページ上での入力装置２０３を用いた操作に応じて、ドライバプログラムの選択する処理を行う（ステップＳ７０３）。上述のステップＳ６０４において、ＷＥＢアクセスでのＷＥＢページの要求に応じて管理サーバ１００からＨＴＭＬデータが送信されると、ＣＰＵ２０２は、これを出力装置２０４に図１２に示すＷＥＢページの表示、出力等を行う。
【００４１】
すると、ユーザは、ＷＥＢページに表示されたプルダウンメニューから、クライアント端末２００のＯＳ、そのＯＳの言語、エミュレーション等を選択する。ＣＰＵ２０２は、この選択されたクライアント端末２００のＯＳ、そのＯＳの言語、エミュレーション等の各パラメータで特定されるタイプのドライバプログラムを選択して管理サーバ１００に要求するプログラム要求情報を作成する。
【００４２】
次に、ＣＰＵ２０２は、ネットワークＩ／Ｆ部２０５によりこの作成したプログラム要求情報を管理サーバ１００に送信する（ステップＳ７０４）。
【００４３】
次に、ＣＰＵ２０２は、プログラム要求情報の送信に応じてドライバプログラムが付加されたインストーラが送信されると、インストールを実行する（ステップＳ７０５）。ＣＰＵ１０２は、インストーラが送信されると、これを実行しこれに付加されたドライバプログラムをインストールする。そして、このドライバプログラムがインストールされたことにより、ユーザはクライアント端末２００によりドライバプログラムを起動させてプリンタ３００を動作させることが可能となる。
【００４４】
このように、ＣＰＵ１０２は、新規の端末装置を検出し、クライアント端末２００からドライバプログラムの要求があった場合には、要求されたタイプのドライバプログラムを要求するプログラム取得情報をデータサーバ４００に送信し、データサーバ４００のドライバ記憶部４０１から検索、読み出しを行ってこれを取得する。そして、ドライバプログラムを付加したインストーラをクライアント端末２００に送信して、インストールが実行される。
【００４５】
このため、管理サーバ１００を操作するオペレータ等がプリンタ３００対応の各ドライバプログラムを入手しておき、管理サーバ１００にダウンロード可能な状態に記憶させて設定等をする作業を行うことなく、クライアント端末２００が適切なドライバプログラムをインストールすることができ、容易に適切なドライバプログラムをインストール可能な端末管理システムを実現でき、利便性の向上を図ることができる。また、管理サーバ１００の記憶装置１０８等の負担を軽減して高信頼性、安定性を実現することができる。更に、クライアント端末２００に対して、管理サーバ１００がデータサーバ４００からドライバプログラムを取得して送信し、効率的にドライバプログラムを配信することが可能となる。
【００４６】
（第２の実施の形態）
以下、本発明を実施するための最良の形態の第２の実施の形態について図面を用いて詳細に説明する。図１３は、第２の実施の形態に係る端末管理システム１０全体の構成を示す説明図である。第２の実施の形態に係る端末管理システム１０は、第１の実施の形態における端末管理システム１０の構成に加えてローカルネットワーク２に接続された資源サーバ５００を備えている。
【００４７】
図１５は、管理サーバ１００の構成を示す説明図である。第２の実施の形態における管理サーバ１００は、記憶装置１０８が、更に後述するディレクトリサービスのツリーデータにアクセスしてそのツリーデータの内容を更新する機能を有するプログラムであるディレクトリサービスアクセス部１１６を記憶している。その他の構成は第１の実施の形態と同様であり、説明を省略する。
【００４８】
資源サーバ５００は、図１４に示すように、各ネットワーク領域等のローカルネットワーク２に関する情報、プリンタの名称、ＩＰアドレス、ＭＡＣアドレス等のプリンタに関する情報、ユーザの名前等のユーザに関する情報、クライアント端末に関する情報をツリー構造で表示したディレクトリサービスのツリーデータを記憶したツリーデータ記憶部５０１を備えている。なお、その他の端末管理システム１０の構成は第１の実施の形態と同様であり説明を省略する。
【００４９】
続いて第２の実施の形態における端末管理システム１０の動作について、図面を用いて詳細に説明する。第２の実施の形態における端末管理システム１０では、略第１の実施の形態における端末管理システム１０の動作と同様であり、管理サーバ１００がクライアント端末２００に対して新規の端末装置についてのメールを送信する処理が異なるため、この処理について図１６に示すフローチャート図を用いて詳細に説明する。まず、管理サーバ１００のＣＰＵ１０２は、ブロードキャスト送信処理を行う（ステップＳ１６０１）。ＣＰＵ１０２は、検索部１１１のプログラムを起動させ、新規の端末装置を検出するために、機器に関する情報を求める機器要求情報を作成する。この機器要求情報は予め記憶装置１０８やＲＯＭ１０７に格納されていても良い。そして、機器要求情報をブロードキャスト送信によりローカルネットワーク２上に接続された全ての機器に送信する。このステップＳ１６０１の処理は、例えば２４時間毎等の周期的に実行される。
【００５０】
次に、ＣＰＵ１０２は、タイムアウト検出処理を行う（ステップＳ１６０２）。ＣＰＵ１０２は、管理サーバ１００内の図示しないタイマー等を用いて所定時間が経過したか否かを判定する。ブロードキャスト送信に対する応答が無いまま所定時間が経過した場合には（ステップＳ１６０２のＹＥＳ）、処理を終了する。
【００５１】
次に、所定時間が経過する前にブロードキャスト送信に対する応答として、プリンタ３００から情報が送信された場合には（ステップＳ１６０２のＮＯ）、ＣＰＵ１０２は、このプリンタ３００に関する情報を受信し、ＲＡＭ１０６に格納する（ステップＳ１６０３）。このプリンタ３００に関する情報には、プリンタ３００のモデル名、ＩＰアドレス、ＭＡＣアドレス等が含まれている。
【００５２】
次に、ＣＰＵ１０２は、資源サーバ５００にプリンタ３００の検索を要求する処理を行う（ステップＳ１６０４）。ディレクトリサービスアクセス部１１６のプログラムを起動させ、資源サーバ５００に対してプリンタ３００に関する情報の検索を要求する検索要求情報を送信する。
【００５３】
次に、ＣＰＵ１０２は、新規の端末装置であるか否かを判定する処理を行う（ステップＳ１６０５）。ＣＰＵ１０２は、資源サーバ５００に対してＲＡＭ１０６に格納されたプリンタ３００に関する情報を送信する。すると、資源サーバ５００は、図示しないＣＰＵがツリーデータ記憶部５０１に記憶されているツリーデータを参照し、このツリーデータ内をプリンタ３００に関する情報に基づいて検索する処理を行う。プリンタ３００に関する情報がツリーデータに含まれている場合には（ステップＳ１６０５のＮＯ）、ステップＳ１６０２以降の処理を繰り返し実行する。
【００５４】
次に、プリンタ３００に関する情報がツリーデータに含まれていない場合には（ステップＳ１６０５のＹＥＳ）、資源サーバ５００からツリーデータに含まれていない旨の情報が管理サーバ１００に送信される。ＣＰＵ１０２は、プリンタ３００の情報の追加を要求する処理を行う（ステップＳ１６０６）。ツリーデータに含まれていない旨の情報を受信すると、プリンタ３００が新規の端末装置であると判定してプリンタ３００に関する情報をツリーデータに追加する追加要求情報を資源サーバ５００に送信する。すると、資源サーバ５００は、追加要求情報を受信すると、プリンタ３００に関する情報をツリーデータに追加しツリーデータ記憶部５０１に記憶する。ここでは、例えばプリンタ３００として名称が「ＰｒｉｎｔｅｒＣ」に関する情報をグループＢのネットワーク領域に追加したものとする。
【００５５】
次に、ＣＰＵ１０２は、資源サーバ５００にクライアント端末の情報を要求する処理を行う（ステップＳ１６０７）。プリンタ３００が含まれるネットワーク領域内に接続されているクライアント端末の情報を要求するクライアント要求情報を資源サーバ５００に送信する。すると、資源サーバ５００は、クライアント要求情報を受信すると、ツリーデータ記憶部５０１に記憶されたツリーデータを読み出す。そして、このツリーデータ内のプリンタ３００と同一のネットワーク領域を参照し、このネットワーク領域のユーザのメールアドレスを読み出して管理サーバ１００に送信する。ここでは、例えばプリンタ３００と同一のグループＢのネットワーク領域内のクライアント端末２００を使用するユーザに該当する「Ｕｓｅｒ３」のメールアドレスを取得する。
【００５６】
次に、ＣＰＵ１０２は、クライアント端末２００に対してメールを送信する処理を行う（ステップＳ１６０８）。ＣＰＵ１０２は、メール送信部１１２のプログラムを起動させ、新規の端末装置としてプリンタ３００が設置された旨と、管理サーバ１００にＷＥＢアクセスする際のＵＲＬを表示したメールを作成する。そして、資源サーバ５００から送信されたクライアント端末２００に該当する「Ｕｓｅｒ３」のメールアドレスを参照し、ネットワークＩ／Ｆ部１０５によりメールを送信する。その後、ステップＳ１６０１のブロードキャスト送信の他の応答があるまで待機状態とし、ステップＳ１６０２以降の処理を繰り返し実行する。
【００５７】
このように、ＣＰＵ１０２は、プリンタ３００に関する情報を受信すると、資源サーバ５００が記憶するツリーデータを検索し、検索の結果ツリーデータに含まれておらず新規の端末装置である場合には追加して記憶する。そして、クライアント端末２００のユーザのメールアドレスをツリーデータから取得して、プリンタ３００が設置された旨のメールをクライアント端末２００に送信する。
【００５８】
このため、管理サーバ１００を操作するオペレータ等がローカルネットワーク２内のネットワーク領域に関する情報や機器に関する情報等を入手しておき、管理サーバ１００の記憶装置１０８に記憶させておく必要が無く、新規の端末装置が設置された旨のメールをクライアント端末２００に送信することができ、容易に新規の端末装置が設置された旨のメールの送信を実現できる。また、管理サーバ１００の記憶装置１０８にツリーデータを記憶させる必要が無いため、管理サーバ１００のメンテナンス作業を軽減でき、記憶装置１０８の負担を軽減することができて安定性、高信頼性を実現することができる。
【００５９】
（第３の実施の形態）
以下、本発明を実施するための最良の形態の第３の実施の形態について図面を用いて詳細に説明する。第３の実施の形態に係る端末管理システム１０は、第２の実施の形態における端末管理システム１０の構成と略同様であり、管理サーバ１００の構成が異なっている。
【００６０】
図１７は、管理サーバ１００の構成を示す説明図である。第３の実施の形態における管理サーバ１００は、記憶装置１０８が、更に、予め様々な種類のＯＳやＯＳの言語、エミュレーションに対応した複数種類のプリンタ３００に対応するドライバプログラムを記憶したドライバ保存部１１７と、クライアント端末２００から送信されたプログラム要求情報に基づいてドライバ保存部１１７を検索する機能を有するプログラムであるドライバ保存確認部１１８と、ドライバ保存部１１７に記憶されたドライバプログラムと同一タイプのドライバプログラムをデータサーバ４００から取得するための設定を行う機能を有するプログラムであるドライバ取得設定部１１９と、ドライバ取得設定部１１９が設定した内容を確認する機能を有するプログラムであるドライバ取得設定確認部１２０と、同一タイプで複数のドライバプログラムのバージョン情報を比較する機能を有するプログラムであるドライババージョン比較部１２１とを記憶している。
【００６１】
続いて第３の実施の形態における端末管理システム１０の動作について、図面を用いて詳細に説明する。第３の実施の形態における端末管理システム１０では、略第２の実施の形態における端末管理システム１０の動作と同様であり、管理サーバ１００がクライアント端末２００に対してドライバプログラムのインストーラを送信する処理におけるステップＳ６０５以降の処理が異なるため、この処理について図１９に示すフローチャート図を用いて詳細に説明する。まず、管理サーバ１００のＣＰＵ１０２は、クライアント端末２００からドライバプログラムの要求があるか否かを判定する（ステップＳ１９０１）。ＣＰＵ１０２は、クライアント端末２００から上述のステップＳ６０４で送信したＨＴＭＬデータのＷＥＢページにおいてプルダウンメニューにより、ドライバプログラムがサポートするＯＳ、エミュレーション、ＯＳの言語等を選択・指定していずれかのタイプのドライバプログラムを要求するプログラム要求情報が送信されたか否かを判定する。ドライバプログラムの要求がない場合には（ステップＳ１９０１のＮＯ）、繰り返しこの処理を実行する。
【００６２】
次に、ＣＰＵ１０２は、ドライバプログラムの要求があった場合には（ステップＳ１９０１のＹＥＳ）、要求されたタイプのドライバプログラムが保存されているか否かを判定する処理を行う（ステップＳ１９０２）。ドライバ保存確認部１１８を起動させ、ドライバ保存部１１７に保存されているドライバプログラムを検索する。図１８に示すような、記憶装置１０８に記憶されているドライバプログラムリストを参照して、プログラム要求情報で指定されているドライバプログラムがサポートするＯＳ、エミュレーション、ＯＳの言語等の情報に基づいて、これらの情報に一致するタイプのドライバプログラムの検索を行う。検索した結果、ドライバ保存部１１７にプログラム要求情報で要求されたタイプのドライバプログラムが記憶されていない場合には（ステップＳ１９０２のＮＯ）、ステップＳ１９０７以降ステップＳ１９１２までの処理を実行するが、ステップＳ１９０４以降の処理は行わない。
【００６３】
次に、ドライバ保存部１１７にプログラム要求情報で要求されたタイプのドライバプログラムが記憶されている場合には（ステップＳ１９０２のＹＥＳ）、ＣＰＵ１０２は、プログラム要求情報で要求されたタイプのドライバプログラムを取得するか否かを判定する処理を行う（ステップＳ１９０３）。ドライバ取得設定部１１９のプログラムを起動させ、所定の条件を満たす場合には要求されたタイプのドライバプログラムをデータサーバ４００から取得する判定を行う。所定の条件としては、例えば要求されたタイプのドライバプログラムをドライバ保存部１１７に記憶させたのが、現時点よりも１年以上過去である等の場合にはデータサーバ４００から取得する判定をする。データサーバ４００から取得しない判定をした場合には（ステップＳ１９０３のＮＯ）、ステップＳ１９０４以降の処理を行う。データサーバ４００から取得する判定をした場合には（ステップＳ１９０３のＹＥＳ）、ＣＰＵ１０２は、図２０に示すような、記憶装置１０８に記憶されたドライバプログラムの取得設定のためのデータを参照し、このデータ内の設定項目を「取得する」に定める。そして、図１８に示すような、ドライバプログラムリスト内容のうち要求されたタイプのドライバプログラムのドライバ受信フラグの項目を「１」とする更新をし記憶装置１０８に記憶する。
【００６４】
次に、データサーバ４００から取得する判定をした場合には（ステップＳ１９０３のＹＥＳ）、ＣＰＵ１０２は、データサーバ４００から要求されたタイプのドライバプログラムを取得する処理を行う（ステップＳ１９０７）。ＣＰＵ１０２は、プログラム要求情報で要求されたタイプのドライバプログラムの取得を要求するプログラム取得情報をネットワークＩ／Ｆ部１０５によりデータサーバ４００に送信する。
【００６５】
すると、データサーバ４００は、外部インターネット１を介してプログラム取得情報を受信すると、このプログラム取得情報に基づいてドライバ記憶部４０１を検索し、要求されたタイプのドライバプログラムを読み出す。プログラム取得情報にはプログラム要求情報で指定されている、ドライバプログラムがサポートするＯＳ、エミュレーション、ＯＳの言語等の情報が含まれており、これらの情報に一致するドライバプログラムを検索して読み出す。そして、この読み出したドライバプログラムをドライバ送信部４０２により、外部インターネット１を介して管理サーバ１００に送信する。管理サーバ１００はドライバプログラムを受信すると、これをＲＡＭ１０６に格納する。
【００６６】
次に、ＣＰＵ１０２は、取得したドライバプログラムのバージョン情報が新しいか否かを判定する処理を行う（ステップＳ１９０８）。ドライババージョン比較部１２１のプログラムを起動させ、取得したものと同一タイプのドライバプログラムをドライバ保存部１１７から読み出し、このドライバプログラムに添付されているバージョン情報をＲＡＭ１０６に格納されているドライバプログラムに添付されているバージョン情報と比較する。比較した結果、ＲＡＭ１０６に格納されているドライバプログラムのバージョン情報が、ドライバ保存部１１７に保存されているものよりも新しいタイプでもなく、更新されたものでもない場合には（ステップＳ１９０８のＮＯ）、ステップＳ１９０４以降の処理を実行する。なおここで、上述のステップＳ１９０２において、ドライバ保存部１１７にプログラム要求情報で要求されたタイプのドライバプログラムが記憶されていない場合には、この処理は行わず、ステップＳ１９０９の処理を実行する。
【００６７】
次に、ＣＰＵ１０２は、ＲＡＭ１０６に格納されているドライバプログラムのバージョン情報が、ドライバ保存部１１７に保存されているものよりも新しいタイプ、または、更新されたものである場合には（ステップＳ１９０８のＹＥＳ）、保存する処理を行う（ステップＳ１９０９）。ＲＡＭ１０６に格納されているドライバプログラムを記憶装置１０８のドライバ保存部１１７に保存させ、図１８に示すような、記憶装置１０８に記憶されているドライバプログラムリストにこのドライバプログラムの内容を追加し記憶装置１０８に記憶する。
【００６８】
次に、ＣＰＵ１０２は、ステップＳ１９０８で比較した結果が更新されたものであるか否かを判定する（ステップＳ１９１０）。比較した結果が新しいタイプである場合には（ステップＳ１９１０のＮＯ）、ステップＳ１０４移行の処理を実行する。
【００６９】
次に、ＣＰＵ１０２は、ステップＳ１９０８で比較した結果が更新されたものである場合には（ステップＳ１９１０のＹＥＳ）、資源サーバ５００にクライアント端末２００の情報を要求する処理を行う（ステップＳ１９１１）。プログラム要求情報の要求元のクライアント端末２００の情報を要求するクライアント要求情報を資源サーバ５００に送信する。すると、資源サーバ５００は、クライアント要求情報を受信すると、ツリーデータ記憶部５０１に記憶されたツリーデータを読み出す。そして、このツリーデータ内のプログラム要求情報の要求元のユーザのメールアドレスを読み出して管理サーバ１００に送信する。ここでは、例えばクライアント端末２００を使用するユーザに該当する「Ｕｓｅｒ３」のメールアドレスを取得する。
【００７０】
次に、ＣＰＵ１０２は、クライアント端末２００に対してメールを送信する処理を行う（ステップＳ１９１２）。ＣＰＵ１０２は、メール送信部１１２のプログラムを起動させ、プログラム要求情報で要求されたタイプのドライバプログラムが更新されている旨を表示したメールを作成する。そして、資源サーバ５００から送信されたクライアント端末２００に該当する「Ｕｓｅｒ３」のメールアドレスを参照し、ネットワークＩ／Ｆ部１０５によりメールを送信する。
【００７１】
次に、ＣＰＵ１０２は、プログラム要求情報で要求されているドライバプログラムを記憶装置１０８から読み出し、ＲＡＭ１０６に格納する処理を行う（ステップＳ１９０４）。
【００７２】
次に、ＣＰＵ１０２は、ドライバプログラムのインストーラを作成する処理を行う（ステップＳ１９０５）。ＣＰＵ１０２は、インストーラ作成部１１４を起動させ、予め記憶装置１０８に記憶されているプログラムのインストールを実行するためのインストーラのプログラムを読み出し、ＲＡＭ１０６に格納されたドライバプログラムをこのインストーラに付加する。
【００７３】
次に、ＣＰＵ１０２は、インストーラをクライアント端末２００に送信する処理を行う（ステップＳ１９０６）。ＣＰＵ１０２は、ドライバ送信部１１５を起動させ、ドライバプログラムを付加したインストーラをネットワークＩ／Ｆ部１０５によりＷＥＢアクセスしてきたクライアント端末２００に送信する。
【００７４】
このように、ＣＰＵ１０２は、プログラム要求情報で要求されたドライバプログラムを取得すると、ドライバプログラムのバージョン情報が新しいか否かを判定する処理を行う。そして、取得したドライバプログラムのバージョン情報が、ドライバ保存部１１７に保存されているものから更新されたものである場合には、クライアント端末２００に対して、更新されている旨のメールを送信する。
【００７５】
このため、ユーザは、クライアント端末２００を用いて、ドライバプログラムの要求を行った場合には、メールを受信して更新されていることを確認することができるので、この更新されたものを要求するか否かの判断をして適切なドライバプログラムを要求し、インストールすることができる。また、更新されている旨のメールを送信するので、より適切なドライバプログラムを配信可能な端末管理システムを実現することができる。更に、記憶装置１０８のドライバ保存部１１７に予めドライバプログラムを保存させておいて、プログラム要求情報による要求のたびにデータサーバ４００から取得する処理を行わないため、データサーバ４００におけるアクセス負荷の増大を抑え信頼性の向上を図ることができる。
【００７６】
更に、ドライバプログラムリストのドライバ受信フラグを「１」として、常に更新されたドライバプログラムを取得し、更新された旨のメールをクライアント端末２００に送信することにより、ユーザとして企業が特定のドライバプログラムを継続した使用を希望している場合に、常にこの特定のドライバプログラムの更新されたものを提供でき、希望に添った対応と共に適切なドライバプログラムの提供を実現できる。
【００７７】
（第４の実施の形態）
以下、本発明を実施するための最良の形態の第４の実施の形態について図面を用いて詳細に説明する。第４の実施の形態に係る端末管理システム１０は、第４の実施の形態における端末管理システム１０の構成と略同様であり、管理サーバ１００の構成が異なっている。
【００７８】
図２１は、管理サーバ１００の構成を示す説明図である。第４の実施の形態における管理サーバ１００は、記憶装置１０８が、更に、クライアント端末２００から送信されたドライバプログラムのインストール結果を受信する機能を有するプログラムであるインストール結果受信部１２２と、インストール結果を用いてログを生成する機能を有するプログラムであるインストールログ生成部１２３とを記憶している。
【００７９】
図２３は、管理サーバ１００のインストーラ作成部１１４により作成されたインストーラの構成を示す説明図である。このインストーラのプログラム６００は、実際のインストールの処理を実行するインストール処理部６１１と、インストールの結果を管理サーバ１００に対して送信する処理を実行するインストール結果通知部６１２とを含む実行コード部分と、ドライバ保存部１１７やデータサーバ４００から取得したドライバプログラム６２１と、新規の端末装置としてのプリンタ３００のＩＰアドレス等の情報を含むプリンタ情報６２２と、管理サーバ１００のＵＲＬを含む管理サーバＵＲＬ６２３とを含むリソース部分とから構成されている。
【００８０】
続いて第４の実施の形態における端末管理システム１０の動作について、図面を用いて詳細に説明する。第４の実施の形態における端末管理システム１０では、略第３の実施の形態における端末管理システム１０の動作と同様であり、クライアント端末２００がドライバプログラムのインストーラによりインストールを実行する処理におけるステップＳ７０５の処理が異なるため、この処理について図２４に示すフローチャート図を用いて詳細に説明する。まず、クライアント端末２００のＣＰＵ２０２は、上述のステップＳ７０５において、ドライバプログラムが付加されたインストーラ６００が管理サーバ１００から送信されると、このインストーラ６００の実行を開始する（ステップＳ２４０１）。
【００８１】
次に、ＣＰＵ２０２は、インストーラ６００のリソース部分からドライバプログラム６２１を取得する処理を行う（ステップＳ２４０２）。実行コード内のインストール処理部６１１を起動させ、例えば、リソース部分のドライバプログラム６２１、プリンタ情報６２２、管理サーバＵＲＬ６２３等の各データ内のデータを識別するためのヘッダ等に基づいて検索し、ドライバプログラム６２１を取得する。
【００８２】
次に、ＣＰＵ２０２は、インストーラ６００のリソース部分からドライバプログラムの操作対象となるプリンタ情報６２２を取得する処理を行う（ステップＳ２４０３）。例えば、リソース部分のドライバプログラム６２１、プリンタ情報６２２、管理サーバＵＲＬ６２３等の各データ内のデータを識別するためのヘッダ等に基づいて検索し、プリンタ情報６２２を取得する。
【００８３】
次に、ＣＰＵ２０２は、取得したドライバプログラム６２１を、クライアント端末２００の記憶装置１０８内の所定の領域に使用可能な状態にインストールする処理を行う（ステップＳ２４０４）。インストール処理部６１１によりドライバプログラム６２１をインストールした後、インストール結果の情報を作成する。この結果としては、例えばインストールが成功した場合には「ＯＫ」、失敗した場合には「ＮＧ」の情報が作成される。なお、ここでドライバプログラムについては、クライアント端末２００により作成等された画像等のデータがプリンタ３００で印刷実行可能なデータ形式に変換させ、印刷を実行させる機能だけでなく、クライアント端末２００から画像等のデータをプリンタ３００に送信するためのポートを作成・設定等する機能をも含まれているものとする。
【００８４】
次に、ＣＰＵ２０２は、インストール結果を取得する処理を行う（ステップＳ２４０５）。実行コード内のインストール結果通知部６１２を起動させ、インストール処理部６１１が作成した結果を取得する。
【００８５】
次に、ＣＰＵ２０２は、ドライバプログラムに関する情報を取得する処理を行う（ステップＳ２４０６）。インストールしたドライバプログラムから、ドライバプログラムがサポートするＯＳ、エミュレーション、ＯＳの言語等のドライバプログラムに関する情報を取得する。
【００８６】
次に、ＣＰＵ２０２は、クライアント端末２００の名称を取得する処理を行う（ステップＳ２４０７）。記憶装置２０８内のオペレーションシステム２０９からクライアント端末２００の情報として設定されている「名称」の情報を取得する。
【００８７】
次に、ＣＰＵ２０２は、リソース内の管理サーバＵＲＬを取得する処理を行う（ステップＳ２４０８）。そして、上述のステップＳ２４０３、２４０５、２４０６、２４０７において取得した情報を管理サーバ１００に対して送信する処理を行う（ステップＳ２４０９）。
【００８８】
続いて、管理サーバ１００がクライアント端末２００からインストールの結果等の情報を受信した後、ログを生成する処理について、図２５に示すフローチャート図を用いて詳細に説明する。まず、管理サーバ１００のＣＰＵ１０２は、上述のステップＳ２４０９において、クライアント端末２００からインストールの結果等の情報が送信されたか否かを判定する（ステップＳ２５０１）。送信されていない場合には（ステップＳ２５０１のＮＯ）、再度この処理を繰り返し行う。
【００８９】
次に、ＣＰＵ１０２は、インストールの結果等の情報が送信された場合には（ステップＳ２５０１のＹＥＳ）、インストール結果受信部１２２を起動させ、これらの情報を受信し記憶装置１０８に記憶させる（ステップＳ２５０２）。
【００９０】
次に、ＣＰＵ１０２は、クライアント端末２００からインストールの結果等の表示が要求されたか否かを判定する（ステップＳ２５０３）。ＣＰＵ１０２は、クライアント端末２００から管理サーバ１００にＷＥＢアクセスされ、インストールの結果等の表示の要求があるか否かを判定する。インストール結果等の表示の要求がない場合には（ステップＳ２５０３のＮＯ）、再度繰り返しこの処理を実行する。
【００９１】
次に、ＣＰＵ１０２は、インストール結果等の表示の要求がされている場合には（ステップＳ２５０３のＹＥＳ）、インストールログ生成部１２３を起動させ、記憶装置１０８に記憶されたインストール結果等の情報を読み出す処理を行う（ステップＳ２５０４）。
【００９２】
次に、ＣＰＵ１０２は、ＨＴＭＬデータを作成する処理を行う（ステップＳ２５０５）。読み出したインストール結果等の情報を表示した、図２２に示すような、ＷＥＢページのＨＴＭＬデータを作成する。
【００９３】
次に、ＣＰＵ１０２は、ＨＴＭＬデータを送信する処理を行う（ステップＳ２５０６）作成したＷＥＢページのＨＴＭＬデータをネットワークＩ／Ｆ部１０５により、ＷＥＢアクセスしたクライアント端末２００に送信する。そして、クライアント端末２００では、受信したＨＴＭＬデータが出力装置２０４に表示・出力等され、ユーザはこれを見てインストールの結果等を確認する。
【００９４】
このように、ＣＰＵ１０２は、クライアント端末２００からインストールの結果等の情報を受信すると、記憶装置１０８に記憶し、クライアント端末２００から表示の要求があると、これらの情報を表示したＷＥＢページのＨＴＭＬデータを作成してクライアント端末２００はこれを受信して出力する。
【００９５】
このため、ユーザは、クライアント端末２００を用いて、ドライバプログラムをインストールした後、その結果をＷＥＢページとして表示させ、確認することができ、利便性の向上を実現することができる。また、管理サーバ１００を操作するオペレータも記憶装置１０８に記憶されたインストールの結果等の情報を参照して、新規の端末であるプリンタ３００のドライバプログラムのインストールの状況を把握することができ、利便性の向上を実現することができる。
【００９６】
（他の実施の形態）
上述の実施の形態においては、クライアント端末２００が管理サーバ１００にＷＥＢアクセスした際に、ＷＥＢサーバを使用したＨＴＴＰプロトコル通信を適用したが、これに限られず管理サーバ１００とクライアント端末２００の記憶装置１０８、２０８が記憶するプログラム相互にリモートプロシージャコールを介して通信するようにしても良い。
【００９７】
上述の実施の形態においては、新規の端末装置としてプリンタ３００を用いたが、ＦＡＸ、スキャナ等の他の種類の機器であっても良い。
【００９８】
上述の実施の形態においては、インストール結果等の情報を記憶装置１０８に記憶させていたが、資源サーバ５００内のツリーデータ記憶部５０１が記憶しているディレクトリサービスのツリーデータの一部に格納するようにしても良い。
【００９９】
上述の実施の形態においては、管理サーバ１００がプログラム要求情報で指定されたＯＳの種類等の情報に従って適切なドライバプログラムを検索等していたが、これに限られず管理サーバ１００のＣＰＵ１０２が、クライアント端末２００からドライバプログラムを要求する情報を受信すると、資源サーバ５００のディレクトリサービスのツリーデータを参照してクライアント端末２００にアクセスしてＯＳの種類等の情報を取得し、自動的に適切なドライバプログラムを検索・選択等してインストーラを作成しても良い。
【０１００】
また、管理サーバ１００のＣＰＵ１０２は、定期的にデータサーバ４００からドライバプログラムを取得しておき、ドライババージョン比較部１２１を起動させ、ドライバ保存部１１７に保存されているドライバプログラムとバージョン情報を相互に比較する処理を定期的に行う。そして、ドライバ保存部１１７に保存されているドライバプログラムよりも新しい、または更新されている場合には、メール送信部１１２のプログラムを起動させて、ドライバプログラムが新しい、または更新されている旨のメールを作成してクライアント端末２００に送信して通知するようにしても良い。このような構成により、ユーザは新しいまたは更新されたドライバプログラムが取得されたことを確認でき、即座にインストールすることができる。
【０１０１】
上述の実施の形態においては、プログラム要求情報によりドライバプログラムがサポートするＯＳ、エミュレーション、ＯＳの言語等を選択・指定することとしているが、これに加えて、プリンタ３００が使用する複数種類のプリンタ記述言語のうちのいずれかを選択・指定することとしても良い。
【産業上の利用可能性】
【０１０２】
情報の送受信が可能なローカルネットワーク上に接続された端末装置と、前記ローカルネットワークを介して前記端末装置に関する情報を送受信することが可能な管理サーバと、前記ローカルネットワークを介して前記管理サーバから前記端末装置に関する情報を受信可能なクライアント端末とを備えた端末管理システムにおいて利用することが可能である。
【図面の簡単な説明】
【０１０３】
【図１】本発明に係る端末管理システム全体の構成を示す説明図である。
【図２】本発明に係る端末管理システムのクライアント端末の構成を示す説明図である。
【図３】本発明に係る端末管理システムの管理サーバの構成を示す説明図である。
【図４】第１の実施の形態における端末管理システム全体の動作を示す説明図である。
【図５】第１の実施の形態における端末管理システムの管理サーバの動作を示す説明図である。
【図６】第１の実施の形態における端末管理システムの管理サーバの動作を示す説明図である。
【図７】第１の実施の形態における端末管理システムのクライアント端末の動作を示す説明図である。
【図８】プリンタ３００対応のドライバプログラムのリストを示す説明図である。
【図９】ローカルネットワーク上に接続された端末装置のリストを示す説明図である。
【図１０】端末管理システムのユーザのリストを示す説明図である。
【図１１】各種のＯＳのリストを示す説明図である。
【図１２】新規の端末装置が設置された旨のメールを示す説明図である。
【図１３】第２の実施の形態の本発明における端末管理システム全体の構成を示す説明図である。
【図１４】ディレクトリサービスのツリーデータを示す説明図である。
【図１５】第２の実施の形態における管理サーバ１００の構成を示す説明図である。
【図１６】第２の実施の形態における管理サーバの動作を示すフローチャート図である。
【図１７】第３の実施の形態における管理サーバの構成を示す説明図である。
【図１８】第３の実施の形態におけるドライバプログラムのリストを示す説明図である。
【図１９】第３の実施の形態における管理サーバの動作を示すフローチャート図である。
【図２０】第３の実施の形態におけるドライバプログラムの取得設定のためのデータを示す説明図である。
【図２１】第４の実施の形態における管理サーバの構成を示す説明図である。
【図２２】第４の実施の形態におけるインストール結果等の情報を表示したＷＥＢページを示す説明図である。
【図２３】第４の実施の形態におけるドライバプログラムの構成を示す説明図である。
【図２４】第４の実施の形態におけるクライアント端末の動作を示すフローチャート図である。
【図２５】第４の実施の形態における管理サーバの動作を示すフローチャート図である。
【符号の説明】
【０１０４】
１  外部インターネット
２  ローカルネットワーク
３  ルータ
１０  端末管理システム
１００  管理サーバ
１０１、２０１  コンピュータバス
１０２、２０２  ＣＰＵ
１０３、２０３  入力装置
１０４、２０４  出力装置
１０５、２０５  ネットワークＩ／Ｆ部
１０６、２０６  ＲＡＭ
１０７、２０７  ＲＯＭ
１０８、２０８  記憶装置
２００  クライアント端末
３００  プリンタ
４００  データサーバ
５００  資源サーバ
【図１】
0004818652.tif 000002
【図２】
0004818652.tif 000003
【図３】
0004818652.tif 000004
【図４】
0004818652.tif 000005
【図５】
0004818652.tif 000006
【図６】
0004818652.tif 000007
【図７】
0004818652.tif 000008
【図８】
0004818652.tif 000009
【図９】
0004818652.tif 000010
【図１０】
0004818652.tif 000011
【図１１】
0004818652.tif 000012
【図１２】
0004818652.tif 000013
【図１３】
0004818652.tif 000014
【図１４】
0004818652.tif 000015
【図１５】
0004818652.tif 000016
【図１６】
0004818652.tif 000017
【図１７】
0004818652.tif 000018
【図１８】
0004818652.tif 000019
【図１９】
0004818652.tif 000020
【図２０】
0004818652.tif 000021
【図２１】
0004818652.tif 000022
【図２２】
0004818652.tif 000023
【図２３】
0004818652.tif 000024
【図２４】
0004818652.tif 000025
【図２５】
0004818652.tif 000026