(57)【要約】【課題】画像形成装置に対するファームウェアの更新と連動して、クライアントＰＣに対してプリンタドライバの更新を行う。【解決手段】配信ホスト３００は、配信するファームウェアが指示されると、画像形成装置１００又は１０６から、クライアントＰＣ１０５におけるプリンタ設定が登録されたアクセスクライアントリスト８００を取得する。配信ホスト３００は、取得したアクセスクライアントリスト８００と、画像形成装置に配信するファームウェア及びそれに対応するプリンタドライバを関連付ける対応ドライバリスト９００とを比較して、配信するプリンタドライバ選び、そのプリンタドライバと、配信が指示されたファームウェアを画像形成装置１００又は１０６に配信する。画像形成装置は、受信したプリンタドライバをクライアントＰＣ１０５に配信し、既存のファームウェアを、受信したファームウェアに更新する。【選択図】図１
2009252039.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置で使用されるファームウェアの情報と、そのファームウェアに対応するプリンタドライバの情報とが互いに関連付けられた情報を予め記憶媒体に記憶する記憶手段と、
端末装置が有するプリンタドライバの情報を取得する取得手段と、
前記取得手段により取得された情報と、前記記憶手段により記憶された情報とに基づいて、配信が指示されたファームウェアに応じたプリンタドライバを配信する第１の配信手段と、
前記配信が指示されたファームウェアを配信する第２の配信手段とを有することを特徴とする配信装置。
【請求項２】
前記取得手段により取得された情報と、前記記憶手段により記憶された情報とに基づいて、配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあることを判断する判断手段を有し、
前記第１の配信手段は、前記判断手段により、配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあると判断されると、前記配信が指示されたファームウェアの情報に関連付けられているプリンタドライバの情報を前記記憶媒体から読み出し、読み出した情報に対応するプリンタドライバを配信することを特徴とする請求項１に記載の配信装置。
【請求項３】
前記判断手段は、前記取得手段により取得されたプリンタドライバの情報と、前記配信が指示されたファームウェアに関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報とが一致していないと、前記配信が指示されたファームウェアの配信によって、配信する必要が生じるプリンタドライバがあると判断することを特徴とする請求項２に記載の配信装置。
【請求項４】
前記判断手段は、前記配信が指示されたファームウェアの情報に関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報に対応するプリンタドライバを、前記取得手段により取得された情報に基づく端末装置が有していないと、前記配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあると判断することを特徴とする請求項２又は３に記載の配信装置。
【請求項５】
前記判断手段は、前記配信が指示されたファームウェアの情報に関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報に対応するプリンタドライバと同じバージョンのプリンタドライバを、前記取得手段により取得された情報に基づく端末装置が有していないと、前記配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあると判断することを特徴とする請求項４に記載の配信装置。
【請求項６】
前記取得手段により取得された情報と、前記記憶手段により記憶された情報とに基づいて、配信が指示されたファームウェアの配信によってプリンタドライバの設定を変更する必要が生じる端末装置があることを判断する第２の判断手段と、
前記第２の判断手段により、配信が指示されたファームウェアの配信によってプリンタドライバの設定を変更する必要が生じる端末装置があると判断されると、当該プリンタドライバの設定の変更指示に関する情報を配信する第３の配信手段とを有することを特徴とする請求項１〜５の何れか１項に記載の配信装置。
【請求項７】
前記取得手段は、端末装置が有するプリンタドライバの情報を含む情報を、当該プリンタドライバによって動作が制御される画像形成装置から取得し、
前記第２の判断手段は、前記取得手段により取得された情報に基づく端末装置が、前記配信が指示されたファームウェアの情報に関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報に対応するプリンタドライバと同じバージョンのプリンタドライバを有し、且つ、当該プリンタドライバが、前記取得手段により取得された情報の送信元である画像形成装置と異なる画像形成装置に対するものであると、配信が指示されたファームウェアの配信によってプリンタドライバの設定を変更する必要が生じる端末装置があると判断することを特徴とする請求項６に記載の配信装置。
【請求項８】
画像形成装置で使用されるファームウェアの情報と、そのファームウェアに対応するプリンタドライバの情報とが互いに関連付けられた情報を予め記憶媒体に記憶する記憶ステップと、
端末装置が有するプリンタドライバの情報を取得する取得ステップと、
前記取得ステップにより取得された情報と、前記記憶ステップにより記憶された情報とに基づいて、配信が指示されたファームウェアに応じたプリンタドライバを配信する第１の配信ステップと、
前記配信が指示されたファームウェアを配信する第２の配信ステップとを有することを特徴とする配信方法。
【請求項９】
前記取得ステップにより取得された情報と、前記記憶ステップにより記憶された情報とに基づいて、配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあることを判断する判断ステップを有し、
前記第１の配信ステップは、前記判断ステップにより、配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあると判断されると、前記配信が指示されたファームウェアの情報に関連付けられているプリンタドライバの情報を前記記憶媒体から読み出し、読み出した情報に対応するプリンタドライバを配信することを特徴とする請求項８に記載の配信方法。
【請求項１０】
前記判断ステップは、前記取得ステップにより取得されたプリンタドライバの情報と、前記配信が指示されたファームウェアに関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報とが一致していないと、前記配信が指示されたファームウェアの配信によって、配信する必要が生じるプリンタドライバがあると判断することを特徴とする請求項９に記載の配信方法。
【請求項１１】
前記判断ステップは、前記配信が指示されたファームウェアの情報に関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報に対応するプリンタドライバを、前記取得ステップにより取得された情報に基づく端末装置が有していないと、前記配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあると判断することを特徴とする請求項９又は１０に記載の配信方法。
【請求項１２】
前記判断ステップは、前記配信が指示されたファームウェアの情報に関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報に対応するプリンタドライバと同じバージョンのプリンタドライバを、前記取得ステップにより取得された情報に基づく端末装置が有していないと、前記配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあると判断することを特徴とする請求項１１に記載の配信方法。
【請求項１３】
前記取得ステップにより取得された情報と、前記記憶ステップにより記憶された情報とに基づいて、配信が指示されたファームウェアの配信によってプリンタドライバの設定を変更する必要が生じる端末装置があることを判断する第２の判断ステップと、
前記第２の判断ステップにより、配信が指示されたファームウェアの配信によってプリンタドライバの設定を変更する必要が生じる端末装置があると判断されると、当該プリンタドライバの設定の変更指示に関する情報を配信する第３の配信ステップとを有することを特徴とする請求項８〜１２の何れか１項に記載の配信方法。
【請求項１４】
前記取得ステップは、端末装置が有するプリンタドライバの情報を含む情報を、当該プリンタドライバによって動作が制御される画像形成装置から取得し、
前記第２の判断ステップは、前記取得ステップにより取得された情報に基づく端末装置が、前記配信が指示されたファームウェアの情報に関連付けられて前記記憶媒体に記憶されているプリンタドライバの情報に対応するプリンタドライバと同じバージョンのプリンタドライバを有し、且つ、当該プリンタドライバが、前記取得ステップにより取得された情報の送信元である画像形成装置と異なる画像形成装置に対するものであると、配信が指示されたファームウェアの配信によってプリンタドライバの設定を変更する必要が生じる端末装置があると判断することを特徴とする請求項１３に記載の配信方法。
【請求項１５】
請求項８〜１４の何れか１項に記載の配信方法の各ステップをコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配信装置、配信方法、及びコンピュータプログラムに関し、特に、画像形成装置に対するファームウェアの更新を行うために用いて好適なものである。
【背景技術】
【０００２】
従来から、ＬＡＮ（Local Area Network）に接続された複写機やプリンタ等の画像形成装置のファームウェア（画像形成装置のハードウェアの基本制御を行うためのソフトウェア）を遠隔地からアップデートするシステムが存在している。このようなシステムでは、複数の画像形成装置と、それらに対してファームウェアのアップデート（更新）を指示する配信ホストとが、ＬＡＮやＷＡＮ（Wide Area Network）やインターネットを介して互いに通信を行う。そして、配信ホスト側のオペレータの指示により、配信ホストから画像形成装置に対してファームウェアの配信を行い、画像形成装置のファームウェアがアップデートされる。このようなファームウェアのアップデートを行う目的としては、ファームウェアに起因する動作障害の解決や、機能のアップデート等がある。
【０００３】
また、前記ＬＡＮに接続されたコンピュータ（以後、クライアントＰＣと呼ぶ）が、画像形成装置をネットワークプリンタとして利用することは通常良く行われている。この場合、画像形成装置に対してプリントコマンドを発行するための専用ソフトウェア（以後、プリンタドライバと呼ぶ）をクライアントＰＣに予めインストールしておく必要がある。このような利用形態において画像形成装置のファームウェアをアップデートする際、クライアントＰＣ側のプリンタドライバも、画像形成装置のファームウェアのアップデートに合わせてアップデートする必要が発生することがある。一例としては、ファームウェアのアップデートによって画像形成装置側で解釈できるプリントコマンドやパラメータの設定が変更され、既存のプリンタドライバが発行するプリントコマンドやパラメータを画像形成装置が正しく解釈できなくなる場合等がある。
このような場合を想定し、クライアントＰＣ側のプリンタドライバを簡便にアップデートするための幾つかの方法が提案されている。例えば、プリンタ内にプリンタドライバを配置し、クライアントＰＣからの要求、若しくはプリンタ操作部からの指示によりクライアントＰＣへプリンタドライバを送信するという方法が提案されている（特許文献１を参照）。
また、サーバ側でクライアントＰＣの情報を一覧表示し、一覧表示した情報に対するユーザによる画面操作に基づいて、サーバからクライアントＰＣへプリンタドライバを送出してインストールするという方法が提案されている（特許文献２参照）。この提案の中では、クライアントＰＣ側で情報収集プログラムを動かしてプリンタ設定を含むクライアントＰＣの情報をサーバにて収集することも述べられている。
【０００４】
【特許文献１】特開２００１−２９６９７９号公報
【特許文献２】特許第３９５８２４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の方法のように、クライアントＰＣ側から能動的にプリンタドライバを要求すると、クライアントＰＣは定期的に繰り返し要求を出し続ける必要がある。このため、発生頻度の低いファームウェアのアップデートに関する通信が多発してしまい、非効率な通信が発生してしまう。また、ユーザの操作に基づいて、プリンタ若しくはサーバからクライアントＰＣへプリンタドライバを送信する場合、送信先となるクライアントＰＣの選択はユーザの操作に委ねられる。このため、ファームウェアのアップデートにより影響を受ける全てのクライアントＰＣに対して確実にプリンタドライバを送信することが難しい。特に、遠隔地からファームウェアのアップデートの指示をユーザが行う場合には、前記クライアントＰＣに対するプリンタドライバの送信の確実性を著しく損なう虞がある。
【０００６】
本発明は、このような課題に鑑みてなされたものであり、画像形成装置に対するファームウェアのアップデート（更新）と連動して、クライアントＰＣに対してプリンタドライバのアップデートを行うことを目的とする。
【課題を解決するための手段】
【０００７】
本発明の配信装置は、画像形成装置で使用されるファームウェアの情報と、そのファームウェアに対応するプリンタドライバの情報とが互いに関連付けられた情報を予め記憶媒体に記憶する記憶手段と、端末装置が有するプリンタドライバの情報を取得する取得手段と、前記取得手段により取得された情報と、前記記憶手段により記憶された情報とに基づいて、配信が指示されたファームウェアに応じたプリンタドライバを配信する第１の配信手段と、前記配信が指示されたファームウェアを配信する第２の配信手段とを有することを特徴とする。
【０００８】
本発明の配信方法は、画像形成装置で使用されるファームウェアの情報と、そのファームウェアに対応するプリンタドライバの情報とが互いに関連付けられた情報を予め記憶媒体に記憶する記憶ステップと、端末装置が有するプリンタドライバの情報を取得する取得ステップと、前記取得ステップにより取得された情報と、前記記憶ステップにより記憶された情報とに基づいて、配信が指示されたファームウェアに応じたプリンタドライバを配信する第１の配信ステップと、前記配信が指示されたファームウェアを配信する第２の配信ステップとを有することを特徴とする。
【０００９】
本発明のコンピュータプログラムは、前記記載の配信方法の各ステップをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、画像形成装置に対するファームウェアの更新と連動して、それによって影響を受ける端末装置のプリンタドライバを更新することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の一実施形態を、図面を参照して説明する。
図１は、本発明の一実施形態に係る印刷システムの全体構成の一例を示す図である。
図１において、配信ホスト３００（サーバ）は、画像形成装置１００、１０６に対してファームウェアやプリンタドライバの配信を行うコンピュータであり、画像形成装置１００、１０６とインターネット１０２及びＬＡＮ１０４を介して互いに通信を行う。
ＬＡＮ１０４はユーザ側のネットワークの一例である。画像形成装置１００、１０６やクライアントＰＣ１０５は、このＬＡＮ１０４を介して互いに接続されている。
また、インターネット１０２とＬＡＮ１０４との間にはFirewall１０３が設置されている。
【００１２】
画像形成装置１００、１０６は、インターネット１０２及びＬＡＮ１０４を介して配信ホスト３００に対し定期的に通信を行い、ファームウェアの配信指示の有無を配信ホスト３００へ問い合わせる。この際の通信手段としては、例えばSOAP（Simple Object Access Protocol）を用いる。
クライアントＰＣ１０５は、端末装置の一例であり、ＬＡＮ１０４を介して画像形成装置１００、１０６をネットワークプリンタとして使用するよう動作する。
尚、ここで述べる画像形成装置１００、１０６の具体例としては、プリント機能やファクシミリ機能やコピー機能を統合したデジタル複合画像形成装置やプリンタ等が挙げられる。
【００１３】
図２は、画像形成装置１００、１０６全体の制御を司るコントローラ２００の構成の一例を示すブロック図である。
コントローラ２００の各構成要素は、システムバス２１５及び画像バス２１６の少なくとも何れか一方に接続されている。ＲＯＭ２０４には画像形成装置１００、１０６の制御プログラムが格納されている。この制御プログラムはＣＰＵ２０７で実行される。ＲＡＭ ２０５は、プログラムを実行するためのワークメモリエリアである。更にＲＡＭ２０５は、画像データを一時記憶するための画像メモリでもある。蓄積メモリ２０６は不揮発性メモリであり、画像形成装置１００、１０６の再起動後も保持しておく必要のある情報を記憶する。この情報とは、各種動作モードの設定、アドレス帳、カウンタ値、エラー／ジャム／アラーム等の障害情報、個々の画像形成装置１００、１０６を識別するためのデバイスＩＤ、製品名等である。ＨＤＤ２１９はハードディスクドライブであり、画像形成装置１００、１０６内で扱う（大量の）画像データの蓄積や、画像形成装置１００、１０６の制御プログラムの記憶に用いられる。
【００１４】
Ｎｅｔｗｏｒｋ Ｉ／Ｆ２０２は、ＬＡＮ１０４と接続するためのインタフェース部であり、ＬＡＮ１０４を介して配信ホスト３００等の外部装置と通信を行う。回線Ｉ／Ｆ部２０３は、ＩＳＤＮ（Integrated Services Digital Network）や公衆電話網等（図２ではＷＡＮ（Wide Area Network））に接続される。回線Ｉ／Ｆ部２０３は、ＲＯＭ２０４内の通信制御プログラムにより制御され、ＩＳＤＮ Ｉ／Ｆ、モデム、ＮＣＵ（Network Control Unit）を介して遠隔の端末とデータの送受信を行う。ファクシミリの送受信もこの回線Ｉ／Ｆ部２０３を使用して行われる。
【００１５】
操作部２０１には表示手段やキー入力手段等が内蔵されており、これらはＣＰＵ２０７にて制御される。ユーザ等の操作者は、キー入力手段を通してスキャナ読み取りやプリント出力に関する各種設定の指示や、作動／停止指示を行う。
ＩＯ制御部２０８は、システムバス２１５と、画像データを高速で転送する画像バス２１６とを接続するためのバスブリッジである。
以上の構成要素がシステムバス２１５に接続される。
【００１６】
一方、画像バス２１６には、ＩＯ制御部２０８に加え、以下の構成要素が接続される。
デジタルＩ／Ｆ部２１１は、画像形成装置１００、１０６のリーダー部２１７やプリンタ部２１８とコントローラ２００とを互いに接続し、画像データの同期系／非同期系の変換を行う。また、リーダー部２１７やプリンタ部２１８内の各所に配置された各種センサが検出した情報は、このデジタルＩ／Ｆ部２１１、及びＩＯ制御部２０８を介してシステムバス２１５へ流れる。
【００１７】
画像処理部２０９は、入力画像データ及び出力画像データに対し補正／加工／編集を行う。画像回転部２１０は、画像データの回転を行う。画像圧縮伸長部２１２は、多値画像データについてはＪＰＥＧ、２値画像データについてはＪＢＩＧ／ＭＭＲ／ＭＲ／ＭＨで圧縮伸張処理を行う。画像密度変換部２１３は、出力画像データに対して解像度の変換等を行う。
ＣＰＵ２０７は、制御プログラム（以下の説明ではファームウェアと称する）を実行することにより、Ｎｅｔｗｏｒｋ Ｉ／Ｆ２０２に対して、配信ホスト３００との定期的な通信の実行を指示する。この通信は、配信ホスト３００に対して、自身のファームウェアのバージョン情報の通知や、ファームウェアの配信指示の問い合わせ等を行うためのものである。
【００１８】
図３は、配信ホスト３００のハードウェアの構成の一例を示すブロック図である。尚、クライアントＰＣ１０５も、配信ホスト３００と同一のハードウェアにより実現できるので、ここでは、配信ホスト３００のハードウェアの構成を説明し、クライアントＰＣ１０５のハードウェアの構成の説明を省略する。
図３において、自身を制御するためのＣＰＵ３０１と、システム起動に必要なブートプログラム等を記憶するための読み出し専用メモリであるＲＯＭ３０２とが、システムバス３０５に接続されている。更に、ＣＰＵ３０１でプログラムを実行する際に必要とされるワークメモリ等となるＲＡＭ３０３と、外部装置とインターネット１０２やＬＡＮ１０４を介して通信を行うためのＮｅｔｗｏｒｋ Ｉ／Ｆ部３０４とが、システムバス３０５に接続されている。この他、表示制御部３０６と、入力制御部３０７と、ＣＰＵ３０１で実行するプログラム等を格納するＨＤＤ３０８とがシステムバス３０５に接続されている。また、表示制御部３０６には表示デバイス３０９が接続され、入力制御部３０７には入力デバイス３１０、３１１が接続されている。
【００１９】
ここで、クライアントＰＣ１０５のＨＤＤ３０８にはプリンタドライバが予めインストールされている。ユーザの操作により画像形成装置１００、１０６がネットワークプリンタとして使用可能となるようにプリンタドライバの設定がなされている。このプリンタドライバの設定とは、画像形成装置１００、１０６のネットワークアドレスやポート番号、使用するプリンタドライバの指定等である。
一方、配信ホスト３００の表示制御部３０６は、後述するファームウェアの配信指示画面を表示デバイス３０９に表示する。配信ホスト３００のオペレータは、入力デバイス３１０、３１１を使用して、所望の画像形成装置１００、１０６に対するファームウェアの配信を配信ホスト３００に指示する。
【００２０】
図４は、クライアントＰＣ１０５から画像形成装置１００、１０６に対するプリンタ設定通知シーケンスの一例を示す図である。図４では、図の上から下に向けて処理が進む。
クライアントＰＣ１０５では、自身の"プリンタ設定"を収集して画像形成装置１００、１０６へ通知するためのプリンタ設定監視プログラムがＣＰＵ３０１によって常時稼動しているものとする。ここで、具体的にプリンタ設定には、例えば、クライアントＰＣ１０５を一意に特定するためのハードウェアＩＤ、クライアントＰＣ１０５のＩＰアドレス、クライアントＰＣ１０５に搭載されているＯＳ（Operating System）の種類が含まれる。更に、プリンタ設定には、クライアントＰＣ１０５で使用するプリンタドライバのＰＤＬ（Page Description Language）の種類と、当該プリンタドライバのバージョン等も含まれる。尚、この他に、クライアントＰＣ１０５のＭＡＣアドレスやプリンタポートの設定等をプリンタ設定に含めるようにしてもよい。
【００２１】
クライアントＰＣ１０５は、これらのプリンタ設定が新規に設定された場合、若しくは変更された場合に、プリンタ設定監視プログラムにより実行されるプリンタ設定監視処理の実行を開始する（ステップＳ４０１）。そして、クライアントＰＣ１０５は、プリンタ設定監視処理において、ネットワークプリンタとして使用（制御）する画像形成装置１００、１０６へプリンタ設定の通知を行う（ステップＳ４０２）。例えば、画像形成装置１００に対するプリンタドライバの設定が新規に設定された場合、若しくは変更された場合、クライアントＰＣ１０５は、画像形成装置１００に対してプリンタ設定の通知を行う。一方、画像形成装置１０６に対するプリンタドライバ設定が新規に設定された場合、若しくは変更された場合、クライアントＰＣ１０５は、画像形成装置１０６に対してプリンタ設定通知を行う。
【００２２】
画像形成装置１００、１０６では、ＣＰＵ２０７によってファームウェアが常時稼動し、クライアントＰＣ１０５からのプリンタ設定の通知を受信するよう動作しているものとする。画像形成装置１００、１０６は、後述するアクセスクライアントリスト８００をＨＤＤ２１９内で管理している。画像形成装置１００、１０６は、アクセスクライアントリスト更新処理により、受信したプリンタ設定の内容でアクセスクライアントリスト８００を随時更新する。
【００２３】
図５は、配信ホスト３００から画像形成装置１００、１０６に対するファームウェアの配信及びプリンタドライバの配信と、画像形成装置１００、１０６からクライアントＰＣ１０５に対するプリンタドライバの配信のシーケンスの一例を示す図である。特に図５では、配信ホスト３００から画像形成装置１００に対してファームウェア配信を行った後、続いて画像形成装置１０６に対してファームウェア配信を行った場合のシーケンスを例に挙げて示している。また、画像形成装置１００と画像形成装置１０６は同一製品である場合を例に挙げて示している。
尚、図５では、図の上から下に向けて処理が進み、画像形成装置１００を第１の画像形成装置とし、画像形成装置１０６を第２の画像形成装置としている。
【００２４】
配信ホスト３００では、ファームウェアやプリンタドライバの配信指示を行うためのプログラムがＣＰＵ３０１によって稼動している。配信ホスト３００のオペレータは、後述するファームウェア配信指示画面６００を操作して、配信ホスト３００に対しファームウェアの配信の指示を行う。その後、配信ホスト３００は、例えば、画像形成装置１００によるファームウェアの配信指示の有無の問い合わせに応じて、画像形成装置１００に対し、後述するアクセスクライアントリスト８００の要求を行う（ステップＳ５０１）。
【００２５】
この要求を受け取った画像形成装置１００は、ＨＤＤ２１９内で管理しているアクセスクライアントリスト８００があるか否かを判定し、ある場合には、アクセスクライアントリスト８００を配信ホスト３００に対して通知する（ステップＳ５０２）。一方、アクセスクライアントリスト８００がない場合には、アクセスクライアントリスト８００がない旨を配信ホスト３００に対して通知する（ステップＳ５０２）。
【００２６】
ステップＳ５０２でアクセスクライアントリスト８００の通知を受けた配信ホスト３００は、それを画像形成装置１００のデバイスＩＤと関連付けてＨＤＤ３０８に格納する。続いて、配信ホスト３００は、配信プリンタドライバ選定処理を行い、画像形成装置１００に配信すべきプリンタドライバを選定する（ステップＳ５０３）。この配信プリンタドライバ選定処理の詳細については後述する。
そして、配信ホスト３００は、選定したプリンタドライバを画像形成装置１００へ配信する（ステップＳ５０４）。これと略同時に、配信ホスト３００は、先ほどＨＤＤ３０８内に格納したアクセスクライアントリスト８００中のドライババージョン情報を、選定したプリンタドライバのバージョンに変更する。
【００２７】
続いて、配信ホスト３００は、配信ホスト３００のオペレータによって予め指示されているファームウェアを画像形成装置１００へ配信する（ステップＳ５０５）。もしもステップＳ５０２で、アクセスクライアントリスト８００がない旨の通知を受けた場合、配信ホスト３００は、ステップＳ５０４の処理を行わずに、ステップＳ５０５のファームウェアの配信を行う。
【００２８】
ステップＳ５０４でプリンタドライバの配信を受けた画像形成装置１００（第１の画像形成装置）は、プリンタドライバ配信先クライアントＰＣ選定処理を行い、当該プリンタドライバの配信先となるクライアントＰＣ１０５を選定する（ステップＳ５０６）。このプリンタドライバ配信先クライアントＰＣ選定処理の詳細については後述する。
そして、画像形成装置１００は、ステップＳ５０６で選定したクライアントＰＣ１０５のプリンタ設定監視プログラムに対し、プリンタドライバを配信する（ステップＳ５０７）。
【００２９】
続いて画像形成装置１００は、ステップＳ５０５で受信したファームウェアを用いて自身のファームウェアのアップデート処理（更新）を行う。
ステップＳ５０９でプリンタドライバの配信を受けたクライアントＰＣ１０５で動作するプリンタ設定監視プログラムは、そのプリンタドライバをクライアントＰＣ１０５内にインストールする。更に、クライアントＰＣ１０５は、画像形成装置１００に対するクライアントＰＣ１０５内のプリンタドライバの設定を更新し、クライアントＰＣ１０５で使用するプリンタドライバの種類を書き換える。
【００３０】
続いて配信ホスト３００のオペレータは、後述するファームウェア配信指示画面６００を操作して、配信ホスト３００に対しに対しファームウェアの配信の指示を行う。その後、配信ホスト３００は、例えば、画像形成装置１０６によるファームウェアの配信指示の有無の問い合わせに応じて、画像形成装置１０６に対し、後述するアクセスクライアントリスト８００の要求を行う（ステップＳ５１０）。
【００３１】
この要求を受け取った画像形成装置１０６は、ＨＤＤ２１９内で管理しているアクセスクライアントリスト８００があるか否かを判定し、ある場合には、アクセスクライアントリスト８００を配信ホスト３００に対して通知する（ステップＳ５１１）。一方、アクセスクライアントリスト８００がない場合には、５１１でアクセスクライアントリスト８００がない旨を配信ホスト３００に対して通知する（ステップＳ５１１）。
【００３２】
ステップＳ５１１でアクセスクライアントリスト８００の通知を受けた配信ホスト３００は、それを画像形成装置１０６のデバイスＩＤと関連付けてＨＤＤ３０８に格納する。続いて、配信ホスト３００は、配信プリンタドライバ選定処理を行い、画像形成装置１０６に配信すべきプリンタドライバを選定する（ステップＳ５１２）。図５に示すシーケンスの例では、前述したステップＳ５０４、Ｓ５０７にてクライアントＰＣ１０５に対してプリンタドライバを配信済みである。そのため、ステップＳ５１２では、配信ホスト３００は、クライアントＰＣ１０５のプリンタドライバの設定のみを変更する必要があると判断し、画像形成装置１０６に対して、プリンタドライバの設定の変更指示を送信する（ステップＳ５１３）。この際の変更指示の内容は、例えば、クライアントＰＣ１０５のハードウェアＩＤと、クライアントＰＣ１０５で使用しているプリンタドライバの種類である。
【００３３】
続いて、配信ホスト３００は、配信ホスト３００のオペレータによって予め指示されているファームウェアを画像形成装置１０６へ配信する（ステップＳ５１４）。もしもステップＳ５１１で、アクセスクライアントリスト８００がない旨の通知を受けた場合、配信ホスト３００は、ステップＳ５１３の処理を行わずに、ステップＳ５１４のファームウェアの配信を行う。
ステップＳ５１４でファームウェアの配信を受けた画像形成装置１０６（第２の画像形成装置）は、プリンタドライバ設定変更先クライアントＰＣ選定処理を行い、プリンタドライバの設定を変更するクライアントＰＣ１０５を選定する（ステップＳ５１５）。
そして、画像形成装置１０６は、ステップＳ５１３で受信した"プリンタドライバの設定の変更指示"に従い、ステップＳ５１５で選定したクライアントＰＣ１０５のプリンタ設定監視プログラムに対し、プリンタドライバの設定の変更指示を送信する。続いて画像形成装置１０６は、ステップＳ５１４で受信したファームウェアを用いて自身のファームウェアのアップデート処理（更新）を行う。
ステップＳ５１６で"プリンタドライバの設定の変更指示"を受けたクライアントＰＣ１０５のプリンタ設定監視プログラムは、その変更指示に従い、画像形成装置１０６に対するプリンタドライバの設定を更新する。例えば、クライアントＰＣ１０５は、画像形成装置１０６に対して使用するプリンタドライバの種類を書き換える（ステップＳ５１７）。
【００３４】
図６は、配信ホスト３００の表示デバイス３０９に表示されるファームウェア配信指示画面６００の表示例を示す図である。
配信ホスト３００のオペレータは、このファームウェア配信指示画面６００を操作して、所望の画像形成装置に対するファームウェアの配信を配信ホスト３００に指示することが可能である。
【００３５】
オペレータは、先ずプルダウンメニュー６０１を操作し、ファームウェアの配信対象となる画像形成装置１００、１０６を所有（又は管理）する顧客名を選択する。続いてオペレータが検索ボタン６０２を押下すると、ファームウェア配信指示画面の下部に検索結果リスト６０３が表示される。この検索結果リスト６０３には、配信ホスト３００内で顧客名と関連付けて管理している画像形成装置の"デバイスＩＤ、製品名、ファームウェアバージョン"等が含まれる。尚、顧客名、及び顧客名と画像形成装置との関連付けは、予めオペレータが配信ホスト３００に対して登録しておく。
【００３６】
オペレータは、ファームウェアの配信対象となる画像形成装置１００や画像形成装置１０６を検索結果リスト６０３上で選択し、詳細ボタン６０４を押下する。すると、配信ホスト３００の表示デバイス３０９に、図７に示すファームウェア配信指示詳細画面７００が更に表示される。
【００３７】
図７は、配信ホスト３００の表示デバイス３０９に表示されるファームウェア配信指示詳細画面７００の表示例を示す図である。
ファームウェア配信指示詳細画面７００の上部には、ファームウェア配信指示画面６００で選択された画像形成装置の現在情報７０１が表示される。この画像形成装置の現在情報７０１には、当該画像形成装置の"デバイスＩＤ、製品名、ファームウェアバージョン"等が含まれる。ここに表示されるファームウェアバージョンは、画像形成装置１００、１０６から配信ホスト３００に対して定期的に通知されているものである。
【００３８】
オペレータは、プルダウンメニュー７０２を操作し、配信するファームウェアのバージョンを選択する。続いてオペレータが登録ボタン７０３を押下すると、配信ホスト３００は、ファームウェアの配信の指示の受付を確定し、その指示の内容をＨＤＤ３０８に記憶すると共に、ファームウェア配信指示詳細画面７００を閉じる。オペレータが戻るボタン７０４を押下した場合、配信ホスト３００は、ファームウェアの配信の指示の受付を確定せずに、ファームウェア配信指示詳細画面７００を閉じる。
【００３９】
図８は、画像形成装置１００、１０６内で管理しているアクセスクライアントリスト８００の内容の一例を概念的に示す図である。
画像形成装置１００、１０６は、前述した図４のステップＳ４０２によりクライアントＰＣ１０５から受信したプリンタ設定に従い、アクセスクライアントリスト８００を作成する。アクセスクライアントリスト８００は、ＰＣハードウェアＩＤ８０１、ＩＰアドレス８０２、ＯＳ種別８０３、ＰＤＬ種別８０４、及びドライババージョン８０５を含む。
ＰＣハードウェアＩＤ８０１は、クライアントＰＣ１０５を一意に特定するためのハードウェアＩＤである。ＩＰアドレス８０２は、クライアントＰＣ１０５の位置を特定するためのＩＰアドレスである。ＯＳ種別８０３は、クライアントＰＣ１０５に搭載されているＯＳの種類である。ＰＤＬ種別８０４は、クライアントＰＣ１０５で使用するプリンタドライバのＰＤＬの種類である。ドライババージョン８０５は、クライアントＰＣ１０５で使用するプリンタドライバのバージョンである。
【００４０】
図９は、配信ホスト３００内で管理している対応ドライバリスト９００の内容の一例を概念的に示す図である。
この対応ドライバリスト９００により、ファームウェアとプリンタドライバとを対応付けることができる。具体的に対応ドライバリスト９００は、製品名９０１、ファームウェアバージョン９０２、ＯＳ種別９０３、ＰＤＬ種別９０４、及びドライババージョン９０５を含む。
製品名９０１は、ファームウェアの配信対象となる画像形成装置の製品名である。ファームウェアバージョン９０２は、配信するファームウェアのバージョンである。ＯＳ種別９０３は、プリンタドライバが動作する"クライアントＰＣ１０５のＯＳ"の種類である。ＰＤＬ種別９０４は、プリンタドライバのＰＤＬの種類である。ドライババージョン９０５は、プリンタドライバのバージョンである。
図９に示す例では、製品名"iRC1000"のファームウェアバージョン"V1.53"に対応するプリンタドライバは、例えば、次のようになる。すなわち、クライアントＰＣ１０５のＯＳがWindows（登録商標）であり、使用するＰＤＬが"LIPS5"の場合、製品名"iRC1000"のファームウェアバージョン"V1.53"に対応するプリンタドライバのバージョンは、"2.05"である。
尚、配信するファームウェア、プリンタドライバ、及び対応ドライバリスト９００に示すファームウェアとプリンタドライバとを互いに関連付けるための関連付け情報は、オペレータが配信ホスト３００に対して予め登録しておく。
以上のように本実施形態では、対応ドライバリスト９００がオペレータの指示に基づいて作成され、配信ホスト３００のＨＤＤ３０８等に予め記憶されることによって記憶手段の一例が実現される。
【００４１】
図１０は、配信ホスト３００が行う配信プリンタドライバ選定処理（ステップＳ５０３〜Ｓ５０５、Ｓ５１２〜Ｓ５１４）の処理の一例を説明するフローチャートである。以下、図１０のフローチャートを用いて、配信するプリンタドライバを選定する方法の一例を詳細に説明する。尚、ここでは、クライアントＰＣ１０５のハードウェアＩＤを"111-222-333-123"、画像形成装置１００，１０６の製品名を"iRC1000"とする場合を例に挙げて説明する。また、配信ホスト３００のオペレータが配信を指示したファームウェアのバージョンが"V2.20"である場合を例に挙げて説明する。
【００４２】
まず初めに、配信ホスト３００が画像形成装置１００からアクセスクライアントリスト８００の通知を受けた際の配信プリンタドライバ選定処理（ステップＳ５０２〜Ｓ５０５）の一例について説明する。
配信ホスト３００は、画像形成装置１００からアクセスクライアントリスト８００を受信したか否かを判定する（ステップＳ１００１）。この判定の結果、画像形成装置１００からアクセスクライアントリスト８００を受信しなかった場合、配信ホスト３００は、プリンタドライバの配信は必要ないと判断し、ステップＳ１０１３にて画像形成装置１００に対してファームウェアの配信のみを行う。
一方、画像形成装置１００からアクセスクライアントリスト８００を受信した場合、配信ホスト３００は、そのアクセスクライアントリスト８００を、その送信元である画像形成装置１００のデバイスＩＤと関連付けてＨＤＤ３０８に格納する。その後、配信ホスト３００は、アクセスクライアントリスト８００から１行ずつデータを読み出す（ステップＳ１００２）。
以上のように本実施形態では、例えば、ステップＳ１００１の処理を行うことにより、取得手段の一例が実現される。
【００４３】
続いて、配信ホスト３００は、ステップＳ１００２で読み出したデータ中のドライババージョン８０５と、対応ドライバリスト９００中のドライババージョン９０５とを比較する（ステップＳ１００３）。そして、配信ホスト３００は、それらドライババージョン８０５、９０５が異なるか否かを判定して、プリンタドライバの配信が必要であるか否かを判定する（ステップＳ１００４）。
この判定の結果、ドライババージョン８０５、９０５が同じである場合、配信ホスト３００はプリンタドライバを配信する必要が無いと判断し、ステップＳ１００２に戻る。一方、ドライババージョン８０５、９０５が異なる場合には、ステップＳ１００５に進む。
ここでは、図８に示すようにクライアントＰＣの１０５のＯＳ種別８０３はWindows（登録商標）であり、プリンタドライバのＰＤＬ種別８０４は"LIPS5"であり、ドライババージョン８０５は"2.05"である。一方、図９に示す対応ドライバリスト９００から、バージョンが"V2.20"であるファームウェアのアップデートに対応したドライババージョン９０５は"3.00"である。よって、ステップＳ１００５に進む。
以上のように本実施形態では、例えば、ステップＳ１００４の処理を行うことにより判断手段の一例が実現される。
【００４４】
そして、配信ホスト３００は、クライアントＰＣ１０５に必要なプリンタドライバがインストール済みであるか否かを判定する（ステップＳ１００５）。本実施形態では、配信ホスト３００は、画像形成装置１００以外の他の画像形成装置から受信してＨＤＤ３０８に格納済みのアクセスクライアントリスト８００から、ステップＳ１００２で読み出したデータ（ＰＣハードウェアＩＤ８０１）の情報を検索する。ここでは、ハードウェアＩＤ"111-222-333-123"の情報を検索する。
そして、配信ホスト３００は、ステップＳ１００２で読み出したＰＣハードウェアＩＤ８０１（"111-222-333-123"）の情報があった場合、クライアントＰＣ１０５に必要なプリンタドライバがインストール済みであると判定する。そして、ステップＳ１００６に進む。一方、ステップＳ１００２で読み出したＰＣハードウェアＩＤ８０１（"111-222-333-123"）の情報がなかった場合には、クライアントＰＣ１０５に必要なプリンタドライバがインストール済みでないと判定し、ステップＳ１００８に進む。
【００４５】
ここでは、クライアントＰＣ１０５に対して、まだファームウェアのアップデートに対応した"Windows（登録商標）用の、プリンタドライバのＰＤＬがLIPS5であり、バージョンが3.0であるプリンタドライバ"を配信していない。このため、クライアントＰＣ１０５に必要なプリンタドライバがインストール済みでない（プリンタドライバを配信する必要がある）と判断し、ステップＳ１００８に進む。
以上のように本実施形態では、例えば、ステップＳ１００５の処理を行うことにより判断手段の一例が実現される。
【００４６】
尚、ステップＳ１００５で、ステップＳ１００２で読み出したＰＣハードウェアＩＤ８０１の情報が検索された場合、配信ホスト３００は、次の処理を行う。すなわち、配信ホスト３００は、検索された情報に対応するプリンタドライバのバージョンが、ステップＳ１００３で対応ドライバリスト９００から読み出したドライババージョン９０５（3.00）と異なるか否かを判定する（ステップＳ１００６、Ｓ１００７）。この判定の結果、プリンタドライバのバージョンが異なる場合、クライアントＰＣ１０５には、ステップＳ１００３で対応ドライバリスト９００から読み出したドライババージョン９０５（3.00）以外のプリンタドライバがインストール済みであることになる。このような場合にも、配信ホスト３００は、プリンタドライバを配信する必要があると判断し、ステップＳ１００８に進む。尚、プリンタドライバのバージョンが同じであり、ステップＳ１００９に進んだ場合の処理については後述する。
以上のように本実施形態では、例えば、ステップＳ１００７の処理を行うことにより判断手段の一例が実現される。
【００４７】
ステップＳ１００８に進むと、配信ホスト３００は、ＲＡＭ３０３内のワークバッファに、配信対象のプリンタドライバを記憶する。ここでは、"Windows（登録商標）用の、プリンタドライバのＰＤＬがLIPS5であり、バージョンが3.0であるプリンタドライバ"を配信対象のプリンタドライバとして記憶する。
次に、配信ホスト３００は、画像形成装置１００のデバイスＩＤと関連付けてＨＤＤ３０８に格納したアクセスクライアントリスト８００を更新する（ステップＳ１０１０）。ここでは、配信ホスト３００は、画像形成装置１００のデバイスＩＤと関連付けてＨＤＤ３０８に格納したアクセスクライアントリスト８００において、該当するドライババージョン８０５を"3.00"に書き換える。
【００４８】
次に、配信ホスト３００は、ステップＳ１００１で受信したアクセスクライアントリスト８００に、まだ処理していない別のクライアントＰＣの情報（ＰＣハードウェアＩＤ８０１）が含まれているか否かを判定する（ステップＳ１０１１）。この判定の結果、ステップＳ１００１で受信したアクセスクライアントリスト８００に、まだ処理していない別のクライアントＰＣの情報（ＰＣハードウェアＩＤ８０１）が含まれている場合には、ステップＳ１００２へ戻って処理を繰り返す。
【００４９】
一方、ステップＳ１００１で受信したアクセスクライアントリスト８００の情報を全て処理し終えた場合には、ステップＳ１０１２に進む。そして、配信ホスト３００は、ステップＳ１００８でワークバッファに記憶した内容を元に、画像形成装置１００に対して、プリンタドライバの配信を行う（ステップＳ１０１２）。ここでは、配信ホスト３００は、"Windows（登録商標）用の、プリンタドライバのＰＤＬがLIPS5であり、バージョンが3.0であるプリンタドライバ"を画像形成装置１００に配信する。
以上のように本実施形態では、例えば、ステップＳ１０１２の処理を行うことにより第１の配信手段の一例が実現される。
次に、配信ホスト３００は、オペレータが配信を指示したバージョンのファームウェアを画像形成装置１００に対して配信する（ステップＳ１０１３）。ここでは、配信ホスト３００は、バージョン"V2.20"のファームウェアを画像形成装置１００に配信する。
以上のように本実施形態では、例えば、ステップＳ１０１３の処理を行うことにより第２の配信手段の一例が実現される。
【００５０】
次に、配信ホスト３００が画像形成装置１０６からアクセスクライアントリスト８００の通知を受けた際の配信プリンタドライバ選定処理（ステップＳ５１２〜Ｓ５１４）の一例について説明する。
配信ホスト３００は、画像形成装置１０６からアクセスクライアントリスト８００を受信したか否かを判定する（ステップＳ１００１）。この判定の結果、画像形成装置１０６からアクセスクライアントリスト８００を受信しなかった場合、配信ホスト３００は、プリンタドライバの配信は必要ないと判断し、ステップＳ１０１３にて画像形成装置１０６に対してファームウェアの配信のみを行う。
一方、画像形成装置１０６からアクセスクライアントリスト８００を受信した場合、配信ホスト３００は、そのアクセスクライアントリスト８００を、その送信元である画像形成装置１０６のデバイスＩＤと関連付けてＨＤＤ３０８に格納する。その後、配信ホスト３００は、アクセスクライアントリスト８００から１行ずつデータを読み出す（ステップＳ１００２）。
【００５１】
続いて、配信ホスト３００は、ステップＳ１００２で読み出したデータ中のドライババージョン８０５と、対応ドライバリスト９００中のドライババージョン９０５とを比較する（ステップＳ１００３）。そして、配信ホスト３００は、それらドライババージョン８０５、９０５が異なるか否かを判定して、プリンタドライバの配信が必要であるか否かを判定する（ステップＳ１００４）。
この判定の結果、ドライババージョン８０５、９０５が同じである場合、配信ホスト３００はプリンタドライバを配信する必要が無いと判断し、ステップＳ１００２に戻る。一方、ドライババージョン８０５、９０５が異なる場合には、ステップＳ１００５に進む。
ここでは、図８に示すようにクライアントＰＣの１０５のＯＳ種別８０３はWindows（登録商標）であり、プリンタドライバのＰＤＬ種別８０４は"LIPS5"であり、ドライババージョン８０５は"2.05"のままである。一方、図９に示す対応ドライバリスト９００から、バージョンが"V2.20"であるファームウェアのアップデートに対応したドライババージョン９０５は"3.00"である。よって、ステップＳ１００５に進む。
【００５２】
そして、配信ホスト３００は、クライアントＰＣ１０５に必要なプリンタドライバがインストール済みであるか否かを判定する（ステップＳ１００５）。ここでは、画像形成装置１００以外の他の画像形成装置から受信してＨＤＤ３０８に格納済みのアクセスクライアントリスト８００から、ハードウェアＩＤ"111-222-333-123"の情報を検索する。  そして、ここでは、前述したように画像形成装置１００からアクセスクライアントリスト８００を受信済みであるため、このアクセスクライアントリスト８００から、ハードウェアＩＤ"111-222-333-123"の情報が検索される。
【００５３】
次に、配信ホスト３００は、検索された情報に対応するプリンタドライバのバージョンが、ステップＳ１００３で対応ドライバリスト９００から読み出したドライババージョン９０５（3.00）と異なるか否かを判定する（ステップＳ１００６、Ｓ１００７）。ここでは、前述したようにアクセスクライアントリスト８００において、該当するドライババージョン８０５は"3.00"に書き換えている。そのため、配信ホスト３００はクライアントＰＣ１０５に対して、"Windows（登録商標）用の、プリンタドライバのＰＤＬがLIPS5であり、バージョンが3.0であるプリンタドライバ"を配信済みであると判断し、ステップＳ１００９に進む。
以上のように本実施形態では、例えば、ステップＳ１００７の処理を行うことにより第２の判断手段の一例が実現される。
【００５４】
そして、配信ホスト３００は、クライアントＰＣ１０５に対する"プリンタドライバの設定の変更指示"をＲＡＭ３０３内のワークバッファに記憶する（ステップＳ１００９）。具体的に、配信ホスト３００は、画像形成装置１０６用に使用するプリンタドライバを"Windows（登録商標）用の、プリンタドライバのＰＤＬがLIPS5であり、バージョンが3.0であるプリンタドライバ"に変更する指示を記憶する。
【００５５】
次に、配信ホスト３００は、画像形成装置１００のデバイスＩＤと関連付けてＨＤＤ３０８に格納したアクセスクライアントリスト８００を更新する（ステップＳ１０１０）。ここでは、配信ホスト３００は、画像形成装置１００のデバイスＩＤと関連付けてＨＤＤ３０８に格納したアクセスクライアントリスト８００において、該当するドライババージョン８０５を"3.00"に書き換える。
【００５６】
次に、配信ホスト３００は、ステップＳ１００１で受信したアクセスクライアントリスト８００に、まだ処理していない別のクライアントＰＣの情報（ＰＣハードウェアＩＤ８０１）が含まれているか否かを判定する（ステップＳ１０１１）。この判定の結果、ステップＳ１００１で受信したアクセスクライアントリスト８００に、まだ処理していない別のクライアントＰＣの情報（ＰＣハードウェアＩＤ８０１）が含まれている場合には、ステップＳ１００２へ戻って処理を繰り返す。
【００５７】
一方、ステップＳ１００１で受信したアクセスクライアントリスト８００の情報を全て処理し終えた場合には、ステップＳ１０１２に進む。そして、配信ホスト３００は、ステップＳ１００８でワークバッファに記憶した内容を元に、画像形成装置１０６に対してプリンタドライバの設定の変更指示を行う（ステップＳ１０１２）。
以上のように本実施形態では、例えば、ステップＳ１０１２の処理を行うことにより第３の配信手段の一例が実現される。
次に、配信ホスト３００は、オペレータが配信を指示したバージョンのファームウェアを画像形成装置１００に対して配信する（ステップＳ１０１３）。ここでは、配信ホスト３００は、バージョン"V2.20"のファームウェアを画像形成装置１００に配信する
【００５８】
図１１は、画像形成装置１００、１０６が行うプリンタドライバ配信先クライアントＰＣ選定処理（ステップＳ５０６、Ｓ５０７、Ｓ５１５、Ｓ５１６）の一例を説明するフローチャートである。以下、図１１のフローチャートを用いて、プリンタドライバの配信先となるクライアントＰＣを選定する方法の一例を詳細に説明する。
画像形成装置１００、１０６は、配信ホスト３００からプリンタドライバを受信したか否かを判定する（ステップＳ１１０１）。この判定の結果、配信ホスト３００からプリンタドライバを受信していない場合には、後述するステップＳ１１０６に進む。一方、配信ホスト３００からプリンタドライバを受信した場合には、ステップＳ１１０２に進む。
【００５９】
ステップＳ１１０２に進むと、画像形成装置１００、１０６は、受信したプリンタドライバの情報と、ＨＤＤ２１９内で管理しているアクセスクライアントリスト８００の情報とを比較する。ここで比較する情報は、例えば、クライアントＰＣ１０５のＯＳ種別、プリンタドライバのＰＤＬ種別、及びプリンタドライバのバージョン（ドライババージョン）である。
次に、画像形成装置１００、１０６は、ステップＳ１１０２の比較の結果に基づき、受信したプリンタドライバのバージョンと、ＨＤＤ２１９内で管理しているアクセスクライアントリスト８００のバージョンが異なるか否かを判定する（ステップＳ１１０３）。例えば、クライアントＰＣ１０５のＯＳ種別とプリンタドライバのＰＤＬ種別とが一致し、且つプリンタドライバのバージョンのみが異なる場合にのみ、ステップＳ１１０４に進み、そうでない場合には、ステップＳ１１０５に進む。
【００６０】
ステップＳ１１０４に進むと、画像形成装置１００、１０６は、ステップＳ１１０４で受信したプリンタドライバをクライアントＰＣ１０５のプリンタ設定監視プログラムに対して配信する。
そして、ステップＳ１１０５に進むと、画像形成装置１００、１０６は、配信ホスト３００から更に情報を受信したか否かを判定し（ステップＳ１１０５）、更に情報を受信した場合には、ステップＳ１１０１の処理へ戻って処理を繰り返す。一方、更に情報を受信していない場合には、後述するステップＳ１１０８に進む。
【００６１】
ステップＳ１１０１において、配信ホスト３００からプリンタドライバを受信していないと判定すると、画像形成装置１００、１０６は、プリンタドライバの設定の変更指示を受信したか否かを判定する（ステップＳ１１０６）。この判定の結果、プリンタドライバの設定の変更指示を受信していない場合には、後述するステップＳ１１０８に進む。
一方、プリンタドライバの設定の変更指示を受信した場合、画像形成装置１００、１０６は、クライアントＰＣ１０５のプリンタ設定監視プログラムに対して、プリンタドライバの設定の変更指示を送信する（ステップＳ１１０７）。そして、前述したステップＳ１１０５に進み、画像形成装置１００、１０６は、更に情報を受信したかを判定し、更に情報を受信した場合には、ステップＳ１１０１に戻って処理を繰り返す。
【００６２】
配信ホスト３００から受信した全ての"プリンタドライバとプリンタドライバの設定の変更指示"を処理し終えると、ステップＳ１１０８に進む。そして、画像形成装置１００、１０６は、別途、配信ホスト３００から受信したファームウェアを用いて自機のファームウェアをアップデートする（ステップＳ１１０８）。
【００６３】
以上のように本実施形態では、画像形成装置１００、１０６は、自身が制御される各クライアントＰＣにおけるプリンタ設定を当該各クライアントＰＣから取得し、アクセスクライアントリスト８００に登録しておく。また、配信ホスト３００は、画像形成装置１００、１０６に配信するファームウェアのバージョンとそのファームウェアに対応するプリンタドライバのバージョンとを互いに関連付ける対応ドライバリスト９００をオペレータの指示に基づいて予め登録しておく。配信ホスト３００は、クライアントＰＣ１０５に配信するファームウェアのバージョンがオペレータによって指示されると、画像形成装置１００又は１０６からアクセスクライアントリスト８００を取得する。配信ホスト３００は、取得したアクセスクライアントリスト８００と、対応ドライバリスト９００とを比較して、オペレータによって配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあるか否かを判断する。そして、オペレータから配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがある場合、配信ホスト３００は、画像形成装置１００又は１０６に配信する必要のあるプリンタドライバを対応ドライバリスト９００から選定する。次に、配信ホスト３００は、選定したプリンタドライバと、配信が指示されたファームウェアとを画像形成装置１００又は１０６に配信する。画像形成装置１００又は１０６は、受信したプリンタドライバをクライアントＰＣ１０５に配信すると共に、既存のファームウェアを受信したファームウェアに更新する。
したがって、画像形成装置に対するファームウェアのアップデートと連動して、そのファームウェアのアップデータに影響を受けるクライアントＰＣを自動的に特定し、特定したクライアントＰＣに対してプリンタドライバのアップデートを行うことができる。また、オペレータによって配信が指示されたファームウェアの配信によって配信する必要が生じるプリンタドライバがあるか否かを判断し、ある場合にプリンタドライバを配信するので、クライアントＰＣに対するプリンタドライバの配信を抑えることができる。よって、配信に伴うネットワークトラフィック等の処理負荷を低減することが可能となる。
【００６４】
また、本実施形態では、配信ホスト３００は、アクセスクライアントリスト８００を取得した場合、次の処理を行う。すなわち、配信ホスト３００は、その送信元である画像形成装置以外の他の画像形成装置から既に取得したアクセスクライアントリスト８００から、取得したアクセスクライアントリスト８００で処理対象となっているクライアントＰＣのＩＤ８０１を検索する。そして、他の画像形成装置から既に取得したアクセスクライアントリスト８００に、処理対象となっているクライアントＰＣのＩＤ８０１があった場合、配信ホスト３００は、次の処理を行う。すなわち、配信ホスト３００は、処理しているアクセスクライアントリスト８００と、他の画像形成装置から既に取得したアクセスクライアントリスト８００との夫々から、処理対象のクライアントＰＣのＩＤ８０１に対応するドライババージョン８０５を取得する。そして、配信ホスト３００は、それらのドライババージョン８０５が異なる場合に、前述したようにプリンタドライバを画像形成装置に配信する。そうでない場合には、プリンタドライバの設定の変更を画像配信装置に指示する。したがって、クライアントＰＣに対するプリンタドライバの配信を最小限に抑えることができ、配信に伴うネットワークトラフィック等の処理負荷をより一層低減することが可能となる。
【００６５】
（本発明の他の実施形態）
前述した本発明の実施形態における配信装置を構成する各手段、並びに配信方法の各ステップは、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【００６６】
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００６７】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図４、図５のシーケンス、図１０、図１１に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接、あるいは遠隔から供給するものを含む。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【００６８】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００６９】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００７０】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【００７１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【００７２】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００７３】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７４】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００７５】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【００７６】
尚、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００７７】
【図１】本発明の実施形態を示し、印刷システムの全体構成の一例を示す図である。
【図２】本発明の実施形態を示し、画像形成装置全体の制御を司るコントローラの構成の一例を示すブロック図である。
【図３】本発明の実施形態を示し、配信ホストのハードウェアの構成の一例を示すブロック図である。
【図４】本発明の実施形態を示し、クライアントＰＣから画像形成装置に対するプリンタ設定通知シーケンスの一例を示す図である。
【図５】本発明の実施形態を示し、配信ホストから画像形成装置に対するファームウェアの配信及びプリンタドライバの配信と、画像形成装置からクライアントＰＣに対するプリンタドライバの配信のシーケンスの一例を示す図である。
【図６】本発明の実施形態を示し、配信ホストの表示デバイスに表示されるファームウェア配信指示画面の表示例を示す図である。
【図７】本発明の実施形態を示し、配信ホストの表示デバイスに表示されるファームウェア配信指示詳細画面の表示例を示す図である。
【図８】本発明の実施形態を示し、画像形成装置内で管理しているアクセスクライアントリストの内容の一例を概念的に示す図である。
【図９】本発明の実施形態を示し、配信ホスト内で管理している対応ドライバリストの内容の一例を概念的に示す図である。
【図１０】本発明の実施形態を示し、配信ホストが行う配信プリンタドライバ選定処理（ステップＳ５０３〜Ｓ５０５、Ｓ５１２〜Ｓ５１４）の処理の一例を説明するフローチャートである。
【図１１】本発明の実施形態を示し、画像形成装置が行うプリンタドライバ配信先クライアントＰＣ選定処理（ステップＳ５０６、Ｓ５０７、Ｓ５１５、Ｓ５１６）の一例を説明するフローチャートである。
【符号の説明】
【００７８】
１００、１０６  画像形成装置
１０２  インターネット
１０３  ファイアウォール
１０４  ＬＡＮ
１０５  クライアントＰＣ
３００  配信ホスト
【図１】
2009252039.tif 000003
【図２】
2009252039.tif 000004
【図３】
2009252039.tif 000005
【図４】
2009252039.tif 000006
【図５】
2009252039.tif 000007
【図６】
2009252039.tif 000008
【図７】
2009252039.tif 000009
【図８】
2009252039.tif 000010
【図９】
2009252039.tif 000011
【図１０】
2009252039.tif 000012
【図１１】
2009252039.tif 000013