説明

デバイスドライバー管理システム

【課題】デバイスのコスト低減を図りつつ、デバイスドライバーのバージョン管理を実現することができるデバイスドライバー管理システムを提供する。
【解決手段】デバイスは、ネットワークを介して、所定の周期で、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、当該デバイスを特定するデバイス特定情報とを、管理サーバーコンピューターに送信する。管理サーバーコンピューターは、受信した前記第1バージョン情報と、当該管理サーバーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを比較して、第2バージョン情報の方が新しいバージョンである場合には、デバイスドライバーをダウンロードさせる必要があることを示すダウンロード要否識別情報を、デバイス特定情報に対応付けて保持する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デバイスドライバー管理システムに関し、特に、プリンターの保持するデバイスドライバーのバージョン管理を効率的に行うデバイスドライバー管理システムに関する。
【背景技術】
【0002】
ユーザーが使用するユーザーコンピューターからプリンターに印刷を行わせるためには、ユーザーコンピューターにプリンタードライバーをインストールする必要がある。プリンタードライバーは、ユーザーコンピューターが生成した印刷データに基づいてプリンターで印刷を行う場合に、そのプリンターに対する様々な制御を行うためのソフトウェアである。
【0003】
このプリンタードライバーは、プリンターメーカーから、ユーザーに供給されるのが一般的である。すなわち、ユーザーがプリンターを購入すると、プリンターとともに、CD−ROMなどに格納されたプリンタードライバーも、一緒に梱包されている。ユーザーは、このCD−ROMから、プリンタードライバーを、自らのユーザーコンピューターにインストールして、ユーザーコンピューターとプリンターとの間の制御が適正に行われるようにしている。
【0004】
しかし、プリンタードライバーは、ソフトウェアであることから、機能の向上を図ったり、バグを解消したりした、新しいバージョンのプリンタードライバーが供給されることもある。このようにバージョンアップがなされた最新のプリンタードライバーをユーザーが取得するためには、プリンターメーカーのホームページにアクセスし、このホームページから最新のプリンタードライバーをユーザーコンピューターにダウンロードする必要があった。
【0005】
しかし、最新のプリンタードライバーがプリンターメーカーのホームページ上に提供されたとしても、ユーザーは、その存在を知らないまま、従来のプリンタードライバーを使用し続けることも多かった。また、最新のプリンタードライバーがホームページ上に掲載されたことをユーザーが知ったとしても、そのダウンロードはユーザーが能動的に行わなければならず、そのためのユーザーコンピューターの操作が煩雑であるという問題もあった。
【0006】
このような問題を解決するために、特開平11−327828号公報(特許文献1)や特開2006−82541号公報(特許文献2)では、プリンター自体が最新のプリンタードライバーを保持する管理システムを開示している。すなわち、ネットワーク上に最新のプリンタードライバーを保持している管理サーバーコンピューターを設け、プリンターが定期的に管理サーバーコンピューターにアクセスし、自らが保持するプリンタードライバーのバージョンと、管理サーバーコンピューターが保持するプリンタードライバーのバージョンとをプリンター側で比較する。そして、自らが保持するプリンタードライバーのバージョンが最新のものでなければ、プリンターは、管理サーバーコンピューターからプリンタードライバーを取得し、このプリンターに接続されている各ユーザーコンピューターに、最新のプリンタードライバーを配信する。このようにすることにより、各ユーザーコンピューターは、プリンターに接続するだけで、最新のプリンタードライバーを取得できるようにしている。
【0007】
しかしながら、特開平11−327828号公報(特許文献1)や特開2006−82541号公報(特許文献2)に開示されている管理システムでは、プリンター自体がプリンタードライバーのバージョン管理を主体的に行う必要があり、そのための機能をプリンター本体に盛り込む必要がある。すなわち、プリンタードライバーのバージョンを比較したり、バージョンを管理したりするための各種ソフトウェアをプリンターに搭載する必要があり、そのソフトウェアの開発/維持管理コストが発生し、また、そのソフトウェアをプログラムとして格納する記憶装置がプリンターに必要となり、プリンターのコスト増大を招いてしまう。
【0008】
このようなドライバーのバージョン管理に対する問題は、プリンターに限らず、スキャナーやプロジェクターなどの周辺デバイスに関するデバイスドライバーであれば、同様に生じ得る。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開平11−327828号公報
【特許文献2】特開2006−82541号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
そこで本発明は、前記課題に鑑みてなされたものであり、デバイスのコスト低減を図りつつ、デバイスドライバーのバージョン管理を実現することができるデバイスドライバー管理システムを提供することを目的とする。
【課題を解決するための手段】
【0011】
上記課題を解決するため、本発明に係るデバイスドライバー管理システムは、
デバイスと、前記デバイスの使用に用いられるデバイスドライバーを管理する管理サーバーコンピューターとを有するとともに、前記デイバスはネットワークを介して前記管理サーバーコンピューターに接続可能である、デバイスドライバー管理システムであって、
前記デバイスは、
前記ネットワークを介して、所定の周期で、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、当該デバイスを特定するデバイス特定情報とを、前記管理サーバーコンピューターに送信する、デバイス情報送信手段と、
前記ネットワークを介して、前記管理サーバーコンピューターに対して、前記デバイス特定情報を付加して、所定の周期でポーリングを行う、ポーリング実行手段と、
を備えており、
前記管理サーバーコンピューターは、
前記デバイス情報送信手段で送信された前記第1バージョン情報と前記デバイス特定情報とを受信する、デバイス情報受信手段と、
前記デバイス情報受信手段で受信した前記第1バージョン情報と、当該管理サーバーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを比較して、前記第2バージョン情報の方が新しいバージョンである場合には、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて保持する、ダウンロード要否識別情報保持手段と、
前記ポーリング実行手段によるポーリングを受信した場合に、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報が、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示しているか否かを判断する、ダウンロード要否判断手段と、
前記ダウンロード要否識別情報が、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記ダウンロード要否判断手段が判断した場合には、前記ポーリングを行った前記デバイスに当該管理サーバーコンピューターが保持するデバイスドライバーのダウンロードを実行させる命令セットを作成し、この命令セットを含むポーリング返信を、前記ネットワークを介して前記デバイスに送信する、返信送信手段と、
を備えており、
前記デバイスは、さらに、
前記返信送信手段で送信された前記ポーリング返信を受信し、前記ポーリング返信に含まれている命令セットを実行することにより、前記管理サーバーコンピューターから、前記管理サーバーコンピューターが保持するデバイスドライバーをダウンロードする、ダウンロード実行手段を、
備えることを特徴とする。
【0012】
この場合、前記デバイスは、プリンターであり、前記デイバスドライバーは、プリンタードライバーであってもよい。
【0013】
この場合、前記デバイスは、
ユーザーコンピューターから、当該ユーザーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第3バージョン情報を含む印刷要求を受信する、印刷要求受信手段と、
前記印刷要求受信手段で受信した前記第3バージョン情報と、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第4バージョン情報とを比較して、前記第4バージョン情報の方が新しいバージョンである場合には、新しいバージョンのデバイスドライバーの取得を促す督促通知を、前記ユーザーコンピューターに送信する、通知送信手段と、
をさらに備えるようにしてもよい。
【0014】
この場合、前記デバイスは、前記督促通知に応じて、前記ユーザーコンピューターから、新しいバージョンのデバイスドライバーの送信要求を受け付けた場合には、当該デバイスが保持する前記デバイスドライバーを、前記ユーザーコンピューターに送信する、デバイスドライバー送信手段を、さらに備えるようにしてもよい。
【0015】
また、前記ダウンロード要否識別情報保持手段は、
前記第1バージョン情報よりも前記第2バージョン情報の方が新しいバージョンである場合には、前記ダウンロード要否識別情報を、新しいバージョンのデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示す第1状態にし、
前記第1バージョン情報よりも前記第2バージョン情報の方が新しいバージョンではない場合には、前記ダウンロード要否識別情報を、新しいバージョンのデバイスドライバーを前記デバイスにダウンロードさせる必要がないことを示す第2状態にするとともに、
前記ダウンロード要否判断手段は、前記ダウンロード要否識別情報が前記第1状態である場合に、前記ダウンロード要否識別情報が、前記管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると判断するようにしてもよい。
【0016】
本発明に係る管理サーバーコンピューターは、
ネットワークを介してデバイスに接続され、前記デバイスの使用に用いられるデバイスドライバーを管理する管理サーバーコンピューターであって、
前記デバイスから、前記ネットワークを介して所定の周期で、前記デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、前記デバイスを特定するデバイス特定情報とを含むデバイス情報を受信する、デバイス情報受信手段と、
前記デバイス情報受信手段で受信した前記第1バージョン情報と、当該管理サーバーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを比較して、前記第2バージョン情報の方が新しいバージョンである場合には、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて保持する、ダウンロード要否識別情報保持手段と、
前記デバイスから、前記ネットワークを介して、前記デバイス特定情報を付加したポーリングを所定の周期で受信する、ポーリング受信手段と、
前記ポーリング受信手段で前記ポーリングを受信した場合に、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報が、当該管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示しているか否かを判断する、ダウンロード要否判断手段と、
前記ダウンロード要否識別情報が、当該管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記ダウンロード要否判断手段が判断した場合には、前記ポーリングを行った前記デバイスに当該管理サーバーコンピューターの保持するデバイスドライバーのダウンロードを実行させる命令セットを作成し、この命令セットを含むポーリング返信を、前記ネットワークを介して前記デバイスに送信する、返信送信手段と、
前記返信送信手段で送信された前記ポーリング返信に含まれている命令セットを実行することにより前記デバイスで生成されたデバイスドライバーのダウンロード要求に基づいて、当該管理サーバーコンピューターが保持するデバイスドライバーを、前記デバイスにダウンロードさせる、ダウンロード実行手段と、
を備えることを特徴とする。
【0017】
本発明に係るデバイスは、
デバイスドライバーを管理する管理サーバーコンピューターに、ネットワークを介して接続可能な、デバイスであって、
前記ネットワークを介して、所定の周期で、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、当該デバイスを特定するデバイス特定情報とを、前記管理サーバーコンピューターに送信することにより、前記管理サーバーコンピューターに、前記第1バージョン情報と、前記管理サーバーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを比較させて、前記第2バージョン情報の方が新しいバージョンである場合には、前記管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて前記管理サーバーコンピューターに保持させる、デバイス情報送信手段と、
前記ネットワークを介して、前記管理サーバーコンピューターに対して、前記デバイス特定情報を付加して、所定の周期でポーリングを行う、ポーリング実行手段と、
前記ポーリング実行手段によるポーリングを受信した前記管理サーバーコンピューターが、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報に基づいて、前記管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記管理サーバーコンピューターが判断した場合に、前記ポーリングを行った前記デバイスに前記管理サーバーコンピューターの保持するデバイスドライバーのダウンロードを実行させる命令セットを含むポーリング返信を、前記ネットワークを介して、前記管理サーバーコンピューターから受信する、ポーリング返信受信手段と、
前記ポーリング返信に含まれている前記命令セットを実行することにより、前記管理サーバーコンピューターから、前記管理サーバーコンピューターが保持するデバイスドライバーをダウンロードする、ダウンロード実行手段と、
を備えることを特徴とする。
【0018】
本発明に係るデバイスドライバー管理システムの制御方法は、
デバイスと、前記デバイスの使用に用いられるデバイスドライバーを管理する管理サーバーコンピューターとを有するとともに、前記デイバスはネットワークを介して前記管理サーバーコンピューターに接続可能である、デバイスドライバー管理システムの制御方法であって、
前記デバイスが、前記ネットワークを介して、所定の周期で、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、当該デバイスを特定するデバイス特定情報とを、前記管理サーバーコンピューターに送信するステップと、
前記管理サーバーコンピューターが、前記第1バージョン情報と前記デバイス特定情報とを受信するステップと、
受信した前記第1バージョン情報と、前記管理サーバーコンピューターの保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを、前記管理サーバーコンピューターが比較して、前記第2バージョン情報の方が新しいバージョンであると判断した場合には、前記管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて保持するステップと、
前記デバイスが、前記ネットワークを介して、前記管理サーバーコンピューターに対して、前記デバイス特定情報を付加して、所定の周期でポーリングを行うステップと、
前記管理サーバーコンピューターが前記ポーリングを受信した場合に、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報が、前記管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示しているか否かを判断するステップと、
前記ダウンロード要否識別情報が、前記管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記管理サーバーコンピューターが判断した場合には、前記ポーリングを行った前記デバイスに前記管理サーバーコンピューターが保持するデバイスドライバーのダウンロードを実行させる命令セットを作成し、この命令セットを含むポーリング返信を、前記ネットワークを介して前記デバイスに送信するステップと、
前記デバイスが前記ポーリング返信を受信し、前記ポーリング返信に含まれている命令セットを実行することにより、前記管理サーバーコンピューターから、前記管理サーバーコンピューターが保持するデバイスドライバーをダウンロードするステップを、
備えることを特徴とする。
【図面の簡単な説明】
【0019】
【図1】本発明の一実施形態に係るデバイスドライバー管理システムの全体構成の一例を示すブロック図。
【図2】図1の管理サーバーコンピューターの内部構成の一例を説明するブロック図。
【図3】図1のユーザーコンピューターの内部構成の一例を説明するブロック図。
【図4】図1のプリンターの内部構成の一例を説明するブロック図。
【図5】図1のデバイスドライバー管理システムで実行されるデバイスドライバー管理処理の内容の一例を説明するためのフローチャートを示す図(その1)。
【図6】図1のデバイスドライバー管理システムで実行されるデバイスドライバー管理処理の内容の一例を説明するためのフローチャートを示す図(その2)。
【図7】本実施形態に係る管理サーバーコンピューターが保持するダウンロード要否識別テーブルの構成の一例を示す図。
【図8】本実施形態に係る管理サーバーコンピューターが作成するポーリング返信ファイルの一例を説明する図。
【図9】本実施形態に係るユーザーコンピューターの表示画面に表示されるユーザー確認画面の一例を示す図。
【発明を実施するための形態】
【0020】
以下、図面を参照して、本発明の実施形態を説明する。なお、以下に説明する実施形態は、本発明の技術的範囲を限定するものではない。
【0021】
図1は、本実施形態に係るデバイスドライバー管理システム10の全体構成の一例を説明するブロック図である。この図1に示すように、本実施形態に係るデバイスドライバー管理システム10では、管理サーバーコンピューター20と、この管理サーバーコンピューター20にネットワーク30を介して接続されたプリンターネットワークシステム32とを備えて、構成されている。
【0022】
また、プリンターネットワークシステム32は、内部ネットワーク60を介して、1又は複数のユーザーコンピューター40とプリンター50とを備えて、構成されている。図1の例では、内部ネットワーク60を介して、1台のプリンター50と、3台のユーザーコンピューター40A、40B、40Cが接続されている。この内部ネットワーク60は、いわゆるローカルネットワークであり、この内部ネットワーク60により、1台のプリンターを複数のユーザーコンピューター40で利用する環境が実現されている。
【0023】
内部ネットワーク60には、ネットワークサーバー70が接続されており、このネットワークサーバー70を介して、ユーザーコンピューター40とプリンター50とは、ネットワーク30に接続され、管理サーバーコンピューター20に接続される。
【0024】
ネットワーク30を介して管理サーバーコンピューター20に接続されるユーザーコンピューター40やプリンター50の台数は任意である。また、ネットワーク30を介して管理サーバーコンピューター20に接続されるプリンターネットワークシステム32の数も任意である。特に本実施形態においては、複数のプリンターネットワークシステム32が、ネットワーク30を介して、管理サーバーコンピューター20に接続される態様を想定している。
【0025】
ネットワーク30は、不特定多数の利用者が接続可能な公衆ネットワークで構成されており、例えば、インターネットにより構成されている。この図1の例では、ユーザーコンピューター40やプリンター50は、内部ネットワーク60を介して、外部のネットワーク30に接続されるように構成されているが、個々のユーザーコンピューター40やプリンター50が、直接、ネットワーク30に接続されるようにしてもよい。
【0026】
図2は、管理サーバーコンピューター20の内部構成の一例を説明するブロック図である。この図2に示すように、本実施形態に係る管理サーバーコンピューター20は、CPU(Central Processing Unit)100と、RAM(Random Access Memory)102と、ROM(Read Only Memory)104と、ハードディスクドライブ106と、通信インターフェース108と、ユーザー入力インターフェース110と、表示画面112とを備えており、これらは互いに、内部バス114を介して接続されている。
【0027】
CPU100は、この管理サーバーコンピューター20の全体的な制御を行う制御部を構成する。このCPU100は、この各種の制御を実現するにあたり、必要なプログラムをROM104やハードディスクドライブ106から読み込んだり、生成されたデータをRAM102やハードディスクドライブ106に書き込んだりする。また、CPU100は、管理サーバーコンピューター20のユーザーに必要な情報を、適宜、表示画面112に表示する。
【0028】
ハードディスクドライブ106は、いわゆる大容量の補助記憶装置を構成しており、プログラムの他、各種制御データなども不揮発的に記憶される。特に、本実施形態においては、このハードディスクドライブ106には、最新のプリンタードライバーや、このプリンタードライバーをプリンター50に配信するのに必要なプログラムやデータを格納することができる。
【0029】
通信インターフェース108は、管理サーバーコンピューター20が、ユーザーコンピューター40やプリンター50と通信をするために必要となるインターフェースである。すなわち、管理サーバーコンピューター20は、この通信インターフェース108を介して、ネットワーク30に接続することにより、ユーザーコンピューター40やプリンター50との通信を実現する。
【0030】
ユーザー入力インターフェース110は、ユーザーが、管理サーバーコンピューター20に様々な指示やデータを入力するためのインターフェースであり、例えば、キーボードやマウス、各種の制御ボタンなどにより、構成されている。なお、図2の例では、ユーザー入力インターフェース110は、管理サーバーコンピューター20の本体と一体に設けられているが、このユーザー入力インターフェース110は、管理サーバーコンピューター20本体とは分離されて別個に設けられているようにしてもよい。
【0031】
表示画面112は、例えば、CRT(Cathode Ray Tube)ディスプレイや、液晶ディスプレイにより、構成されている。なお、図2の例では、表示画面112は、管理サーバーコンピューター20の本体と一体に設けられているが、この表示画面112は、管理サーバーコンピューター20本体とは分離されて別個に設けられているようにしてもよい。
【0032】
管理サーバーコンピューター20のユーザーは、ユーザー入力インターフェース110を操作して、ハードディスクドライブ106に、各プリンター50に配信する最新のプリンタードライバーを格納し保持させておく。そして、管理サーバーコンピューター20は、後述する処理を行うことにより、この最新のプリンタードライバーを、各プリンター50に配信する。
【0033】
図3は、ユーザーコンピューター40の内部構成の一例を説明するブロック図である。この図3に示すように、本実施形態に係るユーザーコンピューター40は、CPU(Central Processing Unit)200と、RAM(Random Access Memory)202と、ROM(Read Only Memory)204と、ハードディスクドライブ206と、通信インターフェース208と、ユーザー入力インターフェース210と、表示画面212とを備えており、これらは互いに、内部バス216を介して接続されている。
【0034】
CPU200は、このユーザーコンピューター40の全体的な制御を行う制御部を構成する。このCPU200は、この各種の制御を実現するにあたり、必要なプログラムをROM204やハードディスクドライブ206から読み込んだり、生成されたデータをRAM202やハードディスクドライブ206に書き込んだりする。また、CPU200は、ユーザーコンピューター40のユーザーに必要な情報を、適宜、表示画面212に表示する。
【0035】
ハードディスクドライブ206は、いわゆる大容量の補助記憶装置を構成しており、プログラムの他、各種制御データなども不揮発的に記憶される。特に、本実施形態においては、このハードディスクドライブ206には、各種アプリケーションプログラムや、アプリケーションプログラムを利用して生成した各種のデータが、格納されている。また、ハードディスクドライブ206には、各種のデータを、プリンター50で印刷させるためのプログラムや、この印刷の際に必要となるプリンター50のプリンタードライバーも格納することができる。
【0036】
通信インターフェース208は、ユーザーコンピューター40が、管理サーバーコンピューター20やプリンター50と通信をするために必要となるインターフェースである。すなわち、ユーザーコンピューター40は、この通信インターフェース208を介して、内部ネットワーク60に接続することにより、ネットワーク30に接続されて、管理サーバーコンピューター20との通信を実現する。また、ユーザーコンピューター40は、この通信インターフェース208を介して、内部ネットワーク60に接続されて、プリンター50との通信を実現する。
【0037】
ユーザー入力インターフェース210は、ユーザーが、ユーザーコンピューター40に様々な指示やデータを入力するためのインターフェースであり、例えば、キーボードやマウス、各種の制御ボタンなどにより、構成されている。なお、図3の例では、ユーザー入力インターフェース210は、ユーザーコンピューター40の本体と一体に設けられているが、このユーザー入力インターフェース210は、ユーザーコンピューター40本体とは分離されて別個に設けられているようにしてもよい。
【0038】
表示画面212は、例えば、CRT(Cathode Ray Tube)ディスプレイや、液晶ディスプレイにより、構成されている。なお、図3の例では、表示画面212は、ユーザーコンピューター40の本体と一体に設けられているが、この表示画面212は、ユーザーコンピューター40本体とは分離されて別個に設けられているようにしてもよい。
【0039】
ユーザーコンピューター40のユーザーは、ユーザー入力インターフェース210を操作して、任意のタイミングでプリンター50に印刷を指示するが、この際、このユーザーコンピューター40が保持するプリンタードライバーのバージョンが古い場合には、プリンター50から最新のプリンタードライバーに置き換えるように促される。本実施形態においては、このプリンター50からの督促に応じて、プリンタードライバーの取得を要求するだけで、ユーザーは、ユーザーコンピューター40のプリンタードライバーを最新のバージョンにすることができる。
【0040】
図4は、プリンター50の内部構成の一例を説明するブロック図である。この図4に示すように、本実施形態に係るプリンター50は、CPU(Central Processing Unit)300と、RAM(Random Access Memory)302と、ROM(Read Only Memory)304と、ハードディスクドライブ306と、通信インターフェース308と、ユーザー入力インターフェース310と、表示画面312と、印刷実行部314を備えており、これらは互いに、内部バス316を介して接続されている。
【0041】
CPU300は、このプリンター50の全体的な制御を行う制御部を構成する。このCPU300は、この各種の制御を実現するにあたり、必要なプログラムをROM304やハードディスクドライブ306から読み込んだり、生成されたデータをRAM302やハードディスクドライブ306に書き込んだりする。また、CPU300は、ユーザーに必要な情報を、適宜、表示画面312に表示する。
【0042】
ハードディスクドライブ306は、いわゆる大容量の補助記憶装置を構成しており、プログラムの他、各種制御データなども不揮発的に記憶される。特に、本実施形態においては、このハードディスクドライブ306には、管理サーバーコンピューター20から取得した最新のバージョンのプリンタードライバーが格納される。また、管理サーバーコンピューター20から最新のプリンタードライバーを取得したり、この取得したプリンタードライバーをユーザーコンピューター40に配信したりするのに必要なプログラムやデータを格納することもできる。
【0043】
但し、このハードディスクドライブ306は、プリンター50に搭載しないようにすることもできる。この場合、プログラムやデータを書き換え可能に不揮発的に記憶するフラッシュメモリなどの補助記憶装置を搭載すればよい。この場合、後述するプリンタードライバーは、フラッシュメモリなどの補助記憶装置に格納される。また、管理サーバーコンピューター20から最新のプリンタードライバーを取得したり、この取得したプリンタードライバーをユーザーコンピューター40に配信したりするのに必要なプログラムやデータは、この補助記憶装置やROM304に格納される。
【0044】
通信インターフェース308は、プリンター50が、管理サーバーコンピューター20やユーザーコンピューター40と通信をするために必要となるインターフェースである。すなわち、プリンター50は、この通信インターフェース308を介して、内部ネットワーク60に接続されて、ネットワーク30に接続されることにより、管理サーバーコンピューター20との通信を実現する。また、プリンター50は、この通信インターフェース308を介して、内部ネットワーク60に接続されることにより、ユーザーコンピューター40との通信を実現する。
【0045】
ユーザー入力インターフェース310は、ユーザーが、プリンター50に様々な指示やデータを入力するためのインターフェースであり、例えば、テンキーや各種の制御ボタンなどにより、構成されている。また、例えば、表示画面312がタッチパネルで構成されている場合には、このユーザー入力インターフェース310と表示画面312と一体に構成することができる。表示画面312は、例えば、液晶ディスプレイにより、構成されている。
【0046】
印刷実行部314は、このプリンター50で印刷を行う機構部である。プリンターエンジンの方式は任意であるが、例えば、レーザービーム方式やインクジェット方式などがある。また、印刷用紙などの印刷媒体を、このプリンターエンジンに供給する機構も、この印刷実行部314に設けられている。
【0047】
プリンター50の基本的動作は、ユーザーコンピューター40から印刷データを受信して、印刷実行部314で印刷を実行することである。但し、本実施形態に係るプリンター50は、管理サーバーコンピューター20から最新のバージョンのプリンタードライバーを取得して、ユーザーコンピューター40に供給する機能も有している。
【0048】
次に、図5及び図6に基づいて、本実施形態に係るデバイスドライバー管理システム10で行われるデバイスドライバー管理処理について説明する。この図5及び図6は、デバイスドライバー管理システム10で実行されるデバイスドライバー管理処理の内容を説明するためのフローチャートを示す図である。
【0049】
管理サーバーコンピューター20では、例えば、ROM104やハードディスクドライブ106から、デバイスドライバー管理処理プログラムを読み出して、CPU100で実行することにより、実現される処理である。また、ユーザーコンピューター40では、例えば、ROM204やハードディスクドライブ206から、デバイスドライバー管理処理プログラムを読み出して、CPU200で実行することにより、実現される処理である。また、プリンター50では、例えば、ROM304やハードディスクドライブ306から、デバイスドライバー管理処理プログラムを読み出して、CPU300で実行することにより、実現される処理である。
【0050】
図5に示すように、プリンター50は、ネットワーク30を介して、管理サーバーコンピューター20に、所定の周期で定期的に、プリンター情報を送信する(ステップS100)。このプリンター情報には、少なくとも、プリンター50が保持しているプリンタードライバーのバージョンを特定するための情報と、プリンター50を特定するためのプリンター特定情報とが、含まれている。このプリンター特定情報は、例えば、プリンター50のシリアルナンバーにより構成されている。また、所定の周期をどの程度の期間にするかは、任意であり、例えば、1日に1回の周期や、1週間に1回の周期などが考えられる。
【0051】
管理サーバーコンピューター20は、ネットワーク30を介して、プリンター50から送信されたプリンター情報を受信する(ステップS110)。続いて、管理サーバーコンピューター20は、プリンター情報に含まれていたプリンタードライバーのバージョンと、自らが保持しているプリンタードライバーのバージョンとを比較して、プリンター50が保持しているプリンタードライバーのバージョンが最新のものであるかどうかを判断する(ステップS120)。
【0052】
この比較の結果、プリンター50が保持しているプリンタードライバーのバージョンが最新のものであると判断した場合には、管理サーバーコンピューター20は、特別な処理をすることなく、プリンター情報を受信したことに伴う処理を終了する。
【0053】
一方、この比較の結果、プリンター50が保持しているプリンタードライバーのバージョンが最新のものはないと判断した場合、すなわち、管理サーバーコンピューター20の保持するプリンタードライバーのバージョンの方が、プリンター50の保持するプリンタードライバーのバージョンよりも新しいと判断した場合には、管理サーバーコンピューター20は、ダウンロード要否識別テーブルを更新し、ダウンロードの必要性がある旨の情報を保持する(ステップS130)。
【0054】
図7は、本実施形態に係るダウンロード要否識別テーブルTB10の構成の一例を示す図である。このダウンロード要否識別テーブルTB10は、例えば、管理サーバーコンピューター20のハードディスクドライブ106に形成されて、保持されている。
【0055】
このダウンロード要否識別テーブルTB10においては、プリンター特定情報と、ダウンロード要否識別情報とが、対応付けられて格納されている。すなわち、プリンター特定情報で特定されるプリンター50に、この管理サーバーコンピューター20が保持する新しいバージョンのプリンタードライバーをダウンロードさせる必要性が有るのか無いのかを識別する情報が、格納されている。
【0056】
本実施形態のステップS130においては、管理サーバーコンピューター20は、プリンター情報に含まれていたプリンター特定情報を検索キーとして、このダウンロード要否識別テーブルTB10を検索し、プリンター情報に含まれていたプリンター特定情報に対応するダウンロード要否識別情報を、「要」する。
【0057】
例えば、プリンター特定情報としてプリンター50のシリアルナンバーを用いている場合には、管理サーバーコンピューター20は、ステップS110で受信したプリンター情報から、シリアルナンバーを取得する。この取得したシリアルナンバーが例えば「123456789」だったとすると、管理サーバーコンピューター20は、この「123456789」というシリアルナンバーに対応する、ダウンロード要否識別情報を「不要」から「要」に変更する。
【0058】
なお、本実施形態においては、プリンター特定情報は、管理サーバーコンピューター20のユーザーが予め、ダウンロード要否識別テーブルTB10に登録しておくことを想定している。但し、このステップS130において、一致するプリンター特定情報がダウンロード要否識別テーブルTB10で検出できなかった場合には、自動的に、そのプリンター特定情報をダウンロード要否識別テーブルTB10に登録してしまうようにしてもよい。
【0059】
次に、図5に示すように、プリンター50は、所定の周期で、管理サーバーコンピューター20に対してポーリングを行う(ステップS140)。本実施形態においては、このポーリングは、プリンター50と管理サーバーコンピューター20とが両者の存在を確認する目的で、また、プリンター50の消耗品の残量管理や保守管理を管理サーバーコンピューター20を用いて遠隔的に行う目的で、行われている。換言すれば、このステップS140のポーリングは、プリンター50の保持するデバイスドライバーのバージョン管理を行うか否かに拘わらず、実行される処理である。
【0060】
このポーリングは、例えば、1時間に1回といった周期で、プリンター50から、管理サーバーコンピューター20に対して、行われる。このポーリングには、少なくとも、プリンター50を特定するために、上述したプリンター特定情報が含まれている。本実施形態においては、このポーリングは、XML(Extensible Markup Language)ファイルで作成される。
【0061】
管理サーバーコンピューター20では、ネットワーク30を介して、このポーリングを受信する(ステップS150)。そして、このポーリングを受信した管理サーバーコンピューター20は、ポーリングを正常に受信したことを示すポーリング返信ファイルを作成する(ステップS160)。本実施形態においては、このポーリング返信ファイルも、XMLファイルで作成される。
【0062】
次に、管理サーバーコンピューター20は、ポーリングを送信したプリンター50が、プリンタードライバーのダウンロードが必要とされているものであるかどうかを判断する(ステップS170)。具体的には、管理サーバーコンピューター20は、ポーリングに含まれているプリンター特定情報に基づいて、ダウンロード要否識別テーブルTB10を検索し、そのプリンター特定情報に対応するダウンロード要否識別情報を取得する。そして、このダウンロード要否識別情報が「要」になっている場合には、プリンタードライバーのダウンロードが必要とされているプリンター50であると判断し、ダウンロード要否識別情報が「不要」になっている場合には、プリンタードライバーのダウンロードが必要とされていないプリンター50であると判断する。
【0063】
プリンタードライバーのダウンロードが必要とされていると判断した場合には、管理サーバーコンピューター20は、プリンタードライバーダウンロード命令を、ポーリング返信ファイルに付加する(ステップS180)。すなわち、プリンター50に管理サーバーコンピューター20から新しいバージョンのプリンタードライバーをダウンロードさせるための命令セットを作成し、ポーリング返信ファイルに埋め込む。
【0064】
図8は、このステップS180で作成されたポーリング返信ファイルの一例を示す図である。この図8に示すように、ポーリング返信ファイルは、ステップS160で作成された正常受信を示す情報と、ステップS180で作成されたプリンタードライバーダウンロード命令とを含む、XMLファイルとして生成される。
【0065】
一方、ステップS170において、プリンタードライバーのダウンロードが必要とされていないと判断した場合には、管理サーバーコンピューター20は、このステップS180の処理をスキップする。
【0066】
次に、管理サーバーコンピューター20は、作成したポーリング返信ファイルを、ネットワーク30を介して、プリンター50に送信する(ステップS190)。そして、プリンター50は、このポーリング返信ファイルを受信する(ステップS200)。
【0067】
この受信したポーリング返信ファイルは、プリンター50で開かれて実行されるため、このポーリング返信ファイルにプリンタードライバーダウンロード命令が含まれている場合には、プリンター50は、このプリンタードライバーダウンロード命令を実行することとなる。すなわち、プリンター50は、プリンタドライバダウンロード命令に基づいて、新しいプリンタードライバーを取得するために、ダウンロード要求を生成し、ネットワーク30を介して、管理サーバーコンピューター20に送信する(ステップS210)。このダウンロード要求は、管理サーバーコンピューター20で受信される(ステップS220)。
【0068】
このダウンロード要求を受信した管理サーバーコンピューター20は、ハードディスクドライブ106から最新のバージョンのプリンタードライバーを取得し、ネットワーク30を介して、このプリンター50に対して送信する(ステップS230)。
【0069】
管理サーバーコンピューター20から送信された最新のバージョンのプリンタードライバーは、プリンター50で受信され(ステップS240)、ハードディスクドライブ306に格納される(ステップS250)。すなわち、ハードディスクドライブ306に保持されていた古いバージョンのプリンタードバイバーを破棄して、新しいバージョンのプリンタドライバーに置き換える。これにより、プリンター50が保持するプリンタードライバーが、最新のバージョンのものになったこととなる。
【0070】
なお、ステップS230において、プリンタードライバーを送信し終えた管理サーバーコンピューター20は、ダウンロード要否識別テーブルTB10におけるダウンロード要否識別情報を、「要」から「不要」に変更する(ステップS260)。これにより、次回のポーリングでは、ポーリング返信ファイルに、プリンタードライバーダウンロード命令が付加されないようになる。
【0071】
次に、図6に示すように、ユーザーコンピューター40では、任意のタイミングで印刷要求が生成される(ステップS300)。例えば、ユーザーが、ユーザーコンピューター40Bのアプリケーションプログラムを利用して、文書や画像を作成し、プリンター50での印刷指示をユーザーコンピューター40に入力することにより、ユーザーコンピューター40Bで印刷要求が生成される。以下の説明では、ユーザーコンピューター40Bで、印刷要求が生成された場合を例として、説明を行うが、他のユーザーコンピューター40A、40Cで印刷要求が生成された場合でも、同様の処理が実行される。
【0072】
ユーザーコンピューター40Bで生成された印刷要求は、ユーザーコンピューター40Bが保持するプリンタードライバーを利用して、ユーザーコンピューター40Bから内部ネットワーク60を介してプリンター50に送信される(ステップS302)。本実施形態においては、この印刷要求には、通常の印刷データに加えて、このユーザーコンピューター40Bが保持するプリンタードライバーのバージョンを特定する情報も含まれている。
【0073】
ユーザーコンピューター40Bから送信された印刷要求は、プリンター50で受信される(ステップS304)。そして、プリンター50は、印刷要求に含まれているプリンタードライバーのバージョンと、プリンター50が保持しているプリンタードライバーのバージョンとを比較して、印刷要求に含まれていたプリンタードライバーのバージョンが最新のものであるかどうかを判断する(ステップS306)。
【0074】
印刷要求に含まれていたプリンタードライバーのバージョンが最新のものである場合、すなわち、印刷要求に含まれていたプリンタードライバーのバージョンが、プリンター50の保持するプリンタードライバーのバージョンと同じか、印刷要求に含まれていたプリンタードライバーのバージョンの方が新しい場合には、プリンター50は、ステップS304で受信した印刷要求に基づく印刷を実行し(ステップS308)、この処理を終了する。
【0075】
一方、印刷要求に含まれていたプリンタードライバーのバージョンが最新のものではない場合、すなわち、プリンター50の保持するプリンタードライバーのバージョンの方が、印刷要求に含まれていたプリンタードライバーのバージョンよりも新しい場合には、プリンター50は、旧バージョン通知を生成し、ユーザーコンピューター40Bに送信する(ステップS310)。すなわち、ユーザーコンピューター40Bのプリンタードライバーのバージョンが古いことをユーザーに知らせ、プリンター50から新しいバージョンのプリンタードライバーを取得することを促す通知である、旧バージョン通知を生成し、内部ネットワーク60を介して、ユーザーコンピューター40Bに送信する。
【0076】
ユーザーコンピューター40Bは、この旧バージョン通知を受信し(ステップS312)、表示画面212に、ユーザー確認画面を表示する(ステップS314)。図9は、このステップS314で、表示画面212に表示されるユーザー確認画面W10の構成の一例を示す図である。この図9に示すように、ユーザー確認画面W10には、このユーザーコンピューター40Bが使用しているプリンタードライバーのバージョンよりも新しいものが、プリンター50から取得できる旨のメッセージを表示し、ユーザーに、新しいバージョンのプリンタードライバーの取得を促すとともに、取得するための処理を実行するかどうかを選択させる。
【0077】
ユーザーは、このユーザー確認画面W10が表示された場合、ユーザー入力インターフェース210を用いて、新しいバージョンのプリンタードライバーを取得するか否かを、このユーザーコンピューター40Bに入力する。このため、ユーザーコンピューター40Bは、ユーザーがどちらを選択入力したかを判断する(ステップS316)。
【0078】
もし、ユーザーが新しいバージョンのプリンタードライバーを取得しない旨の指示を選択した場合には、ユーザーコンピューター40は、新しいバージョンのプリンタードライバーを取得することなく、この処理を終了する。
【0079】
一方、ユーザーが新しいバージョンのプリンタードライバーを取得する旨の指示を選択した場合には、ユーザーコンピューター40Bは、プリンター50に、最新のプリンタードライバーの送付を要求する最新ドライバー要求を、内部ネットワーク60を介して送信する(ステップS318)。
【0080】
この最新ドライバー要求は、プリンター50で受信される(ステップS320)。そして、この最新ドライバー要求を受信したプリンター50は、ハードディスクドライブ306から最新のプリンタードライバーを取得して、ユーザーコンピューター40Bに内部ネットワーク60を介して送信する(ステップS322)。
【0081】
プリンター50から送信された最新のプリンタードライバーは、ユーザーコンピューター40Bで受信され(ステップS324)、インストールが実行される(ステップS326)。すなわち、プリンタードライバーを受信したユーザーコンピューター40Bは、これを一時的にハードディスクドライブ206に格納し、現在使用しているプリンタードライバーと入れ替えるためのインストール処理を行う。これにより、ユーザーコンピューター40Bのプリンタードライバーが、最新のバージョンのものに入れ替わったこととなる。
【0082】
以上のように、本実施形態に係るデバイスドライバー管理システム10によれば、管理サーバーコンピューター20が保持する最新のプリンタードライバーを、ユーザーコンピューター40のユーザーは、容易に取得し、ユーザーコンピューター40が使用するプリンタードライバーを最新のものに維持管理することができる。すなわち、ユーザーコンピューター40のユーザーは、プリンター50から新しいプリンタードライバーの取得を促すユーザー確認画面W10が表示された場合に、その取得を許諾する入力を行うだけで、自動的に、新しいバージョンのプリンタードライバーを、ユーザーコンピューター40にインストールすることができる。このため、ユーザーコンピューター40のユーザーが、自主的に、管理サーバーコンピューター20にアクセスして、新しいプリンタードライバーを取得する必要がなくなり、ユーザーの利便性が向上する。
【0083】
また、プリンター50では、自らが保持するプリンタードライバーのバージョンに関する情報を、所定の周期に管理サーバーコンピューター20に送信した上で、別の目的でも必要とされているポーリング処理をするだけで、自らが保持するプリンタードライバーのバージョンを最新のものに維持することができる。このため、プリンター50に搭載するプログラムを簡易なものにすることができ、プログラムの開発コストや、メンテナンスコストの低減を図ることができる。さらに、プログラムが簡易なものになることから、プログラムを格納するための記憶装置の容量を削減でき、プリンター50のコスト低減を図ることができる。
【0084】
なお、本発明は上記実施形態に限定されず種々に変形可能である。例えば、上述した実施形態では、デバイスドライバー管理システム10が管理するデバイスドライバーが、プリンタードライバーである場合を例に本発明を説明したが、このデバイスドライバー管理システム10が管理するデバイスドライバーは、プリンタードライバーに限られるものではない。例えば、デバイスドライバー管理システム10が、スキャナドライバーやプロジェクタドライバーなどのデバイスドライバーを管理するような場合でも、本発明を適用することができる。
【0085】
また、上述の実施形態で説明したデバイスドライバー管理処理については、この処理を実行するためのプログラムをフレキシブルディスク、CD−ROM(Compact Disc-Read Only Memory)、ROM、メモリカード等の記録媒体に記録して、記録媒体の形で頒布することが可能である。この場合、この記録媒体に記録されたプログラムを管理サーバーコンピューター20や、ユーザーコンピューター40、プリンター50に読み込ませ、実行させることにより、上述した実施形態を実現することができる。
【0086】
また、管理サーバーコンピューター20や、ユーザーコンピューター40、プリンター50は、オペレーティングシステムや別のアプリケーションプログラム等の他のプログラムを備える場合がある。この場合、管理サーバーコンピューター20や、ユーザーコンピューター40、プリンター50の備える他のプログラムを活用するために、そのコンピューターが備えるプログラムの中から、上述した実施形態と同等の処理を実現するプログラムを呼び出すような命令を含むプログラムを、記録媒体に記録するようにしてもよい。
【0087】
さらに、このようなプログラムは、記録媒体の形ではなく、ネットワークを通じて搬送波として頒布することも可能である。ネットワーク上を搬送波の形で伝送されたプログラムは、管理サーバーコンピューター20や、ユーザーコンピューター40、プリンター50に取り込まれて、このプログラムを実行することにより上述した実施形態を実現することができる。
【0088】
また、記録媒体にプログラムを記録する際や、ネットワーク上を搬送波として伝送される際に、プログラムの暗号化や圧縮化がなされている場合がある。この場合には、これら記録媒体や搬送波からプログラムを読み込んだ管理サーバーコンピューター20や、ユーザーコンピューター40、プリンター50は、そのプログラムの復号や伸張を行った上で、実行する必要がある。
【0089】
また、上述した実施形態では、デバイスドライバー管理処理をソフトウェアにより実現する場合を例に説明したが、管理サーバーコンピューター20や、ユーザーコンピューター40、プリンター50に設けられたASIC(Application Specific IC)などのハードウェアにより実現するようにしてもよい。さらには、この処理を、ソフトウェアとハードウェアとが協働して実現するようにしてもよい。
【符号の説明】
【0090】
10 デバイスドライバー管理システム
20 管理サーバーコンピューター
30 ネットワーク
32 プリンターネットワークシステム
40(40A、40B、40C) ユーザーコンピューター
50 プリンター
60 内部ネットワーク
70 ネットワークサーバー

