(57)【要約】【課題】ドライバの削除、或いは更新処理の際のエラー発生頻度を低減させることを目的とする。【解決手段】デバイスに対応するドライバの削除、又は更新に係る処理を実行するドライバ制御手段と、切り替え情報に応じて、ドライバに対応するデバイスから送信されたデバイス構成情報の格納先を切り替え、切り替えた格納先にデバイス構成情報を格納する中継手段と、を有することによって課題を解決する。【選択図】図３
2008234575.tif 000002
【特許請求の範囲】
【請求項１】
デバイスに対応するドライバの削除、又は更新に係る処理を実行するドライバ制御手段と、
切り替え情報に応じて、前記ドライバに対応するデバイスから送信されたデバイス構成情報の格納先を切り替え、切り替えた格納先に前記デバイス構成情報を格納する中継手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記中継手段は、
前記切り替え情報に、前記ドライバ制御手段がドライバの削除、又は更新に係る処理を実行中であることを示す値が設定されている場合には、前記ドライバ制御手段に、
前記切り替え情報に、前記ドライバ制御手段がドライバの削除、又は更新に係る処理を実行中でないことを示す値が設定されている場合には、前記ドライバが管理する記憶領域に、
前記デバイス構成情報を格納することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ドライバ制御手段は、ドライバの削除、又は更新に係る処理を開始する際に、前記ドライバに対応するデバイスに係る前記切り替え情報に、ドライバ制御手段がドライバの削除、又は更新に係る処理を実行中であることを示す値を設定することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記ドライバ制御手段は、前記中継手段より送信されたデバイス構成情報を記憶手段に蓄積し、ドライバを更新した後、前記ドライバに対応するデバイス構成情報が前記記憶手段に蓄積されていた場合には、前記デバイス構成情報を更新したドライバに送信することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記ドライバ制御手段は、ドライバの削除、又は更新に係る処理を開始する際に、前記ドライバに対応するデバイスに、前記デバイス構成情報の送信を停止する旨の命令を送信することを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記ドライバ制御手段は、ドライバの更新に係る処理を終了する際に、前記ドライバに対応するデバイスに、前記デバイス構成情報の送信を開始する旨の命令を送信することを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
情報処理装置におけるドライバ制御方法であって、
デバイスに対応するドライバの削除、又は更新に係る処理を実行するドライバ制御ステップと、
切り替え情報に応じて、前記ドライバに対応するデバイスから送信されたデバイス構成情報の格納先を切り替え、切り替えた格納先に前記デバイス構成情報を格納する中継ステップと、
を有することを特徴とするドライバ制御方法。
【請求項８】
前記中継ステップでは、
前記切り替え情報に、ドライバの削除、又は更新に係る処理を実行中であることを示す値が設定されている場合には、デバイスに対応するドライバの削除、又は更新に係る処理を実行するドライバ制御手段に、
前記切り替え情報に、ドライバの削除、又は更新に係る処理を実行中でないことを示す値が設定されている場合には、前記ドライバが管理する記憶領域に、
前記デバイス構成情報を格納することを特徴とする請求項７に記載のドライバ制御方法。
【請求項９】
前記ドライバ制御ステップでは、ドライバの削除、又は更新に係る処理を開始する際に、前記ドライバに対応するデバイスに係る前記切り替え情報に、ドライバの削除、又は更新に係る処理を実行中であることを示す値を設定することを特徴とする請求項７又は８に記載のドライバ制御方法。
【請求項１０】
前記ドライバ制御ステップでは、前記中継ステップにおいて送信されたデバイス構成情報を記憶手段に蓄積し、ドライバを更新した後、前記ドライバに対応するデバイス構成情報が前記記憶手段に蓄積されていた場合には、前記デバイス構成情報を更新したドライバに送信することを特徴とする請求項７乃至９の何れか１項に記載のドライバ制御方法。
【請求項１１】
前記ドライバ制御ステップでは、ドライバの削除、又は更新に係る処理を開始する際に、前記ドライバに対応するデバイスに、前記デバイス構成情報の送信を停止する旨の命令を送信することを特徴とする請求項７乃至１０の何れか１項に記載のドライバ制御方法。
【請求項１２】
前記ドライバ制御ステップでは、ドライバの更新に係る処理を終了する際に、前記ドライバに対応するデバイスに、前記デバイス構成情報の送信を開始する旨の命令を送信することを特徴とする請求項７乃至１１の何れか１項に記載のドライバ制御方法。
【請求項１３】
コンピュータを、
デバイスに対応するドライバの削除、又は更新に係る処理を実行するドライバ制御手段と、
切り替え情報に応じて、前記ドライバに対応するデバイスから送信されたデバイス構成情報の格納先を切り替え、切り替えた格納先に前記デバイス構成情報を格納する中継手段と、
して機能させることを特徴とするプログラム。
【請求項１４】
請求項１３に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びドライバ制御方法に関する。
【背景技術】
【０００２】
従来、画像形成システムのインストールはコストがかかる作業であった。
【０００３】
即ち、例えば、ユーザーは、画像形成装置を設置し、画像形成装置を制御するためのデバイスドライバを画像形成システムの各クライアントＰＣ（Ｐｅｒｓｏａｎｌ  Ｃｏｍｐｕｔｅｒ）にインストールする。そして、更に、例えば、ユーザーは、デバイスドライバのユーザーインターフェースを手動で操作して、画像形成装置から機器構成情報を取得して、デバイスドライバに設定する必要があった。
【０００４】
近年、ネットワークに接続された画像形成システムのインストールコストを低減するために、手動の機器構成情報の取得を省くための技術が開発されている。
【０００５】
即ち、画像形成システムが、自動でネットワークに接続された画像形成装置から機器構成情報を取得し、取得した機器構成情報をデバイスドライバに自動設定する技術が開発されている。このような画像形成システムでは、インストール時のみならず、画像形成装置の機器構成情報が更新された際にも、機器構成情報をデバイスドライバに更新設定可能となっている。
【０００６】
機器構成情報の自動取得及び自動設定の方法としては、特許文献１に記載の提案がある。特許文献１には、ネットワークプリンタのインストレーション後に自動構成を行うためのシステム及びその方法が記載されている。
【０００７】
【特許文献１】特開２００５−２５７５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
システムが自動でネットワークに接続された画像形成装置から機器構成情報を取得し、取得した機器構成情報をデバイスドライバに設定するシステムにおいて、ユーザー、或いはシステム管理者は、デバイスドライバの削除、或いは更新処理を行う。
【０００９】
ところが、システムが画像形成装置の機器構成情報をデバイスドライバに設定している最中に、デバイスドライバの削除、或いは更新処理を行うと、エラーが発生するという問題がある。
【００１０】
このエラーの原因は、機器構成情報がデバイスドライバに設定されると、デバイスドライバが保持するプロセスが起動状態となること、プロセスが起動状態になっているデバイスドライバはＯＳの仕様により削除できないことにあった。
【００１１】
本発明はこのような問題点に鑑みなされたもので、ドライバの削除、或いは更新処理の際のエラー発生頻度を低減させることを目的とする。
【課題を解決するための手段】
【００１２】
そこで、本発明の情報処理装置は、デバイスに対応するドライバの削除、又は更新に係る処理を実行するドライバ制御手段と、切り替え情報に応じて、前記ドライバに対応するデバイスから送信されたデバイス構成情報の格納先を切り替え、切り替えた格納先に前記デバイス構成情報を格納する中継手段と、を有することを特徴とする。
【００１３】
また、本発明は、情報処理装置におけるドライバ制御方法であって、デバイスに対応するドライバの削除、又は更新に係る処理を実行するドライバ制御ステップと、切り替え情報に応じて、前記ドライバに対応するデバイスから送信されたデバイス構成情報の格納先を切り替え、切り替えた格納先に前記デバイス構成情報を格納する中継ステップと、を有することを特徴とする。
【００１４】
また、本発明は、プログラム及び記憶媒体としてもよい。
【発明の効果】
【００１５】
本発明によれば、ドライバの削除、或いは更新処理の際のエラー発生頻度を低減させることができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施形態について図面に基づいて説明する。
【００１７】
＜実施形態１＞
〔システムの説明〕
図１は、画像形成システムの構成の一例を示すブロック図である。
図１に示されるように、画像形成システムを構成する各装置はネットワーク１０７を介して接続されている。このネットワーク１０７は、一系統であっても、複数系統であってもよい。
【００１８】
図１において、１０１、１０２、１０３は、クライアントＰＣである。クライアントＰＣは、例えば情報処理装置（又はコンピュータ）であり、ネットワーク１０７に接続されている画像形成装置と通信する機能を備えている。各情報処理装置には、ＯＳ（オペレーティングシステム）、画像形成装置を制御するためのデバイスドライバ、画像生成アプリケーション等のソフトウェアがインストールされている。
【００１９】
図２は、クライアントＰＣの内部構成を示すブロック図である。
クライアントＰＣの駆動源としては、ＡＣアダプタ２０１が外付けされている。
クライアントＰＣには、下記の装置が内蔵されている。
【００２０】
電源ユニット２０２、ＣＰＵ２０３、ＢＩＯＳ２０４、ＬＣＤで構成されるディスプレイ２０５、ビデオコントローラ（ＶＧＡＣ）２０６、ビデオメモリ（ＶＲＡＭ）２０７、ハードディスクドライブ（ＨＤＤ）２０８。ハードディスクコントローラ（ＨＤＣ）２０９、ネットワークポート（ＰＯＲＴ）２１０、キーボードコントローラ（ＫＢＣ）２１１、キーボード２１３、システムメインメモリ（ＭＡＩＮ  ＤＲＡＭ）２１２。
【００２１】
このクライアントＰＣの各装置に電力を共有しているのが、電源ユニット２０２である。主制御を司っているのがＣＰＵ２０３であり、その基本的制御を指示するのが、ＢＩＯＳ２０４である。
【００２２】
書き込み可能な不揮発性メモリ装置であるＨＤＤ２０８は、ハードディスクコントローラ２０９（ＨＤＣ）により制御される。
【００２３】
ＣＰＵ２０３は、ハードディスクドライブ２０８からプログラム（ソフトウェアプログラム）を読みだし、システムメインメモリ２１２に展開し、また同メモリを利用してプログラムを実行する。このとき、画面の表示は、ＶＧＡＣ２０６を使ってディスプレイ２０５に、ＶＲＡＭ２０７に書き込まれている画像（又はアイコン）等を表示することより行われる。なお、ＭＡＩＮ  ＤＲＡＭ２１２には、例えば、後述する機器構成情報（デバイス構成情報）やフラグ等が記憶される。
【００２４】
また、ユーザーからの操作は、キーボード２１３からのキー入力により行われ、ＫＢＣ２１１が入力されたキー入力情報を処理する。ＰＯＲＴ２１０は、ネットワークに接続された画像形成装置とネットワーク通信する。
【００２５】
また、ＨＤＤ２０８には、ＯＳ、各種アプリケーション、デバイスドライバ等のソフトウェアが記録されていて、ＣＰＵ２０３により実行される。
【００２６】
また、ユーザーは、クライアントＰＣのＨＤＤ２０８に記録されている各種ソフトウェアを操作して、画像形成システムの設定、画像形成装置からの情報取得及び印刷処理を実行することが可能となっている。
【００２７】
再び図１の説明に戻り、１０４、１０５、１０６は、画像形成装置である。
本実施形態では、画像形成装置Ａが、クライアントＰＣと通信して、自身の機器構成が変化した場合に、自身の機器構成情報をクライアントＰＣに通知する機能、クライアントＰＣから電子データを受信し、印刷処理を実行する機能を備えているものとする。
【００２８】
なお、画像形成システムを構成する、クライアントＰＣ及び画像形成装置の数は、本実施形態に限定されるものではない。
【００２９】
図３は、クライアントＰＣにインストールされている、ソフトウェアの詳細を表したブロック図である。クライアントＰＣに格納されているソフトウェアは、３０７，３０８を除くモジュールである。クライアントＰＣは３０７を介して３０８と通信する。
クライアントＰＣは、図３中のソフトウェアにより、ネットワークに接続された画像形成装置から機器構成情報を取得し、取得した機器構成情報をデバイスドライバに設定しながら、デバイスドライバの削除及び更新を実現する。
【００３０】
図３中、３０１は、削除対象のデバイスドライバである。デバイスドライバ３０１は、ドライバ部３０２及び機器構成情報記述部３０３により構成されている。
【００３１】
なお、デバイスドライバは、特定の画像形成装置に関連づけられていて、特定のデバイスドライバからは、特定の画像形成装置が制御可能となっている。
ドライバ部３０２は、画像形成装置の機器構成情報を取得して機器構成情報記述部３０３に記録する。
【００３２】
また、ドライバ部３０２は、機器構成情報記述部３０３への記録を開始する前に自動更新実行中フラグ３０４をセットし、自動更新処理終了後に自動更新実行中フラグ３０４をリセットする。
【００３３】
自動更新実行中フラグ３０４は、セット状態では、該当するデバイスドライバが機器構成情報自動更新処理を実行中であることを表し、リセット状態では、該当するデバイスドライバが機器構成情報自動更新処理を実行していないことを表す。
自動更新実行中フラグ３０４は、クライアントＰＣにインストールされているデバイスドライバごとに用意されている。
【００３４】
自動更新中継モジュール３０５は、画像形成装置から通知された機器構成情報を、通信モジュール３０７を介して取得し、より上位のソフトウェアに中継する。
また、自動更新中継モジュール３０５は、内部に自動更新切り替えフラグ３０６を備えている。
【００３５】
自動更新中継モジュール３０５は、自動更新切り替えフラグ３０６が、セットされていれば、デバイスドライバ削除／更新プログラム３０９に機器構成情報を転送（又は送信）する。また、自動更新中継モジュール３０５は、自動更新切り替えフラグ３０６が、リセットされていれば、機器構成情報を送付してきた画像形成装置に関連づけられている特定のデバイスドライバに構成情報を転送（又は送信）する。
自動更新中継モジュール３０５は、デバイスドライバとは、独立したモジュールである。
【００３６】
自動更新切り替えフラグ３０６は、セット状態では、デバイスドライバ削除／更新処理を実行中であることを表し、リセット状態では、削除／更新処理を実行していないことを表す。
自動更新切り替えフラグ３０６は、クライアントＰＣにインストールされているデバイスドライバ及びシステムに接続されている画像形成装置別に用意されている。
【００３７】
通信モジュール３０７は、画像形成装置３０８と、自動更新中継モジュール３０５と、のデータ通信を制御する。
クライントＰＣは、通信モジュール３０７を用いて、ネットワークを介して、機器構成情報を画像形成装置から受信し、機器構成情報の通知／非通知命令等のデバイス制御情報、或いは印刷データを画像形成装置に送信可能となっている。
【００３８】
画像形成装置３０８は、クライアントＰＣから送付された印刷データをプリントする機能、自身の機器構成情報を特定のクライアントＰＣに通知する機能を備える。
なお、画像形成装置３０８は、機器構成情報通知の有効／無効及び通知のタイミングを、ローカル、或いはネットワークを介してリモートで設定可能なように構成されていてもよい。例えば、画像形成装置３０８は、電源ＯＮ時に通知、機器構成情報が変更された時に通知、一定時間隔で通知、通知しない、等をクライアントＰＣから設定可能となっている。
【００３９】
なお、本実施形態では、画像形成装置Ｃが、機器構成情報の通知／非通知のリモート設定機能及び通知のタイミングのリモート設定機能を有するよう構成されているものとする。
【００４０】
デバイスドライバ削除／更新プログラム３０９は、自動更新情報保存部３１１、自動更新代替部３１０から構成されている。デバイスドライバ削除／更新プログラム３０９は、クライアントＰＣにインストールされている特定のデバイスドライバを削除、或いはより新しいデバイスドライバに更新する。
【００４１】
より具体的には、デバイスドライバ削除／更新プログラム３０９は、下記の処理を実行する（又は下記の機能を有する）。
・ユーザーインターフェース用の画面（例えば、後述する図５のような画面）をディスプレイ２０５に表示させ、ユーザーによる特定のデバイスドライバの選択指示、削除、或いは更新処理の実行指示を受け取る
・起動時に、自動更新実行中フラグ３０４を参照してフラグがセットされていた場合に処理を保留する
・デバイスドライバの削除／更新処理実行中は自動更新切り替えフラグ３０６をセットし、デバイスドライバの削除／更新処理を実行していない場合は、リセットする
・デバイスドライバの削除／更新処理開始時に、削除対象デバイスドライバ３０１に関連づけられている画像形成装置３０８に機器構成情報の非通知命令を送付する
・自動更新中継モジュールから送付された画像形成装置の機器構成情報を受信し、受信した機器構成情報を、画像形成装置識別情報及びデバイスドライバ識別情報と関連付けて、自動更新情報保存部３１１に保存する
・更新デバイスドライバ３１２をインストール後に自動更新情報保存部３１１に保存されている機器構成情報を、更新デバイスドライバ３１２に通知（又は送信）する
・更新デバイスドライバ３１２をインストール後に自動更新情報保存部３１１に情報が保存されていた場合に、更新デバイスドライバ３１２に画像形成装置から機器構成情報を取得するように指示する
【００４２】
また、デバイスドライバ削除／更新プログラム３０９は、削除／更新対象のデバイスドライバが何らかの処理を実行中の場合、このデバイスドライバを削除、或いは更新することはできない。
【００４３】
これは、プロセス処理中に関連モジュールを削除するとシステムがハングアップするため（機能を停止し、処理を受け付けなくなるため）、ＯＳが削除防止のプロテクトをかけているからである。
【００４４】
自動更新代替部３１０は、自動更新中継モジュール３０５と通信して、自動更新切り替えフラグをセット、或いはリセットする。また、自動更新代替部３１０は、自動更新中継モジュール３０５と通信して、画像形成装置の機器構成情報を取得し、自動更新情報保存部３１１に保存（又は蓄積）する。
【００４５】
３１２は、更新デバイスドライバである。更新デバイスドライバ３１２は、削除対象デバイスドライバ３０１と同様に、ドライバ部３１３及び機器構成情報記述部３１４により構成されている。
【００４６】
更新デバイスドライバ３１２は、デバイスドライバ削除／更新プログラム３０９により、削除対象デバイスドライバ３０１と置き換えられる。ことのき、削除対象デバイスドライバ３０１が保持していた画像形成装置の機器構成情報は、更新デバイスドライバ３１２によって引き継がれる。
【００４７】
図４は、画像形成装置が通知する機器構成情報の一例を示した図である。
図４において、４０１は、用紙カセット情報記述部で、画像形成装置が備えている用紙カセットの種類とサポートする用紙サイズ、用紙枚数が記述されている。
【００４８】
４０２は、フィニッシャー情報記述部で、画像形成装置が備えているフィニッシャーの種類とサポートする機能が記述されている。
図４の例では、機器構成情報に、画像形成装置は、Ａ４用紙１００枚をサポートしているカセットＡ、Ｂ５用紙５０枚をサポートしているカセットＢ、くるみ綴じ製本機能及びステイプル機能を備えたフィニッシャーＣを備えていることが記載されている。
【００４９】
図５は、デバイスドライバ削除／更新プログラムが表示するデバイスドライバ選択画面の一例を表した図である。
図５において、５０１は、デバイスドライバ一覧表示領域で、画像形成装置名称表示部５０２及びデバイスドライバ名称表示部５０３により構成されている。
【００５０】
画像形成装置名称表示部５０２には、特定のデバイスドライバに関連づけられている画像形成装置の名称が一覧で表示される。
デバイスドライバ名称表示部５０３には、クライアントＰＣにインストールされているデバイスドライバの名称が一覧で表示される。
【００５１】
図５の例は、クライアントＰＣには、デバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣがインストールされており、それぞれのデバイスドライバには、画像形成装置Ａ、画像形成装置Ｂ、画像形成装置Ｃが関連づけられている。
【００５２】
ユーザーは、デバイスドライバ一覧表示領域５０１で、画像形成装置名称、或いは画像形成装置名称を選択することで、削除／更新するデバイスドライバを選択することができる。
【００５３】
５０４は"更新"ボタンである。ユーザーがデバイスドライバを選択した後、更新ボタン５０４を押下すると、デバイスドライバ削除／更新プログラム３０９がデバイスドライバ更新処理を開始する。
【００５４】
５０５は"削除"ボタンである。ユーザーがデバイスドライバを選択した後、削除ボタン５０５を押下すると、デバイスドライバ削除／更新プログラム３０９がデバイスドライバ削除処理を開始する。
【００５５】
図６は、デバイスドライバ削除／更新プログラムが自動更新情報保存部に保存する機器構成情報のフォーマットの一例を表した図である。
図６において、６０１は、デバイスドライバ識別情報保存領域である。６０２は、画像形成装置識別情報保存領域である。６０３は、機器構成情報保存領域である。
【００５６】
デバイスドライバ削除／更新プログラム３０９が図６に示されるようなフォーマットで機器構成情報を保存する。このことにより、例えばデバイスドライバ削除／更新プログラム３０９は、保存されている機器構成情報の通知元の画像形成装置及び通知が予定されていたデバイスドライバを直ぐに特定することができる。
【００５７】
より具体的には、デバイスドライバ削除／更新プログラム３０９は、図６に記載の情報により、機器構成情報として、
"Ａ４用紙１００枚をサポートしているカセットＡ、Ｂ５用紙５０枚をサポートしているカセットＢ、くるみ綴じ製本機能及びステイプル機能を備えたフィニッシャーＣ"
が、画像形成装置Ａから、デバイスドライバＡに送付される予定であったこと、
更に、機器構成情報として、
"Ａ４用紙１００枚をサポートしているカセットＡ"
が、画像形成装置Ｂから、デバイスドライバＢに送付される予定であったことが分かる。
【００５８】
〔処理の説明〕
〔デバイスドライバの削除処理〕
図７は、クライアントＰＣ上で動作するデバイスドライバ削除／更新プログラムによるデバイスドライバ削除処理の流れを表したフローチャートである。図７を用いてクライアントＰＣにデバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣがインストールされている場合にエラーの発生を防止しながらデバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣを削除する処理について説明する。
【００５９】
ユーザーがクライアントＰＣ１０１において、デバイスドライバ削除／更新プログラム３０９を起動する操作指示を行うと、デバイスドライバ削除／更新プログラム３０９は、以下の処理を開始する。
【００６０】
ステップＳ７０１において、デバイスドライバ削除／更新プログラム３０９は、ディスプレイ２０５に図５のデバイスドライバ選択画面を表示する。
【００６１】
次に、ステップＳ７０２において、デバイスドライバ削除／更新プログラム３０９は、ユーザーがデバイスドライバ一覧表示領域５０１で、デバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣを選択して、削除ボタン５０５を押下したことを検知する。
【００６２】
次に、ステップＳ７０３において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバＡ用、デバイスドライバＢ用、デバイスドライバＣ用の自動更新切り替えフラグ３０６に"１"（値"１"）をセットする。
【００６３】
自動更新切り替えフラグ３０６がセットされると、自動更新中継モジュール３０５は、画像形成装置Ａ、画像形成装置Ｂ、画像形成装置Ｃから送付されてきた機器構成情報の転送先をデバイスドライバ削除／更新プログラム３０９の自動更新代替部３１０にする。
【００６４】
次に、ステップＳ７０４において、デバイスドライバ削除／更新プログラム３０９は、画像形成装置Ｃに機器構成情報非通知命令を送付する。なお、画像形成装置Ａ及び画像形成装置Ｂは、機器構成情報の通知／非通知のリモート設定機能を備えていないため、これらの画像形成装置に対しては、非通知命令は送付されない。
【００６５】
画像形成装置Ｃは、機器構成情非通知命令を受信すると、以降、クライアントＰＣ１０１に対する機器構成情報の送付を停止する。
【００６６】
次に、ステップＳ７０５において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバＡ用、デバイスドライバＢ用、デバイスドライバＣ用の自動更新実行中フラグ３０４を参照する。
【００６７】
次に、ステップＳ７０６において、デバイスドライバ削除／更新プログラム３０９は、自動更新実行中フラグ３０４がセットされているか否かを判定する。ここで、自動更新実行中フラグ３０４がセットされていたと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ７０７に進む。ステップＳ７０７において、デバイスドライバ削除／更新プログラム３０９は、セットされている自動更新実行中フラグ３０４に関連づけられているデバイスドライバの削除処理を一定期間保留し、その後、ステップＳ７０６に戻る。
【００６８】
削除処理の保留期間はデバイスドライバ削除／更新プログラム３０９の起動前に随時ユーザー等が設定可能となっていて、一般的には、デバイスドライバが機器構成情報を設定する時間より若干長めの時間が設定される。なお、予め定められた保留期間がデバイスドライバ削除／更新プログラム３０９等に設定されていてもよい。
【００６９】
一方、ステップＳ７０６において、自動更新実行中フラグ３０４がセットされていないと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ７０８に進み、デバイスドライバ削除処理を開始する。
【００７０】
次に、デバイスドライバ削除／更新プログラム３０９は、ステップＳ７０９、Ｓ７１０、Ｓ７１１により、デバイスドライバ削除処理が終了するまでの間に機器構成情報が送付されてきた場合の処理を行う。
【００７１】
即ち、ステップＳ７０９において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバの削除処理が終了したか否かを判定する。削除処理が終了していないと判定した場合、デバイスドライバ削除／更新プログラム３０９は、次のステップＳ７１０で、機器構成情報が送付されてきたか否かを判定する。
【００７２】
ステップＳ７１０において、機器構成情報が送付されてきたと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ７１１に進む。ここで、デバイスドライバ削除／更新プログラム３０９は、送付されてきた機器構成情報と、機器構成情報の通知元の画像形成装置識別情報と、情報通知が予定されていたデバイスドライバ識別情報と、を関連付けて、自動更新情報保存部３１１に保存する。
【００７３】
本実施形態では、図６で示した情報が自動更新情報保存部３１１に保存されたものとする。
【００７４】
一方、ステップＳ７１０において、機器構成情報が送付されてこなかったと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ７０９に戻る。以降、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバの削除処理が終了するまでステップＳ７０９〜ステップＳ７１１の処理を繰り返す。
【００７５】
ステップＳ７０９において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバの削除処理が終了したと判定した場合、ステップＳ７１２に進む。
【００７６】
ステップＳ７１２において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバＡ用、デバイスドライバＢ用、デバイスドライバＣ用の自動更新切り替えフラグ３０６を削除する。
【００７７】
次に、ステップＳ７１３において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバＡ用、デバイスドライバＢ用、デバイスドライバＣ用の自動更新実行中フラグ３０４を削除して、図７に示す処理を終了する。
【００７８】
〔機器構成情報の送信先（格納先）切り替え処理〕
図８は、クライアントＰＣ上で動作する自動更新中継モジュールの機器構成情報の送信先切り替え処理の流れを表したフローチャートである。図８を用いて、機器構成情報の送信先を切り替える処理について説明する。以降、機器構成情報のプログラム同士の授受、送信を、構成情報の送信先となるプログラム（ドライバ等）が管理する所定の記憶領域（格納先）に対する格納若しくは記憶と表現することもある。
【００７９】
通信モジュール３０７を介して画像形成装置より機器構成情報を受け取ると、自動更新中継モジュール３０５は、以下の処理を開始する。
ステップＳ８０１において、自動更新中継モジュール３０５は、機器構成情報を送信してきた画像形成装置に対応する（又はこの画像形成装置のデバイスドライバに対応する）自動更新切り替えフラグ３０６を参照する。
【００８０】
次に、ステップＳ８０２において、自動更新中継モジュール３０５は、ステップＳ８０１において参照した自動更新切り替えフラグ３０６がセットされているか否かを判定する。
自動更新中継モジュール３０５は、自動更新切り替えフラグ３０６がセットされていると判定すると、ステップＳ８０３に進み、自動更新代替部３１０に機器構成情報を送信（又は転送）する。
【００８１】
一方、自動更新中継モジュール３０５は、自動更新切り替えフラグ３０６がセットされていないと判定すると、ステップＳ８０４に進み、機器構成情報を送信してきた画像形成装置に対応するデバイスドライバに機器構成情報を送信（又は転送）する。
【００８２】
〔機器構成情報の記憶処理〕
図９は、クライアントＰＣ上で動作するデバイスドライバの機器構成情報の記憶処理の流れを表したフローチャートである。図９を用いて、機器構成情報を記憶する処理について説明する。
【００８３】
自動更新中継モジュール３０５を介して機器構成情報を受け取ると、デバイスドライバは、以下の処理を開始する。
ステップＳ９０１において、デバイスドライバは、自身に対応する自動更新実行中フラグ３０４に"１"（値"１"）をセットする。
【００８４】
続いて、ステップＳ９０２において、デバイスドライバは、自動更新中継モジュール３０５より受信した機器構成情報を機器構成情報記述部に記憶する。
続いて、ステップＳ９０３において、デバイスドライバは、自身に対応する自動更新実行中フラグ３０４に"０"（値"０"）をセットし、自動更新実行中フラグ３０４をリセットする。
【００８５】
〔デバイスドライバの更新処理（その１）〕
図１０は、クライアントＰＣ上で動作するデバイスドライバ削除／更新プログラムのデバイスドライバ更新処理の流れを表したフローチャート（その１）である。図１０を用いてクライアントＰＣにデバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣがインストールされている場合にエラーの発生を防止しながらデバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣを更新する処理について説明する。
【００８６】
ユーザーがクライアントＰＣ１０１において、デバイスドライバ削除／更新プログラム３０９を起動する操作指示を行うと、デバイスドライバ削除／更新プログラム３０９は、以下の処理を開始する。
【００８７】
ステップＳ１００１において、デバイスドライバ削除／更新プログラム３０９は、ディスプレイ２０５に図５のデバイスドライバ選択画面を表示する。
【００８８】
次に、ステップＳ１００２において、デバイスドライバ削除／更新プログラム３０９は、ユーザーがデバイスドライバ一覧表示領域５０１で、デバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣを選択して、更新ボタン５０４を押下したことを検知する。
【００８９】
次に、ステップＳ１００３において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバＡ用、デバイスドライバＢ用、デバイスドライバＣ用の自動更新切り替えフラグ３０６に"１"（値"１"）をセットする。
【００９０】
自動更新切り替えフラグ３０６がセットされると、自動更新中継モジュール３０５は、画像形成装置Ａ、画像形成装置Ｂ、画像形成装置Ｃから送付されてきた機器構成情報の転送先をデバイスドライバ削除／更新プログラム３０９の自動更新代替部３１０にする。
【００９１】
次に、ステップＳ１００４において、デバイスドライバ削除／更新プログラム３０９は、画像形成装置Ｃに機器構成情報非通知命令を送付する。なお、画像形成装置Ａ及び画像形成装置Ｂは、機器構成情報通知／非通知のリモート設定機能を備えていないため、これらの画像形成装置に対しては、非通知命令は送付されない。
【００９２】
画像形成装置Ｃは、機器構成情非通知命令を受信すると、以降、クライアントＰＣ１０１に対する機器構成情報の送付を停止する。
【００９３】
次に、ステップＳ１００５において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバＡ用、デバイスドライバＢ用、デバイスドライバＣ用の自動更新実行中フラグ３０４を参照する。
【００９４】
次に、ステップＳ１００６において、デバイスドライバ削除／更新プログラム３０９は、自動更新実行中フラグ３０４がセットされているか判定する。ここで、自動更新実行中フラグ３０４がセットされていたと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ１００７に進む。ステップＳ１００７において、デバイスドライバ削除／更新プログラム３０９は、セットされている自動更新実行中フラグ３０４に関連づけられているデバイスドライバの更新処理を一定期間保留し、その後、ステップＳ１００６に戻る。
【００９５】
更新処理の保留期間はデバイスドライバ削除／更新プログラム３０９起動前に随時ユーザー等が設定可能となっていて、一般的には、デバイスドライバが機器構成情報を設定する時間より若干長めの時間が設定される。なお、予め定められた保留期間がデバイスドライバ削除／更新プログラム３０９等に設定されていてもよい。
【００９６】
一方、ステップＳ１００６において、自動更新実行中フラグ３０４がセットされていないと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ１００８に進み、デバイスドライバ更新処理を開始する。
【００９７】
次に、デバイスドライバ削除／更新プログラム３０９は、ステップＳ１００９、Ｓ１０１０、Ｓ１０１１により、デバイスドライバ削除処理が終了するまでの間に機器構成情報が送付されてきた場合の処理を行う。
【００９８】
即ち、ステップＳ１００９において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバの削除処理が終了したか否かを判定する。削除処理終了していないと判定した場合、デバイスドライバ削除／更新プログラム３０９は、次のステップＳ１０１０で、機器構成情報が送付されてきたか否かを判定する。
【００９９】
ステップＳ１０１０において、機器構成情報が送付されてきたと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ１０１１に進む。ここで、デバイスドライバ削除／更新プログラム３０９は、送付されてきた機器構成情報と、機器構成情報の通知元の画像形成装置識別情報と、情報通知が予定されていたデバイスドライバ識別情報と、を関連付けて、自動更新情報保存部３１１に保存する。
【０１００】
本実施形態では、図６で示した情報が自動更新情報保存部３１１に保存されたものとする。
【０１０１】
一方、ステップＳ１０１０において、機器構成情報が送付されていなかったと判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ１００９に戻る。以降、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバの更新処理が終了するまでステップＳ１００９〜Ｓ１０１１の処理を繰り返す。
【０１０２】
ステップＳ１００９において、デバイスドライバ削除／更新プログラム３０９は、デバイスドライバの更新処理が終了したと判定した場合、ステップＳ１０１２に進む。なお、このとき、クライアントＰＣ１０１にインストールされていたデバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣは、より新しいデバイスドライバに置き換えられている。
【０１０３】
ステップＳ１０１２において、デバイスドライバ削除／更新プログラム３０９は、自動更新情報保存部３１１に機器構成情報が保存されているか否かを判定する。
【０１０４】
機器構成情報が保存されていると判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ１０１３において、保存されていた機器構成情報を、機器構成情報と関連づけられているデバイスドライバに送付する。
【０１０５】
本実施形態では、図６で示される情報が自動更新情報保存部３１１に保存されている。そのため、デバイスドライバ削除／更新プログラム３０９は、画像形成装置Ａから送付されてきた機器構成情報を、更新デバイスドライバＡに、画像形成装置Ｂから送付されてきた機器構成情報を、更新デバイスドライバＢに送付する。
【０１０６】
次に、ステップＳ１０１４において、デバイスドライバ削除／更新プログラム３０９は、更新デバイスドライバＡ用、更新デバイスドライバＢ用、更新デバイスドライバＣ用の自動更新切り替えフラグ３０６に"０"（値"０"）を設定し、リセットする。
【０１０７】
自動更新切り替えフラグ３０６がリセットされると、自動更新中継モジュール３０５は、以下の処理を行う。即ち、自動更新中継モジュール３０５は、画像形成装置Ａ、画像形成装置Ｂ、画像形成装置Ｃから送付されてきた機器構成情報の転送先を、それぞれ、更新デバイスドライバＡ、更新デイスドライバＢ、更新デバイスドライバＣにする。
【０１０８】
次に、ステップＳ１０１５において、デバイスドライバ削除／更新プログラム３０９は、画像形成装置Ｃに機器構成情報通知命令を送付して、処理を終了する。
【０１０９】
画像形成装置Ｃは、機器構成情通知命令を受信すると、以降、クライアントＰＣ１０１に対する機器構成情報の送付を開始する。
【０１１０】
＜実施形態２＞
〔デバイスドライバの更新処理（その２）〕
図１１は、クライアントＰＣ上で動作するデバイスドライバ削除／更新プログラムのデバイスドライバ更新処理の流れを表したフローチャート（その２）である。図１１を用いて、クライアントＰＣにデバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣがインストールされている場合にエラーの発生を防止しながらデバイスドライバＡ、デバイスドライバＢ、デバイスドライバＣを更新する処理について説明する。
【０１１１】
図１１中のステップＳ１１０１からＳ１１１１までの処理は、図１０中のステップＳ１００１からＳ１０１１の処理と全く同じであるため、説明を省略する。
【０１１２】
ステップＳ１１１２において、デバイスドライバ削除／更新プログラム３０９は、更新デバイスドライバＡ用、更新デバイスドライバＢ用、更新デバイスドライバＣ用の自動更新切り替えフラグ３０６に"０"（値"０"）を設定し、リセットする。
【０１１３】
自動更新切り替えフラグ３０６がリセットされると、自動更新中継モジュール３０５は、以下の処理を行う。即ち、自動更新中継モジュール３０５は、画像形成装置Ａ、画像形成装置Ｂ、画像形成装置Ｃから送付されてきた機器構成情報の転送先を、それぞれ、更新デバイスドライバＡ、更新デイスドライバＢ、更新デバイスドライバＣにする。
【０１１４】
次に、ステップＳ１１１３において、デバイスドライバ削除／更新プログラム３０９は、画像形成装置Ｃに機器構成情報通知命令を送付する。
【０１１５】
画像形成装置Ｃは、機器構成情通知命令を受信すると、以降、クライアントＰＣ１０１に対する機器構成情報の送付を開始する。
【０１１６】
次にステップＳ１１１４において、デバイスドライバ削除／更新プログラム３０９は、自動更新情報保存部３１１に機器構成情報が保存されているか否かを判定する。
【０１１７】
機器構成情報が保存されていると判定した場合、デバイスドライバ削除／更新プログラム３０９は、ステップＳ１１１５において、更新デバイスドライバＡ、更新デバイスドライバＢ、更新デバイスドライバＣに対して、機器構成情報の取得指示を出す。
【０１１８】
機器構成情報の取得指示を受けて取ると、更新デバイスドライバＡ、更新デバイスドライバＢ、更新デバイスドライバＣは、直ちに、自動更新情報保存部３１１又は画像形成装置から機器構成情報を取得して、機器構成情報記述部に設定（又は記述）する。
【０１１９】
より具体的に説明すると、更新デバイスドライバは、デバイスドライバ削除／更新プログラム３０９に対して、該当する機器構成情報が自動更新情報保存部３１１に保存されていないか問い合わせを行う。
該当する機器構成情報が自動更新情報保存部３１１に保存されている旨の問い合わせ結果を受け取ると、更新デバイスドライバは、自動更新情報保存部３１１に保存されている該当する機器構成情報を取得する。
一方、該当する機器構成情報が自動更新情報保存部３１１に保存されていない旨の問い合わせ結果を受け取ると、更新デバイスドライバは、該当する画像形成装置から機器構成情報を取得する。
【０１２０】
この後、デバイスドライバ削除／更新プログラム３０９は、図１１に示す処理を終了する。
【０１２１】
＜その他の実施形態＞
また、本発明の目的は、以下のようにすることによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム或いは装置に供給する。そして、そのシステム或いは装置の中央演算処理手段（ＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【０１２２】
また、システム或いは装置の前記中央演算処理手段が読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、システム或いは装置上で稼働しているオペレーティングシステム（ＯＳ）等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれる。
【０１２３】
更に、記憶媒体から読み出されたプログラムコードが、前記システム或いは装置に挿入された機能拡張カードや、接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【０１２４】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【０１２５】
以上、上述した各実施形態によれば、デバイスドライバの削除、或いは更新処理実行時に発生する可能性があったプロセス起動中のドライバ削除エラーを防止することが可能となり、ユーザーの使い勝手を向上させることができる。
【０１２６】
また、デバイスドライバ更新処理中に発生した画像形成装置の最新機器構成変化を更新済みのデバイスドライバに反映させることが可能となり、ユーザーの使い勝手を向上させることができる。
【０１２７】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０１２８】
【図１】画像形成システムの構成の一例を示すブロック図である。
【図２】クライアントＰＣの内部構成を示すブロック図である。
【図３】クライアントＰＣにインストールされている、ソフトウェアの詳細を表したブロック図である。
【図４】画像形成装置が通知する機器構成情報の一例を示した図である。
【図５】デバイスドライバ削除／更新プログラムが表示するデバイスドライバ選択画面の一例を表した図である。
【図６】デバイスドライバ削除／更新プログラムが自動更新情報保存部に保存する機器構成情報のフォーマットの一例を表した図である。
【図７】クライアントＰＣ上で動作するデバイスドライバ削除／更新プログラムによるデバイスドライバ削除処理の流れを表したフローチャートである。
【図８】クライアントＰＣ上で動作する自動更新中継モジュールの機器構成情報の送信先切り替え処理の流れを表したフローチャートである。
【図９】クライアントＰＣ上で動作するデバイスドライバの機器構成情報の記憶処理の流れを表したフローチャートである。
【図１０】クライアントＰＣ上で動作するデバイスドライバ削除／更新プログラムのデバイスドライバ更新処理の流れを表したフローチャート（その１）である。
【図１１】クライアントＰＣ上で動作するデバイスドライバ削除／更新プログラムのデバイスドライバ更新処理の流れを表したフローチャート（その２）である。
【符号の説明】
【０１２９】
３０４  自動更新実行中フラグ
３０５  自動更新中継モジュール
３０６  自動更新切り替えフラグ
３０９  デバイスドライバ削除／更新プログラム
３１０  自動更新代替部
３１１  自動更新情報保存部
【図１】
2008234575.tif 000003
【図２】
2008234575.tif 000004
【図３】
2008234575.tif 000005
【図４】
2008234575.tif 000006
【図５】
2008234575.tif 000007
【図６】
2008234575.tif 000008
【図７】
2008234575.tif 000009
【図８】
2008234575.tif 000010
【図９】
2008234575.tif 000011
【図１０】
2008234575.tif 000012
【図１１】
2008234575.tif 000013