(57)【要約】【課題】  周辺機器の接続と専用インストーラの組込作業とが前後しても、専用インストーラを用いたデバイスドライバのインストールが確実に実行されるようにする。【解決手段】  本発明では、多機能装置がＰＣに接続されると、多機能装置が有する複数の機能の内、ストレージ機能の情報を選択的に記述した機器情報（ディスクリプタ）を、多機能装置からＰＣに入力し、上記接続を、ストレージ機能のみを有する機器の接続としてＰＣに検出させる。また、ＰＣに専用インストーラが組み込まれると、ＰＣから多機能装置内蔵のストレージ装置に指示データを書き込む。指示データが書き込まれると、多機能装置は、ＰＣとの接続を解除・復帰させ、機器情報の要求信号がＰＣから送信されるのを待ち、要求信号を受信すると、複数機能の情報を記述した機器情報をＰＣに入力し、当該多機能装置の接続を、複数機能を有する機器の接続として、ＰＣに検出させる。【選択図】  図６
2006092435.tif 000002
【特許請求の範囲】
【請求項１】
周辺機器の接続を検出すると、前記検出された周辺機器に対応するデバイスドライバを用いて、前記周辺機器を制御するコンピュータと、
複数の機能を有し、各機能に対応するデバイスドライバを介して前記コンピュータから入力される制御信号に従って、前記各機能に対応する処理を実行する周辺機器と、
からなる処理システムにおいて、前記周辺機器を制御するためのデバイスドライバを、前記コンピュータにインストールするための方法であって、
前記周辺機器が前記コンピュータに接続されると、前記複数の機能の内、特定機能についての情報を選択的に記述した機器情報を、前記周辺機器から前記コンピュータに入力することにより、前記周辺機器の接続を、前記特定機能のみを有する周辺機器の接続として、前記コンピュータに検出させる工程と、
前記コンピュータに前記インストールのための専用プログラムを組み込む工程と、
前記コンピュータに前記専用プログラムが組み込まれると、前記周辺機器に、前記複数の機能の通知指示を入力する工程と、
前記通知指示が前記周辺機器に入力されると、前記複数の機能の情報を記述した機器情報を、前記周辺機器から前記コンピュータに入力することにより、前記周辺機器の接続を、前記複数の機能を有する周辺機器の接続として、前記コンピュータに検出させる工程と、
前記コンピュータが前記複数の機能を有する周辺機器の接続を検出すると、前記コンピュータに、前記専用プログラムを用いて、前記周辺機器を制御するためのデバイスドライバを、インストールさせる工程と、
を含むことを特徴とするデバイスドライバのインストール方法。
【請求項２】
前記特定機能は、前記コンピュータが備える汎用のデバイスドライバを用いて、前記周辺機器に、前記特定機能に対応する処理を実行させることが可能な機能であることを特徴とする請求項１記載のデバイスドライバのインストール方法。
【請求項３】
周辺機器の接続を検出すると、前記検出された周辺機器に対応するデバイスドライバを用いて前記周辺機器を制御し、前記検出された周辺機器に対応するデバイスドライバがインストールされていない場合には、その周辺機器に対応するデバイスドライバを外部から取得してインストールするコンピュータ、に接続可能に構成され、
複数の機能を有し、各機能に対応するデバイスドライバを介して前記コンピュータから入力される制御信号に従って、前記各機能に対応する処理を実行する周辺機器であって、
前記コンピュータに接続されると、前記複数の機能の内、特定機能についての情報を選択的に記述した機器情報を、前記コンピュータに入力することにより、当該周辺機器の接続を、前記特定機能のみを有する周辺機器の接続として、前記コンピュータに検出させる第一制御手段と、
前記第一制御手段の動作後、外部から、前記複数の機能の通知指示が入力されると、前記複数の機能の情報を記述した機器情報を、前記コンピュータに入力することにより、当該周辺機器の接続を、前記複数の機能を有する周辺機器の接続として、前記コンピュータに検出させる第二制御手段と、
を備えることを特徴とする周辺機器。
【請求項４】
前記特定機能は、前記コンピュータが汎用のデバイスドライバを用いて、当該周辺機器に、前記特定機能に対応する処理を実行させることが可能な機能であることを特徴とする請求項３記載の周辺機器。
【請求項５】
前記特定機能として、当該周辺機器が有する記憶装置に、前記コンピュータからの入力データを記憶させるストレージ機能を備えることを特徴とする請求項３記載の周辺機器。
【請求項６】
前記第二制御手段は、前記記憶装置に、前記通知指示を表すデータが書込まれると、前記複数の機能の情報を記述した機器情報を、前記コンピュータに入力することを特徴とする請求項５記載の周辺機器。
【請求項７】
前記複数の機能として、前記ストレージ機能と共に、プリンタ機能、スキャナ機能、及び、モデム機能の少なくとも一つを備えることを特徴とする請求項５又は請求項６記載の周辺機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスドライバを介して周辺機器を制御するコンピュータ、及び、複数の機能を有する周辺機器からなるシステムにおいて、周辺機器を制御するためのデバイスドライバを、コンピュータにインストールするための方法、及び、その周辺機器に関する。
【背景技術】
【０００２】
従来より、プラグアンドプレイ機能を有するオペレーティングシステムにて動作するコンピュータが知られている。この種のコンピュータは、周辺機器が接続されると、自動的に、その周辺機器を検出し、検出した周辺機器に対応するデバイスドライバを読み出して、これをオペレーティングシステムに組み込むことにより、周辺機器を制御可能に、自身を構成する。尚、プラグアンドプレイ機能をサポートするインタフェースとしては、ＵＳＢインタフェースや、ＩＥＥＥ１３９４インタフェース等が知られている。その他、プラグアンドプレイ機能を有するオペレーティングシステムとしては、Ｗｉｎｄｏｗｓ（登録商標）等が知られている。
【０００３】
この種のコンピュータは、周辺機器を検出した際に、対応するデバイスドライバが、オペレーティングシステムに登録されていない場合、デバイスドライバインストール用のプログラムであるインストーラを起動して、デバイスドライバのインストールを実行する。インストーラとしては、オペレーティングシステム付属の汎用インストーラ（所謂ウィザード）や、周辺機器と共に、ベンダから提供される専用インストーラが知られている。
【０００４】
コンピュータは、デバイスドライバのインストール時に、デバイスドライバの取得先を理解する必要があるが、汎用インストーラを用いたインストールでは、コンピュータは、利用者に、デバイスドライバの取得先に関する情報を入力させて、その情報に基づき、デバイスドライバの取得先を理解し、デバイスドライバをインストールする。尚、この際、コンピュータは、利用者の決定を優先し、取得先に存在するデバイスドライバが、周辺機器に適合するデバイスドライバであるか否かに拘らず、利用者が決定したデバイスドライバをインストールする。
【０００５】
一方、専用インストーラを用いたインストールでは、専用インストーラがデバイスドライバの取得先に関する情報を有しているため、コンピュータは、この情報に基づき、利用者にデバイスドライバの取得先に関する情報を入力させることなく、デバイスドライバをインストールする。
【０００６】
尚、専用インストーラには、通常、インストール対象のデバイスドライバが付属している。即ち、専用インストーラは、通常、デバイスドライバが記録された記録媒体（リムーバブルメディア）に記録されて、利用者に提供される。このため、専用インストーラを用いたインストールでは、利用者は、簡単に、デバイスドライバをコンピュータにインストールすることができる。
【０００７】
その他、デバイスドライバや専用インストーラを提供する方法としては、デバイスドライバや専用インストーラを、周辺機器本体に記憶させておき、コンピュータと周辺機器との接続時に、これらをコンピュータに提供する方法が知られている（例えば、特許文献１，２参照）。この方法によれば、デバイスドライバのインストール時に、周辺機器とは別に、専用インストーラやデバイスドライバが記録された記録媒体を用意することがないので、利用者にとっては便利である。
【特許文献１】特開２００３−１５０５３０号公報
【特許文献２】特開２００３−２７１３４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来方法では、次のような問題があった。即ち、デバイスドライバはバグ等が発見される度に修正され、最新のものが利用者に対し提供されるが、周辺機器内蔵のメモリ等にデバイスドライバを記憶させておく方法では、製品の出荷直前に、デバイスドライバが更新された場合に、旧バージョンのデバイスドライバが書き込まれた周辺機器に、最新のデバイスドライバを書き込む作業が必要となり、手間がかかるといった問題があった。また、デバイスドライバや専用インストーラを記憶させておくための記憶領域を、周辺機器に用意しなければならないため、製品のコストアップに繋がるといった問題があった。
【０００９】
また、専用インストーラを周辺機器に記憶させず、ＣＤ−ＲＯＭ等のリムーバブルメディアで、専用インストーラを利用者に提供する場合には、専用インストーラがコンピュータに組み込まれる前に、利用者が周辺機器を接続することによって、オペレーティングシステムが汎用インストーラを起動し、これに基づいて利用者がインストール作業を継続してしまうことが原因で、不適切なデバイスドライバがインストールされてしまう場合があった。
【００１０】
不適切なデバイスドライバがインストールされた場合には、適切なデバイスドライバをインストールするために、インストール済の不適切なデバイスドライバをアンインストールする作業が必要になるが、これは、コンピュータに疎い利用者にとって、複雑な作業である。従って、このような場合には、作業が複雑すぎるために、利用者に不快感を及ぼす可能性があった。
【００１１】
本発明は、こうした問題に鑑みなされたものであり、専用インストーラがコンピュータにインストールされるまでは、汎用インストーラが自動で起動しないようにし、周辺機器の接続作業と、専用インストーラのコンピュータへの組み込み作業とが、前後した場合であっても、専用インストーラを用いたインストールが確実に実行されるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
かかる目的を達成するためになされた請求項１記載の発明では、周辺機器の接続を検出すると、検出された周辺機器に対応するデバイスドライバを用いて、その周辺機器を制御するコンピュータと、複数の機能を有し、各機能に対応するデバイスドライバを介してコンピュータから入力される制御信号に従って、各機能に対応する処理を実行する周辺機器と、からなるシステムにおいて、上記複数の機能を有する周辺機器を制御するためのデバイスドライバを、コンピュータにインストールするために、次の方法を採用している。
【００１３】
即ち、本発明では、周辺機器がコンピュータに接続されると、上記複数の機能の内、特定機能についての情報を選択的に記述した機器情報を、周辺機器からコンピュータに入力することにより、上記周辺機器の接続を、特定機能のみを有する周辺機器の接続として、コンピュータに検出させる。また、周辺機器の接続と前後して、コンピュータに上記インストールのための専用プログラムを組み込む。
【００１４】
専用プログラムは、例えば、専用プログラムが格納された記録媒体が、コンピュータから読取可能な状態にされると、コンピュータに組み込まれる。尚、記録媒体には、専用プログラムと共に、デバイスドライバを記録しておくことができる。
【００１５】
また、本発明では、コンピュータに上記専用プログラムが組み込まれると、周辺機器に、複数の機能の通知指示を入力する。その他、通知指示が周辺機器に入力されると、上記複数の機能の情報を記述した機器情報を、周辺機器からコンピュータに入力することにより、周辺機器の接続を、上記複数の機能を有する周辺機器の接続として、コンピュータに検出させる。また、コンピュータが上記複数の機能を有する周辺機器の接続を検出すると、コンピュータに、専用プログラムを用いて、周辺機器を制御するためのデバイスドライバを、インストールさせる。
【００１６】
Ｗｉｎｄｏｗｓ（登録商標）等のオペレーティングシステムにて動作するコンピュータは、周辺機器が接続された際に、デバイスドライバのインストールが必要であると、汎用インストーラ（ウィザード）を起動するが、この場合には、汎用インストーラに基づいて、利用者が、デバイスドライバのインストール作業を行うことにより、デバイスドライバのインストールが、正しく実行されない可能性がある。即ち、汎用インストーラでは、利用者が誤ったデバイスドライバの取得先情報を入力する可能性があり、このような場合には、デバイスドライバのインストールが、正しく実行されない。
【００１７】
これに対し、本発明では、接続された周辺機器のデバイスドライバのインストール専用プログラム（専用インストーラ）が、コンピュータに組み込まれるまで、周辺機器を、特定機能のみを有する機器としてコンピュータに検出させるため、汎用インストーラが起動しない特定機能のみを有する機器として、周辺機器の接続をコンピュータに検出させれば、周辺機器の接続により汎用インストーラが起動することはない。
【００１８】
従って、本発明によれば、専用プログラム（専用インストーラ）をコンピュータに組み込む前に、利用者が、周辺機器をコンピュータに接続した場合にでも、汎用インストーラに基づき、利用者がインストール作業を実行するのを防止することができる。
【００１９】
また、本発明によれば、周辺機器が複数の機能を有する機器として検出される際には、専用プログラム（専用インストーラ）がコンピュータに組み込まれており、この専用プログラム（専用インストーラ）に基づき、デバイスドライバのインストールを、コンピュータに実行させることができるため、周辺機器の接続と、専用プログラム（専用インストーラ）の組み込みとの順序を問わず、専用インストーラにて、デバイスドライバを正しくインストールすることができる。従って、本発明によれば、デバイスドライバのインストールを試みる利用者が、コンピュータに疎い者であっても、デバイスドライバのインストールを正しく完了することができる。
【００２０】
尚、汎用インストーラが起動しない機能としては、コンピュータに組み込まれたオペレーティングシステムが備える汎用のデバイスドライバにて、コンピュータから制御可能な周辺機器の機能が挙げられる。
【００２１】
次に、請求項２記載の発明は、上記特定機能として、コンピュータが備える汎用のデバイスドライバを用いて、周辺機器に特定機能に対応する処理を実行させることが可能な機能を採用したものである。この発明によれば、周辺機器の接続と、専用プログラム（専用インストーラ）の組み込みとの順序を問わず、周辺機器の接続によって汎用インストーラが起動することはないので、専用インストーラにて、正しくデバイスドライバを、インストールすることができる。
【００２２】
また、請求項１，２記載のデバイスドライバのインストール方法を実現するためには、周辺機器を、請求項３記載のように構成するとよい。請求項３記載の発明は、複数の機能を有する周辺機器であって、各機能に対応するデバイスドライバを介してコンピュータから入力される制御信号に従って、各機能に対応する処理を実行する周辺機器に、第一制御手段と、第二制御手段と、を設けたものである。
【００２３】
但し、ここでは、当該周辺機器に接続されるコンピュータが、周辺機器の接続を検出すると、検出された周辺機器に対応するデバイスドライバを用いて周辺機器を制御し、検出された周辺機器に対応するデバイスドライバがインストールされていない場合には、その周辺機器に対応するデバイスドライバを外部から取得してインストールする構成にされていることを前提とする。
【００２４】
この周辺機器が備える第一制御手段は、当該周辺機器がコンピュータに接続されると、複数の機能の内、特定機能についての情報を選択的に記述した機器情報を、コンピュータに入力することにより、当該周辺機器の接続を、特定機能のみを有する機器の接続として、コンピュータに検出させる。また、第二制御手段は、第一制御手段の動作後、外部から、上記複数の機能の通知指示が入力されると、上記複数の機能の情報を記述した機器情報を、コンピュータに入力することにより、当該周辺機器の接続を、複数の機能を有する周辺機器の接続として、コンピュータに検出させる。
【００２５】
尚、上記複数の機能の通知指示は、例えば、コンピュータから入力される。この際には、上記特定機能を、コンピュータ側から制御するための信号を、コンピュータから周辺機器に入力することにより、上記通知指示を、コンピュータから周辺機器に伝達することができる。その他、周辺機器に上記通知指示用のキースイッチを設け、そのキースイッチが操作されると、周辺機器に、上記複数の機能の通知指示が入力されるようにしてもよい。
【００２６】
また、ＵＳＢインタフェース等では、周辺機器を未検出の状態にしないと、再度の機器情報の入力をコンピュータが受け付けないため、このような構成にされたインタフェースに対応させて、本発明の周辺機器を構成する場合には、上記の第二制御手段を、通知指示が入力されると、当該周辺機器を未検出状態にし、その後、複数の機能の情報を記述した機器情報を、コンピュータに入力することにより、当該周辺機器の接続を、複数の機能を有する周辺機器の接続として、コンピュータに検出させる構成にすればよい。
【００２７】
その他、特定機能としては、請求項２と同様、コンピュータが、自身が備える汎用のデバイスドライバを用いて、当該周辺機器に、特定機能に対応する処理を実行させることが可能な機能を採用することが考えられる（請求項４）。また、汎用のデバイスドライバを用いてコンピュータから周辺機器を制御可能な機能としては、周辺機器が有する記憶装置に、コンピュータからの入力データを記憶させるストレージ機能が挙げられる（請求項５）。
【００２８】
また、ストレージ機能を特定機能とする場合には、第二制御手段を、請求項６記載のように構成するとよい。即ち、第二制御手段は、当該周辺機器が有する記憶装置に、通知指示を表すデータが書込まれると、上記複数の機能の情報を記述した機器情報を、コンピュータに入力する構成にされるとよい。この発明によれば、コンピュータから簡単に、通知指示を周辺機器に入力することができる。
【００２９】
その他、この発明によれば、ストレージ機能を用いて通知指示の入力を実現することができるので、ストレージ機能を有する様々な周辺機器に、本発明のインストール方法を適用することができる。
【００３０】
また、請求項５，６記載の発明は、複数の機能として、ストレージ機能と共に、プリンタ機能、スキャナ機能、及び、モデム機能の少なくとも一つを備える周辺機器に適用されるとよい。特に、周辺機器が、ストレージ機能と共に、プリンタ機能、スキャナ機能、及び、モデム機能のうち、二以上を含む構成にされた多機能装置である場合には、インストールするデバイスドライバの数が多く、汎用インストーラ（ウィザード）を用いたインストールでは、そのインストールを正常に完了することができない可能性が高くなるので、本発明は、非常に有効である。
【００３１】
尚、請求項６記載の周辺機器を用いて、本発明のデバイスドライバのインストール方法を実現する場合には、上述した専用プログラムを、請求項６記載の周辺機器が有する記憶装置に通知指示を表すデータを書込む手順と、複数の機能を有する周辺機器の接続が検出されると、デバイスドライバをインストールする手順と、をコンピュータに実行させるためのプログラムとして構成すればよい。その他、専用プログラム及びデバイスドライバは、専用プログラムと、周辺機器を制御するためのデバイスドライバと、を記録した記録媒体（ＣＤ−ＲＯＭ等のリムーバブルメディア）によって、利用者に提供されるとよい。
【発明を実施するための最良の形態】
【００３２】
以下に本発明の実施例について、図面と共に説明する。図１は、本発明が適用されたパーソナルコンピュータ（以下、「ＰＣ」とする。）１０と、周辺機器としての多機能装置（ＭＦＤ）３０と、からなる情報処理システム１の構成を表すブロック図である。
【００３３】
本実施例のＰＣ１０は、各種演算処理を行うＣＰＵ１１と、プログラム等を記憶するＲＯＭ１２と、一時記憶領域として利用されるＲＡＭ１３と、周辺機器を接続可能なインタフェース（ハードウェアインタフェース）１４と、表示装置１６（ディスプレイ等）と、入力装置１７（キーボードやマウス等）と、ハードディスク装置（ＨＤＤ）１８と、リムーバブルメディア（ＣＤ−ＲＯＭ２０）に記録されたデータを読取可能なメディアドライブ１９と、を備える。
【００３４】
ハードディスク装置１８には、ＰＣ１０を運営するためのオペレーティングシステム（ＯＳ）であって、プラグアンドプレイ機能を有するＯＳ２１（図２参照）が記憶されており、ＰＣ１０は、電源投入後、ＯＳ２１を実行し、このＯＳ２１に従って動作する。また、インタフェース１４は、周辺機器を接続可能なインタフェースとして、ＵＳＢ（Universal SerialBus）インタフェースや、ＩＥＥＥ１３９４インタフェース等から構成される。
【００３５】
一方、インタフェース１４に接続される多機能装置３０は、制御回路３１と、スキャナ装置３３と、プリンタ装置３５と、モデム装置３７と、ストレージ装置３９と、を備える。制御回路３１は、各種演算処理を行うＣＰＵ４１と、プログラム等を記憶するＲＯＭ４２と、一時記憶領域として利用されるＲＡＭ４３と、インタフェース１４と同規格のインタフェース（ハードウェアインタフェース）４５と、を備え、インタフェース４５は、通信ケーブルＬＮを介して、ＰＣ１０のインタフェース１４と通信可能に接続される。
【００３６】
この制御回路３１は、ＰＣ１０から、インタフェース４５を介して受信した制御信号に従い、スキャナ装置３３、プリンタ装置３５、モデム装置３７、及び、ストレージ装置３９を動作させる。スキャナ装置３３は、ＰＣ１０からの制御信号に従って、多機能装置３０のプラテンガラス（図示せず）に載置された原稿を画像データとして読み取り、これを、例えば、インタフェース４５を介してＰＣ１０に送信する。また、プリンタ装置３５は、ＰＣ１０からの制御信号に従って、ＰＣ１０からインタフェース４５を介して入力された印刷データ（ＰＤＬデータ）に基づく画像を、記録紙に形成する。
【００３７】
その他、モデム装置３７は、公衆電話回線網に接続された外部のファクシミリ装置と、ファクシミリ通信するための装置であり、外部のファクシミリ装置に対する送信データや、外部のファクシミリ装置から受信した受信データを、インタフェース４５を介してＰＣ１０と送受信する。
【００３８】
また、ストレージ装置３９は、フラッシュメモリ等からなる記憶装置として構成され、書込指令と共にＰＣ１０からインタフェース４５を介して送信されてきたデータを記憶する。また、多機能装置３０は、インタフェース４５を介してＰＣ１０から入力される制御信号（読出指令）に従って、ストレージ装置３９が記憶するデータを読出し、これを、インタフェース４５を介してＰＣ１０に送信する。
【００３９】
尚、多機能装置３０は、スキャナ装置３３、プリンタ装置３５、モデム装置３７、及び、ストレージ装置３９に対する制御信号を、物理的には単一のインタフェース４５を介してＰＣ１０から受信するが、各装置（スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９）毎に、論理インタフェースを有し、ＰＣ１０と各装置との間の送受信を、個別の論理インタフェースを用いて実現する。
【００４０】
ところで、本実施例のＰＣ１０は、インタフェース１４に周辺機器（多機能装置３０）が接続されると、その接続を検出し、検出された周辺機器に対応するデバイスドライバを、レジストリ２２（図２参照）の登録情報に基づき、ハードディスク装置１８から読出し、この周辺機器をデバイスドライバを介して制御可能に、自装置を構成する。また、検出された周辺機器に対応するデバイスドライバがレジストリ２２に登録されていない場合には、その周辺機器に対応するデバイスドライバを外部から取得してインストールする。
【００４１】
図２は、ＰＣ１０のＣＰＵ１１が実行する処理により、ＰＣ１０にて実現される各機能を表す機能ブロック図である。
ＰＣ１０は、インタフェース１４に周辺機器（多機能装置３０）が接続されると、その接続を検出する接続検出部２３としての機能を有し、接続検出部２３にて接続が検出されると、プラグアンドプレイ処理部２４を作動させる。接続検出部２３及びプラグアンドプレイ処理部２４は、例えば、ＵＳＢ規格に適合するように構成される。
【００４２】
ＵＳＢ規格の場合、接続検出部２３は、インタフェース１４（具体的には信号線）の通電を検知する構成にされており、インタフェース１４に周辺機器が接続されることにより通電が開始されて信号線の電圧がゼロから所定値に変化すると、周辺機器の接続を検出する。プラグアンドプレイ処理部２４は、接続検出部２３が周辺機器の接続を検出すると、接続された周辺機器を識別するための機器情報（所謂ディスクリプタ）の要求信号を、インタフェース１４を介して周辺機器に入力する。
【００４３】
ＵＳＢ規格の周辺機器（多機能装置３０）は、機器情報の要求信号を受信すると、機器のＩＤや、インタフェース（論理インタフェース）の数、インタフェース（論理インタフェース）のクラスを示すインタフェースクラスコード等が記述された機器情報を、応答信号として、要求元装置（ＰＣ１０）に送信する。尚、インタフェースクラスコードとしては、マスストレージ（ストレージ装置）用のクラスコード等、標準的なインタフェースについて予め定められたコードや、ベンダにより特徴付けられたインタフェースであることを示すコード等が送信される。
【００４４】
ＰＣ１０のプラグアンドプレイ処理部２４は、この機器情報を、インタフェース１４を介して周辺機器（多機能装置３０）から受信すると、機器情報が示すインタフェース（論理インタフェース）毎に、それに対応する装置（多機能装置３０の場合には、スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９のいずれか）を検出し、検出された装置に対応するデバイスドライバがレジストリ２２に登録されているか否かを判断する。そして、レジストリ２２に登録されていると判断すると、レジストリ２２に登録されているデバイスドライバを用いて、周辺機器が内蔵する該当装置を制御可能に、ＰＣ１０を構成する。
【００４５】
例えば、マスストレージに対応するデバイスドライバは、汎用のデバイスドライバとして、Ｗｉｎｄｏｗｓ（登録商標）等のＯＳ２１に初期から組み込まれているため、プラグアンドプレイ処理部２４は、インタフェースクラスコードとして、マスストレージ用のクラスコードが通知された場合、デバイスドライバは既にレジストリ２２に登録されていると判断して、マスストレージに対応する既存のデバイスドライバを用い、周辺機器が内蔵する該当装置（ストレージ装置）を制御可能に、ＰＣ１０を構成する。
【００４６】
一方、インタフェースクラスコードが、ベンダにより特徴付けられたインタフェースであることを示すコードである場合には、周辺機器の制御に、専用のデバイスドライバが必要になるが、対応するデバイスドライバがレジストリ２２に登録されていない場合、プラグアンドプレイ処理部２４は、上記接続された周辺機器（デバイスドライバがレジストリ２２に登録されていない周辺機器）を、不明な周辺機器として検出し、インストール処理部２５を作動させる。
【００４７】
インストール処理部２５は、デバイスドライバをＯＳ２１にインストールするためのものであり、デバイスドライバの取得先情報（パス情報）を外部から取得し、この取得先情報に基づいて、デバイスドライバを取得して、ＯＳ２１内にインストールする。
【００４８】
具体的には、外部から取得したデバイスドライバを、ＯＳ２１が管理するファイルシステムの特定場所（デバイスドライバの保存場所として定められたフォルダ）に保存すると共に、レジストリ２２へ登録されるべき情報が記述されたデータファイル（所謂ＩＮＦファイル）に基づき、レジストリ２２に、デバイスドライバと周辺機器との対応関係を示す情報を登録し、インストールを完了する。
【００４９】
このインストール処理部２５には、対話式で、利用者からデバイスドライバの取得先情報を取得するためのウィザード２５ａが組み込まれており、起動時にウィザード２５ａを動作させて、利用者から、デバイスドライバの取得先情報を取得する。但し、インストール処理部２５は、専用インストーラがＰＣ１０にインストールされている場合、その専用インストーラによって作動が規制される。
【００５０】
尚、専用インストーラは、通常、周辺機器と共にベンダにより提供される。専用インストーラは、周辺機器専用のインストーラであって、周辺機器専用のデバイスドライバを、ＯＳ２１にインストールするためのプログラムである。一般的に、専用インストーラは、ＰＣ１０が読取可能なリムーバブルメディアに記録されて利用者に提供される。
【００５１】
本実施例のＰＣ１０は、多機能装置３０についての専用インストーラ２７及びデバイスドライバが記録されたリムーバブルメディアとしてのＣＤ−ＲＯＭ２０がメディアドライブ１９に装着されると、ＣＰＵ１１によりメディアドライブ１９を制御して、専用インストーラ２７をＣＤ−ＲＯＭ２０から読み出し、ＣＰＵ１１に専用インストーラ２７を実行させる。
【００５２】
図３は、専用インストーラ２７により実現される専用ドライバインストール処理を表すフローチャートである。ＣＰＵ１１は、専用インストーラ２７を実行すると、ＣＤ−ＲＯＭ２０に記録された多機能装置３０専用のデバイスドライバを、ＣＤ−ＲＯＭ２０から読み出し、ハードディスク装置１８の一時格納領域に書き込むなどして、インストールの準備を行う（Ｓ１１０）。
【００５３】
尚、本実施例においては、多機能装置３０専用のデバイスドライバとして、ＣＤ−ＲＯＭ２０に、スキャナ装置３３専用のデバイスドライバと、プリンタ装置３５専用のデバイスドライバと、モデム装置３７専用のデバイスドライバと、が格納されている。ストレージ装置３９は、スキャナ装置３３及びプリンタ装置３５及びモデム装置３７とは異なり、ＯＳ２１が標準で装備する汎用のデバイスドライバによりＰＣ１０から制御可能であるので、ＣＤ−ＲＯＭ２０には、ストレージ装置３９用のデバイスドライバは記録されていない。
【００５４】
Ｓ１１０での処理を終えると、ＣＰＵ１１は、ＣＤ−ＲＯＭ２０に記録されている能力変更用プログラムを読み出して、これをインストールする（Ｓ１２０）。この際、能力変更用プログラムは、ＯＳ２１の動作中には継続して動作する常駐プログラムとして、ＰＣ１０にインストールされる。この後、ＣＰＵ１１は、能力変更用プログラムを、並列実行する（Ｓ１３０）。
【００５５】
Ｓ１３０での処理を終えると、ＣＰＵ１１は、多機能装置３０の接続を利用者に促すためのメッセージを、表示装置１６に表示し（Ｓ１３５）、その後、接続検出部２３及びプラグアンドプレイ処理部２４の動作により、多機能装置３０について、不明な周辺機器の接続が検出されたか否かを判断する（Ｓ１４０）。そして、不明な周辺機器の接続が検出されていないと判断すると（Ｓ１４０でＮｏ）、インストール作業の中断指令が入力装置１７から入力されたか否かを判断し（Ｓ１５０）、中断指令が入力されていないと判断すると（Ｓ１５０でＮｏ）、Ｓ１４０に移行する。
【００５６】
即ち、ＣＰＵ１１は、多機能装置３０について、不明な周辺機器（スキャナ装置３３、プリンタ装置３５、モデム装置３７）の接続が検出されるか、中断指令が入力されるまで待機し、中断指令が入力されると（Ｓ１５０でＹｅｓ）、Ｓ１５５にて、当該専用ドライバインストール処理の中断処理を実行し、その後、専用ドライバインストール処理を終了する。
【００５７】
一方、多機能装置３０について、不明な周辺機器の接続が検出されると（Ｓ１４０でＹｅｓ）、ＣＰＵ１１は、Ｓ１１０でハードディスク装置１８の一時格納領域に書き込んだデバイスドライバ（スキャナ装置３３専用のデバイスドライバ、プリンタ装置３５専用のデバイスドライバ、モデム装置３７専用のデバイスドライバ）を、ＯＳ２１にインストールする（Ｓ１６０）。
【００５８】
インストールの際には、デバイスドライバと共にＳ１１０にて一時格納領域に書き込まれたレジストリ２２へ登録されるべき内容を示すデータファイル（ＩＮＦファイル）に基づいて、レジストリ２２に、各デバイスドライバ（スキャナ装置３３専用のデバイスドライバ、プリンタ装置３５専用のデバイスドライバ、モデム装置３７専用のデバイスドライバ）と、多機能装置３０（具体的には、機器情報で通知された各インタフェース）との対応関係を登録する。
【００５９】
また、ハードディスク装置１８の一時格納領域に書き込んだ各デバイスドライバ（スキャナ装置３３専用のデバイスドライバ、プリンタ装置３５専用のデバイスドライバ、モデム装置３７専用のデバイスドライバ）を、ＯＳ２１が管理するファイルシステムの特定場所に書き込んで、各デバイスドライバのインストールを完了させる。その後、当該専用ドライバインストール処理（専用インストーラ２７）を終了する。
【００６０】
この後、ＰＣ１０は、利用者の操作により入力装置１７から入力される指令等に従い、スキャナ装置３３専用のデバイスドライバを用いてスキャナ装置３３を制御し、プリンタ装置３５専用のデバイスドライバを用いてプリンタ装置３５を制御し、モデム装置３７専用のデバイスドライバを用いてモデム装置３７を制御し、マスストレージに関する汎用デバイスドライバを用いて、ストレージ装置３９を制御する。
【００６１】
続いて、ＣＰＵ１１が、能力変更用プログラムを実行することにより、実現される能力変更処理について説明する。図４は、ＣＰＵ１１が、能力変更用プログラムにて、繰り返し実行する能力変更処理を表すフローチャートである。
【００６２】
ＣＰＵ１１は、能力変更用プログラムを実行すると、多機能装置３０内蔵のストレージ装置３９が検出されるまで待機し（Ｓ２１０）、ストレージ装置３９がプラグアンドプレイ処理部２４にて検出されると（Ｓ２１０でＹｅｓ）、汎用デバイスドライバを用いてストレージ装置３９にアクセスし、ストレージ装置３９に、能力変更を指示するための指示データが書き込まれているか否かを判断する（Ｓ２２０）。そして、指示データが書き込まれていると判断すると（Ｓ２２０でＹｅｓ）、当該能力変更処理を終了する。
【００６３】
一方、指示データが書き込まれていないと判断すると、ＣＰＵ１１は、汎用デバイスドライバを用いてストレージ装置３９を制御し、ストレージ装置３９に、指示データを書き込む（Ｓ２３０）。その後、当該能力変更処理を終了する。尚、能力変更用プログラムは、多機能装置３０が図５に示すように動作することから、デバイスドライバのインストールが終了した後も、ＯＳ２１が起動される度に、常駐プログラムとして動作する。
【００６４】
続いて、多機能装置３０の制御回路３１が実行する能力通知処理について説明する。図５は、制御回路３１が実行する能力通知処理を表すフローチャートである。能力通知処理は、多機能装置３０がインタフェース１４に接続されて起動すると、制御回路３１（具体的にはＣＰＵ４１）により実行される。
【００６５】
制御回路３１は、能力通知処理を実行すると、ストレージ装置３９にアクセスして、ストレージ装置３９内に、上記した指示データが書き込まれているか否かを判断し（Ｓ３１０）、指示データが書き込まれていないと判断すると（Ｓ３１０でＮｏ）、Ｓ３３０に移行し、指示データが書き込まれていると判断すると（Ｓ３１０でＹｅｓ）、ストレージ装置３９に記憶されている指示データを削除（Ｓ３２０）した後に、Ｓ３３０に移行する。
【００６６】
Ｓ３３０に移行すると、制御回路３１は、機器情報（ディスクリプタ）の要求信号をインタフェース４５を介してＰＣ１０から受信するまで待機し、機器情報の要求信号をＰＣ１０から受信すると（Ｓ３３０でＹｅｓ）、要求信号に対する応答信号として、インタフェース（論理インタフェース）の数を記述した構成ディスクリプタや、インタフェースクラスコードを記述したインタフェースディスクリプタ等の機器情報を、インタフェース４５を介しＰＣ１０に送信する（Ｓ３４０）。
【００６７】
但し、Ｓ３４０の処理では、インタフェースの数を「１」とし、インタフェースクラスコードを「マスストレージ」を表すコードとして、上記機器情報を、ＰＣ１０に送信する。従って、この応答信号（機器情報）を受信するプラグアンドプレイ処理部２４は、多機能装置３０を、ストレージ装置３９のみを有する周辺機器として検出する。換言すると、この時点では、ＰＣ１０において、不明な周辺機器の接続は、検出されない。
【００６８】
Ｓ３４０での処理を終えると、制御回路３１は、ＰＣ１０で実行される能力変更用プログラムにより、能力変更を指示する上記の指示データがストレージ装置３９に書き込まれるまで待機し（Ｓ３５０）、指示データがストレージ装置３９に書き込まれると（Ｓ３５０でＹｅｓ）、インタフェース４５の信号線を、非通電の状態にすることにより、インタフェース１４とインタフェース４５とを電気的に非接続の状態にし、所定時間（１秒程）待機する（Ｓ３６０）。
【００６９】
その後、制御回路３１は、インタフェース４５の信号線を通電可能な状態にすることにより、インタフェース１４とインタフェース４５との電気的接続を復帰させる（Ｓ３７０）。このようにして、インタフェース１４とインタフェース４５との電気的接続を一旦解除し（Ｓ３６０）、その後に復帰させると（Ｓ３７０）、ＰＣ１０側では、接続検出部２３が、再び周辺機器（多機能装置３０）の接続を検出して、プラグアンドプレイ処理部２４が動作し、インタフェース１４を通じて、ＰＣ１０から多機能装置３０に、再び、機器情報（ディスクリプタ）の要求信号が送信されてくる。
【００７０】
制御回路３１は、この要求信号を、インタフェース４５を介してＰＣ１０から受信するまで待機し（Ｓ３８０）、機器情報の要求信号を受信すると（Ｓ３８０でＹｅｓ）、当該多機能装置３０がスキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９を備えた周辺機器であることを示す機器情報を生成し、これを応答信号として、インタフェース４５を介しＰＣ１０に送信する（Ｓ３９０）。
【００７１】
即ち、制御回路３１は、インタフェースの数を「４」とした構成ディスクリプタ、具体的には、スキャナ装置３３のインタフェースクラスコードを記述したインタフェースディスクリプタ、プリンタ装置３５のインタフェースクラスコードを記述したインタフェースディスクリプタ、モデム装置３７のインタフェースクラスコードを記述したインタフェースディスクリプタ、ストレージ装置３９のインタフェースクラスコードを記述したインタフェースディスクリプタを、機器情報として生成し、これをＰＣ１０に送信する（Ｓ３９０）。その後、当該能力通知処理を終了する。
【００７２】
Ｓ３９０で多機能装置３０から機器情報を受信すると、プラグアンドプレイ処理部２４は、多機能装置３０の接続を、スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９としての機能を有する周辺機器の接続として検出する。そして、スキャナ装置３３、プリンタ装置３５、モデム装置３７についてのデバイスドライバのインストールが終了していない場合には、不明な周辺機器が、プラグアンドプレイ処理部２４にて検出され、これにより、専用デバイスドライバインストール処理を実行するＣＰＵ１１が、Ｓ１６０に移行し、スキャナ装置３３専用のデバイスドライバ、プリンタ装置３５専用のデバイスドライバ、及び、モデム装置３７専用のデバイスドライバを、ＯＳ２１にインストールする。
【００７３】
以上に、ＰＣ１０及び多機能装置３０の構成及び動作について説明したが、ＰＣ１０及び多機能装置３０の本発明に係る特徴的動作を時系列でまとめると、図６に示すようになる。図６は、本発明に係るＰＣ１０及び多機能装置３０の特徴的動作を示した図である。
【００７４】
本実施例の情報処理システム１では、多機能装置３０がＰＣ１０に接続されると、ＰＣ１０側で、周辺機器（多機能装置３０）の接続が検出され、機器情報の要求信号が、ＰＣ１０から多機能装置３０へと送信される。
【００７５】
この要求信号を受信すると、多機能装置３０は、自身が備える複数の機能（スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９としての機能）のうち、ストレージ装置３９についての情報を選択的に記述した機器情報を、ＰＣ１０に送信する（Ｓ３４０）。即ち、インタフェースの数を「１」とした構成ディスクリプタ、及び、インタフェースクラスコードを「マスストレージ」としたストレージ装置３９についてのインタフェースディスクリプタを、機器情報として、ＰＣ１０に送信する。これにより、ＰＣ１０では、多機能装置３０の接続が、ストレージ装置３９としての機能のみを有する周辺機器の接続として、検出（認識）される。
【００７６】
尚、ＰＣ１０に、多機能装置３０の接続を、ストレージ装置３９としての機能のみを有する周辺機器の接続として、検出させる手順は、ＰＣ１０に、スキャナ装置３３、プリンタ装置３５、モデム装置３７についての専用デバイスドライバがインストールされているか否かに拘らず実行される。
【００７７】
ここでは、スキャナ装置３３、プリンタ装置３５、モデム装置３７についての専用デバイスドライバがインストールされておらず、これらのデバイスドライバをインストールするための専用インストーラ２７を記録したＣＤ−ＲＯＭ２０が、一度も、ＰＣ１０に装着されていないものとする。
【００７８】
本実施例の場合には、専用インストーラ２７がＰＣ１０にて実行されない限り、ＰＣ１０では、ストレージ装置３９のみが検出され、他の装置、即ち、スキャナ装置３３、プリンタ装置３５、モデム装置３７が検出されることはない。このため、ＰＣ１０を、スキャナ装置３３、プリンタ装置３５、モデム装置３７を制御可能に構成するためには、専用インストーラ２７が格納されたＣＤ−ＲＯＭ２０を、メディアドライブ１９に装着して、ＣＰＵ１１に、ＣＤ−ＲＯＭ２０内の専用インストーラ２７を読み出させ、専用インストーラ２７を実行させる。
【００７９】
専用インストーラ２７がＣＰＵ１１により実行されると、能力変更用プログラムが実行されて、ストレージ装置３９を制御可能な汎用デバイスドライバを介し、指示データの書込指令が、ＰＣ１０から多機能装置３０に入力され、これにより、上記の指示データが、ストレージ装置３９に書き込まれる（Ｓ２３０）。
【００８０】
指示データがストレージ装置３９に書き込まれると、多機能装置３０は、インタフェース１４とインタフェース４５との電気的接続を、一旦解除し、その後、復帰させる。これにより、ＰＣ１０側では、再度、周辺機器（多機能装置３０）の接続が検出され、機器情報の要求信号が、ＰＣ１０から多機能装置３０へと送信される。
【００８１】
この要求信号（２回目の要求信号）を受信すると、多機能装置３０は、自身が備える複数の機能（スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９としての機能）についての情報を記述した機器情報を、ＰＣ１０に送信する（Ｓ３９０）。即ち、インタフェースの数を「４」とした構成ディスクリプタ、及び、スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９についてのインタフェースディスクリプタを、機器情報として、ＰＣ１０に送信することにより、ＰＣ１０に多機能装置３０の接続を、スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９としての機能を有する周辺機器の接続として、検出（認識）させる。
【００８２】
ＰＣ１０は、スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９を検出（認識）した際、既に、スキャナ装置３３、プリンタ装置３５及びモデム装置３７についてのデバイスドライバがインストールされている場合には、スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９を、各装置に対応するデバイスドライバを用いて制御可能に、自身を構成する。
【００８３】
一方、デバイスドライバがインストールされていない場合には、ＣＰＵ１１に、専用インストーラ２７のＳ１６０の処理を実行させることにより、スキャナ装置３３、プリンタ装置３５及びモデム装置３７についての専用デバイスドライバのインストールを実行する。これにより、ＰＣ１０は、スキャナ装置３３、プリンタ装置３５、モデム装置３７及びストレージ装置３９を、各装置に対応するデバイスドライバを用いて制御可能に構成される。
【００８４】
Ｗｉｎｄｏｗｓ（登録商標）等のＯＳにて動作するコンピュータは、周辺機器が接続された際に、デバイスドライバのインストールが必要であると、ウィザード２５ａを起動するが、この場合には、ウィザード２５ａに基づいて、利用者が、デバイスドライバのインストール作業を行うことにより、デバイスドライバのインストールが正しく実行されない可能性がある。
【００８５】
これに対し、本実施例では、接続された周辺機器（多機能装置３０）のデバイスドライバのインストール専用プログラム（専用インストーラ２７）が、ＰＣ１０に組み込まれる（実行される）まで、周辺機器（多機能装置３０）を、専用デバイスドライバを必要とせず、ＰＣ１０に組み込まれたＯＳ２１が備える汎用デバイスドライバを用いて制御可能な特定機能（ストレージ装置３９）のみを有する機器としてＰＣ１０に検出させるため、周辺機器（多機能装置３０）の接続によりウィザード２５ａが起動することはない。
【００８６】
従って、本実施例によれば、専用インストーラ２７を、ＰＣ１０に組み込む前に、利用者が、周辺機器（多機能装置３０）をＰＣ１０に接続した場合にでも、ウィザード２５ａに基づき、利用者がインストール作業を実行するのを防止することができる。
【００８７】
また、本実施例によれば、多機能装置３０が不明な機器として検出される際には、専用インストーラ２７がＰＣ１０に組み込まれているため、専用インストーラ２７を用いて、確実に、デバイスドライバのインストールを、ＣＰＵ１１に実行させることができる。
【００８８】
即ち、本実施例によれば、周辺機器（多機能装置３０）の接続と、専用インストーラ２７の組み込みとの順序を問わず、専用インストーラ２７にて、デバイスドライバを正しくインストールすることができ、利用者が、コンピュータに疎い者であっても、デバイスドライバのインストールを正しく完了することができる。
【００８９】
特に、本実施例の多機能装置３０は、ストレージ機能と共に、プリンタ機能、スキャナ機能、及び、モデム機能を有し、計４つの機能を有するので、インストールするデバイスドライバの数が多く、ウィザード２５ａを用いたインストールでは、そのインストールを正常に完了することができない可能性が高いので、上記の手法は、非常に有効である。
【００９０】
その他、本実施例によれば、ストレージ装置３９に指示データを書き込むことにより、能力変更の指示、即ち、複数機能の通知指示を、ＰＣ１０から多機能装置３０に入力しているので、通知指示に係る装置の構成を簡単にすることができ、大変便利である。
【００９１】
尚、本発明の周辺機器が備える第一制御手段は、制御回路３１が実行するＳ３３０〜Ｓ３４０の処理にて実現されており、第二制御手段は、Ｓ３５０〜Ｓ３９０の処理にて実現されている。
【００９２】
また、本発明のデバイスドライバのインストール方法及び周辺機器は、上記実施例に限定されるものではなく、種々の態様を採ることができる。
上記実施例では、インタフェース１４及びインタフェース４５が、ＵＳＢインタフェースである例を挙げて、情報処理システム１の構成を説明したが、例えば、ＩＥＥＥ１３９４インタフェースを用いた情報処理システムに、本発明を適用してもよい。
【図面の簡単な説明】
【００９３】
【図１】本実施例の情報処理システム１の構成を示したブロック図である。
【図２】ＰＣ１０にて実現される各機能の構成を表す機能ブロック図である。
【図３】専用インストーラ２７により実現される専用ドライバインストール処理を表すフローチャートである。
【図４】ＣＰＵ１１が能力変更用プログラムにて実行する能力変更処理を表すフローチャートである。
【図５】制御回路３１が実行する能力通知処理を表すフローチャートである。
【図６】ＰＣ１０及び多機能装置３０の特徴的動作を示した説明図である。
【符号の説明】
【００９４】
１…情報処理システム、１０…ＰＣ、１１，４１…ＣＰＵ、１２，４２…ＲＯＭ、１３，４３…ＲＡＭ、１４，４５…インタフェース、１６…表示装置、１７…入力装置、１８…ハードディスク装置、１９…メディアドライブ、２０…ＣＤ−ＲＯＭ、２１…ＯＳ、２２…レジストリ、２３…接続検出部、２４…プラグアンドプレイ処理部、２５…インストール処理部、２５ａ…ウィザード、２７…専用インストーラ、３０…多機能装置、３１…制御回路、３３…スキャナ装置、３５…プリンタ装置、３７…モデム装置、３９…ストレージ装置、ＬＮ…通信ケーブル
【図１】
2006092435.tif 000003
【図２】
2006092435.tif 000004
【図３】
2006092435.tif 000005
【図４】
2006092435.tif 000006
【図５】
2006092435.tif 000007
【図６】
2006092435.tif 000008