【特許請求の範囲】
【請求項1】
デバイスと、前記デバイスの使用に用いられるデバイスドライバーを管理する管理サーバーコンピューターとを有するとともに、前記デイバスはネットワークを介して前記管理サーバーコンピューターに接続可能である、デバイスドライバー管理システムであって、
前記デバイスは、
前記ネットワークを介して、所定の周期で、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、当該デバイスを特定するデバイス特定情報とを、前記管理サーバーコンピューターに送信する、デバイス情報送信手段と、
前記ネットワークを介して、前記管理サーバーコンピューターに対して、前記デバイス特定情報を付加して、所定の周期でポーリングを行う、ポーリング実行手段と、
を備えており、
前記管理サーバーコンピューターは、
前記デバイス情報送信手段で送信された前記第1バージョン情報と前記デバイス特定情報とを受信する、デバイス情報受信手段と、
前記デバイス情報受信手段で受信した前記第1バージョン情報と、当該管理サーバーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを比較して、前記第2バージョン情報の方が新しいバージョンである場合には、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて保持する、ダウンロード要否識別情報保持手段と、
前記ポーリング実行手段によるポーリングを受信した場合に、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報が、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示しているか否かを判断する、ダウンロード要否判断手段と、
前記ダウンロード要否識別情報が、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記ダウンロード要否判断手段が判断した場合には、前記ポーリングを行った前記デバイスに当該管理サーバーコンピューターが保持するデバイスドライバーのダウンロードを実行させる命令セットを作成し、この命令セットを含むポーリング返信を、前記ネットワークを介して前記デバイスに送信する、返信送信手段と、
を備えており、
前記デバイスは、さらに、
前記返信送信手段で送信された前記ポーリング返信を受信し、前記ポーリング返信に含まれている命令セットを実行することにより、前記管理サーバーコンピューターから、前記管理サーバーコンピューターが保持するデバイスドライバーをダウンロードする、ダウンロード実行手段を、
備えることを特徴とする、デバイスドライバー管理システム。
【請求項2】
前記デバイスは、プリンターであり、前記デイバスドライバーは、プリンタードライバーである、ことを特徴とする請求項1に記載のデバイスドライバー管理システム。
【請求項3】
前記デバイスは、
ユーザーコンピューターから、当該ユーザーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第3バージョン情報を含む印刷要求を受信する、印刷要求受信手段と、
前記印刷要求受信手段で受信した前記第3バージョン情報と、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第4バージョン情報とを比較して、前記第4バージョン情報の方が新しいバージョンである場合には、新しいバージョンのデバイスドライバーの取得を促す督促通知を、前記ユーザーコンピューターに送信する、通知送信手段と、
をさらに備えることを特徴とする請求項2の記載のデバイスドライバー管理システム。
【請求項4】
前記デバイスは、前記督促通知に応じて、前記ユーザーコンピューターから、新しいバージョンのデバイスドライバーの送信要求を受け付けた場合には、当該デバイスが保持する前記デバイスドライバーを、前記ユーザーコンピューターに送信する、デバイスドライバー送信手段を、さらに備えることを特徴とする請求項3に記載のデバイスドライバー管理システム。
【請求項5】
前記ダウンロード要否識別情報保持手段は、
前記第1バージョン情報よりも前記第2バージョン情報の方が新しいバージョンである場合には、前記ダウンロード要否識別情報を、新しいバージョンのデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示す第1状態にし、
前記第1バージョン情報よりも前記第2バージョン情報の方が新しいバージョンではない場合には、前記ダウンロード要否識別情報を、新しいバージョンのデバイスドライバーを前記デバイスにダウンロードさせる必要がないことを示す第2状態にするとともに、
前記ダウンロード要否判断手段は、前記ダウンロード要否識別情報が前記第1状態である場合に、前記ダウンロード要否識別情報が、前記管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると判断する、
ことを特徴とする請求項1乃至請求項4のいずれかに記載のデバイスドライバー管理システム。
【請求項6】
ネットワークを介してデバイスに接続され、前記デバイスの使用に用いられるデバイスドライバーを管理する管理サーバーコンピューターであって、
前記デバイスから、前記ネットワークを介して所定の周期で、前記デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、前記デバイスを特定するデバイス特定情報とを含むデバイス情報を受信する、デバイス情報受信手段と、
前記デバイス情報受信手段で受信した前記第1バージョン情報と、当該管理サーバーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを比較して、前記第2バージョン情報の方が新しいバージョンである場合には、当該管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて保持する、ダウンロード要否識別情報保持手段と、
前記デバイスから、前記ネットワークを介して、前記デバイス特定情報を付加したポーリングを所定の周期で受信する、ポーリング受信手段と、
前記ポーリング受信手段で前記ポーリングを受信した場合に、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報が、当該管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示しているか否かを判断する、ダウンロード要否判断手段と、
前記ダウンロード要否識別情報が、当該管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記ダウンロード要否判断手段が判断した場合には、前記ポーリングを行った前記デバイスに当該管理サーバーコンピューターの保持するデバイスドライバーのダウンロードを実行させる命令セットを作成し、この命令セットを含むポーリング返信を、前記ネットワークを介して前記デバイスに送信する、返信送信手段と、
前記返信送信手段で送信された前記ポーリング返信に含まれている命令セットを実行することにより前記デバイスで生成されたデバイスドライバーのダウンロード要求に基づいて、当該管理サーバーコンピューターが保持するデバイスドライバーを、前記デバイスにダウンロードさせる、ダウンロード実行手段と、
を備えることを特徴とする、管理サーバーコンピューター。
【請求項7】
デバイスドライバーを管理する管理サーバーコンピューターに、ネットワークを介して接続可能な、デバイスであって、
前記ネットワークを介して、所定の周期で、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、当該デバイスを特定するデバイス特定情報とを、前記管理サーバーコンピューターに送信することにより、前記管理サーバーコンピューターに、前記第1バージョン情報と、前記管理サーバーコンピューターが保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを比較させて、前記第2バージョン情報の方が新しいバージョンである場合には、前記管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて前記管理サーバーコンピューターに保持させる、デバイス情報送信手段と、
前記ネットワークを介して、前記管理サーバーコンピューターに対して、前記デバイス特定情報を付加して、所定の周期でポーリングを行う、ポーリング実行手段と、
前記ポーリング実行手段によるポーリングを受信した前記管理サーバーコンピューターが、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報に基づいて、前記管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記管理サーバーコンピューターが判断した場合に、前記ポーリングを行った前記デバイスに前記管理サーバーコンピューターの保持するデバイスドライバーのダウンロードを実行させる命令セットを含むポーリング返信を、前記ネットワークを介して、前記管理サーバーコンピューターから受信する、ポーリング返信受信手段と、
前記ポーリング返信に含まれている前記命令セットを実行することにより、前記管理サーバーコンピューターから、前記管理サーバーコンピューターが保持するデバイスドライバーをダウンロードする、ダウンロード実行手段と、
を備えることを特徴とするデバイス。
【請求項8】
デバイスと、前記デバイスの使用に用いられるデバイスドライバーを管理する管理サーバーコンピューターとを有するとともに、前記デイバスはネットワークを介して前記管理サーバーコンピューターに接続可能である、デバイスドライバー管理システムの制御方法であって、
前記デバイスが、前記ネットワークを介して、所定の周期で、当該デバイスが保持するデバイスドライバーのバージョンに関する情報である第1バージョン情報と、当該デバイスを特定するデバイス特定情報とを、前記管理サーバーコンピューターに送信するステップと、
前記管理サーバーコンピューターが、前記第1バージョン情報と前記デバイス特定情報とを受信するステップと、
受信した前記第1バージョン情報と、前記管理サーバーコンピューターの保持するデバイスドライバーのバージョンに関する情報である第2バージョン情報とを、前記管理サーバーコンピューターが比較して、前記第2バージョン情報の方が新しいバージョンであると判断した場合には、前記管理サーバーコンピューターが保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示すダウンロード要否識別情報を、前記デバイス特定情報に対応付けて保持するステップと、
前記デバイスが、前記ネットワークを介して、前記管理サーバーコンピューターに対して、前記デバイス特定情報を付加して、所定の周期でポーリングを行うステップと、
前記管理サーバーコンピューターが前記ポーリングを受信した場合に、そのポーリングに付加されている前記デバイス特定情報に対応する前記ダウンロード要否識別情報が、前記管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示しているか否かを判断するステップと、
前記ダウンロード要否識別情報が、前記管理サーバーコンピューターの保持するデバイスドライバーを前記デバイスにダウンロードさせる必要があることを示していると、前記管理サーバーコンピューターが判断した場合には、前記ポーリングを行った前記デバイスに前記管理サーバーコンピューターが保持するデバイスドライバーのダウンロードを実行させる命令セットを作成し、この命令セットを含むポーリング返信を、前記ネットワークを介して前記デバイスに送信するステップと、
前記デバイスが前記ポーリング返信を受信し、前記ポーリング返信に含まれている命令セットを実行することにより、前記管理サーバーコンピューターから、前記管理サーバーコンピューターが保持するデバイスドライバーをダウンロードするステップを、
備えることを特徴とする、デバイスドライバー管理システムの制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate