説明

インストール方法および記録媒体

【課題】インストールの中断したハードウェアデバイスのインストールを実行させる。
【解決手段】接続されたハードウェアデバイス150が新規であるときに新規のハードウェアデバイス150を検出した旨を示す検出済情報140を情報処理装置110に格納して、次いで、ハードウェアデバイス150を制御するデバイスドライバ132を情報処理装置110内で検索して、ハードウェアデバイス150およびデバイスドライバ132を関連付けたデバイス情報を生成して情報処理装置110に格納するインストール処理が実装されたオペレーティングシステム120に対して、ハードウェアのインストールを実行するインストール方法であって、ハードウェアデバイス150について検出済情報140が既に格納されている場合に、検出済情報140を初期化してオペレーティングシステム120にインストール処理を起動させる初期化手順を含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はインストール方法および記録媒体に関する。より詳細には、情報処理装置内のオペレーティングシステム(以下、「OS」と記載する)から新規なハードウェアデバイスを利用できる状態にするまでのインストール方法と、その方法を実行するプログラムを格納した記録媒体に関する。
【背景技術】
【0002】
パーソナルコンピュータ等の汎用情報処理装置に対して、用途に応じて種々のハードウェアデバイスが新規に接続される場合がある。このような場合に、その情報処理装置の動作を制御しているOSからハードウェアデバイスを適切に制御して利用できる状態にする一連の作業を本明細書では「インストール」と記載する。
【0003】
ハードウェアデバイスが新たに情報処理装置にインストールされる場合に、ハードウェア上のインストールとソフトウェア上のインストールとが行われる。ハードウェア上のインストールは、情報処理装置とハードウェアデバイスとを規格に従って物理的に接続して、両者の間で信号を送受信できる状態にする作業である。一方、ソフトウェア上のインストールは、それぞれのハードウェアデバイスに固有のデバイスドライバと呼ばれるファイルを情報処理装置に格納すると共に、個別のデバイスドライバ、OSおよびハードウェアを相互に関係付ける設定情報を情報処理内に格納する作業である。
【0004】
ハードウェア上の接続は、有線と無線とがあるが、例えば有線の場合、物理的に嵌合するコネクタを用いてハードウェアデバイスと情報処理装置とが接続される。一方、ソフトウェア上のインストールは、デバイスドライバのファイルを情報処理装置内に格納すること、情報処理装置に新規なハードウェアを認識させること、状況に応じた設定情報を生成して情報処理装置に格納すること、等の作業を、OS上で情報処理装置を操作することにより行われる。
【0005】
上記のようなソフトウェア上のインストールの一連の作業を正しい順序で実行するには、情報処理装置を操作するユーザに専門的な知識が要求される。また、ユーザに知識があっても操作を誤る場合もある。そこで、一部のOSには、新規なハードウェアデバイスが物理的に接続されたときに、これを自動的に検出してソフトウェア上の適切なインストール作業を支援する支援プロセスを起動するワークフレームが実装されている。このようなワークフレームは一般に「プラグアンドプレイ(Plug and Play、以下、「PnP」と記載する)」と呼ばれている。
【0006】
このPnPプロセスは、情報処理装置の外部インターフェースを定期的に監視している。そして、OSにまだインストールされていないハードウェアデバイスが検出された場合に、当該ハードウェアデバイスと通信してそのハードウェアデバイスを特定する。更に、そのハードウェアデバイスを利用するために用いられるデバイスドライバを所定のディレクトリに格納する等、ソフトウェア上のインストールを支援するプログラムを起動する。このプログラムは、インストール作業の各段階においてユーザの確認を受け付け、所定の処理の段階を漏れなく実行することによりインストール作業を完了させる。
【0007】
下記特許文献1には、情報処理装置の状況に応じて異なる処理を起動するインストール制御方法が記載されている。これにより、情報処理装置の既存の状態を把握できていないユーザに対して、適切なインストールプログラムを起動して、適切な処理を実行させることができる。また、下記特許文献2には、インストールしようとするプリンタがPnP対応かどうかによって、異なるプロセスにインストール処理を分岐させることができるインストール方法が記載されている。
【特許文献1】特開2003−114799号公報
【特許文献2】特開2003−216378号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
前記したPnPは、OSに実装された特定のプロセスである。一方、デバイスドライバはハードウェアデバイス毎に異なり、更に、OS上でのデバイスドライバの振る舞いも多肢にわたる。このため、ハードウェアデバイスによってはPnPでは正しいインストールができないデバイスドライバを使用する場合がある。また、インストール作業の途中で、ユーザの何らかの都合で処理を中断させる場合もある。そこで、PnPのプロセスには、PnPを中断させる指示を受け付けるインターフェースが実装されている。
【0009】
一方、PnP以外のプロセスでデバイスドライバをインストールした場合、OS側にはデバイスドライバをインストールした記録が残らない。このため、OSが当該デバイスドライバに係るハードウェアデバイスを検出する毎にPnPプロセスを起動してしまうことになり、ユーザはその度にPnPプロセスを中断させる操作をしなければならなくなる。そこで、このような不都合を回避するために、特殊なデバイスドライバを用いる特定のハードウェアデバイスに対しては、当該ハードウェアデバイスを検出してもPnPプロセスを起動させないPnP禁止設定ができる選択項目を、前記PnPを中断させるインターフェースに設けている。
【0010】
しかしながら、PnPプロセスで処理されるべきデバイスドライバのインストールが、他の理由で中断された場合でも、誤ってPnP禁止が設定されてしまう場合がある。このような場合、当然にそのデバイスドライバに対応したハードウェアデバイスは利用できない。また、ユーザが使用できないハードウェアデバイスのデバイスドライバをインストールしなければならないことに気づいたとしても、PnPはOSが自動的に起動するプロセスなので、いったん禁止を設定されたPnPプロセスを再開あるいは再起動する手だてがない。従って、ユーザにはデバイスドライバをインストールすることができない。
【課題を解決するための手段】
【0011】
そこで、本発明の第1の形態として、情報処理装置に対して外部からハードウェアデバイスが接続された場合に、ハードウェアデバイスが新規であるときに新規のハードウェアデバイスを検出した旨を示す検出済情報を情報処理装置に格納して、次いで、ハードウェアデバイスを制御するデバイスドライバとハードウェアデバイスとを関連付けたデバイス情報を生成して情報処理装置に格納するインストール処理が実装されたオペレーティングシステムに対して、ハードウェアのインストールを実行するインストール方法であって、ハードウェアデバイスについて検出済情報が既に格納されている場合に、検出済情報を初期化してオペレーティングシステムにインストール処理を起動させる初期化手順を含むインストール方法が提供される。これにより、PnPを禁止する設定がされた状態でも、検出済情報を初期化させるステップを含むインストーラを実行することにより、PnPプロセスを利用したインストール処理を実行させることができる。
【0012】
また、上記インストール方法において、オペレーティングシステムは、デバイス情報が情報処理装置内に書き込まれたとき、または、ユーザからの指示があったときに、検出済情報を格納してもよい。これにより、ハードウェアデバイスのインストールが完了した場合に、当該ハードウェアデバイスが再検出された場合に再びPnPが起動されてインストールを重複して実行することが回避できる。また、PnPの起動を避けたい場合に、ユーザの指示に基づいてそのような設定をすることができる。
【0013】
また、上記インストール方法において、検出済情報を格納する処理が終了するまで、初期化手順の実行を待機してもよい。これにより、ひとつのハードウェアデバイスに対するインストール処理が、異なる複数のプロセスで同時に実行されることが回避できる。従って、リソースのコンフリクト等が未然に防止される。
【0014】
また、上記インストール方法において、初期化手順に先立って、デバイスドライバを情報処理装置に格納する格納手順を含めてもよい。これにより、デバイスドライバを情報処理装置に格納した状態でPnPを起動させることができるので、PnPプロセス単独の処理によってインストールが確実に完了する。
【0015】
更に、本発明の第2の形態として、情報処理装置に対して外部からハードウェアデバイスが接続された場合に、ハードウェアデバイスが新規であるときに新規のハードウェアデバイスを検出した旨を示す検出済情報を情報処理装置に格納し、次いで、ハードウェアデバイスを制御するデバイスドライバを情報処理装置の内部で検索して、ハードウェアデバイスおよびデバイスドライバを関連付けたデバイス情報を生成して情報処理装置に格納するインストール処理が実装されたオペレーティングシステムに対して、ハードウェアデバイスのインストールを実行するプログラムであって、情報処理装置に、ハードウェアデバイスについて検出済情報が既に格納されている場合に検出済情報を初期化してオペレーティングシステムにインストール処理を起動させる初期化ステップを実行させる。これにより、上記インストール方法をユーザに提供することができる。また、媒体がOSにマウントされたときにインストーラを自動実行する設定にすれば、ユーザに要求される操作をさらに軽減することができる。
【0016】
なお、上記発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションも発明となり得る。
【発明を実施するための最良の形態】
【0017】
以下、発明の実施の形態を通じて本発明を説明する。ただし、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0018】
図1は、インストール方法を実施する対象となる情報処理装置110を含む概念上のシステム構成10を示す図である。同図に示すように、情報処理装置110はオペレーティングシステム120および格納部130を含んでいる。オペレーティングシステム120および格納部130は、それぞれ入出力ポート112を介して、情報処理装置110の外部の、ハードウェアデバイス150、入力装置170等とデータ、プログラム等を送受信することができる。また、オペレーティングシステム120は、PnPプロセス122およびプログラム実行部124等を含んでいる。
【0019】
一方、格納部130は、オペレーティングシステム120の制御の下に、デバイスドライバ132、検出済情報140等を格納する。ここで、検出済情報140は、後述するハードウェアデバイス150毎に生成され、それぞれ、デバイスID142、PnP禁止を示すPnP禁止情報144、インストール済みを示すインストール済情報146等の情報を格納できる領域を含む。
【0020】
また、この情報処理装置110におけるオペレーティングシステム120は、入出力ポート112を介して外部に接続されたハードウェアデバイス150を制御する。更に、着脱できる記録媒体160を介して情報またはプログラムを格納したファイルを取り込むことができる。更に、例えばキーボード、マウス等の入力装置170を介してユーザの指示を受け付けることができる。
【0021】
図2は、上記のようなシステム構成10上の情報処理装置110に対して、PnPプロセス122により新規なハードウェアデバイス150をインストールする方法の手順を示す流れ図F100である。同図に示すように、新規なハードウェアデバイス150が情報処理装置110に物理的に接続されると(S101)、OS120は、そのハードウェアデバイス150からデバイスID142を受信して、そのデバイスID142を含む検出済情報140を情報処理装置110に格納する(S102)。
【0022】
続いて、OS120は、当該デバイスID142に対応するデバイスドライバ132を検索する(S103)。適切なデバイスドライバ132が検出された場合(S103:YES)、OS120は、当該ハードウェアデバイス150とデバイスドライバ132の対応関係等の設定を情報処理装置110に格納し、更に、当該ハードウェアデバイス150に対するソフトウェア上のインストール処理が完了した旨を示すインストール済情報146を含むデバイス情報を書き込む(S104)。こうして、当該ハードウェアデバイス150のインストールが完了したので、OS120からハードウェアデバイス150を制御して利用することができるようになる(S105)。
【0023】
一方、ステップS103において適切なデバイスドライバ132が検出されなかった場合(S103:NO)、OS120は、ユーザにインストールを続行するか否かの指示を仰ぐ(S106)。この場合に、OS120は情報処理装置110の画面上にインストールを続行するかどうかを問い合せる画面を表示し、これに対するユーザからの入力を受け付ける。ここで、ユーザがインストールの続行を選択した場合(S106:YES)、ユーザは、デバイスドライバ132の格納されたディレクトリをOS120に通知する等、OS120の要求する処理に手動で対応する(S107)。OS120から要求された操作が完全に実行された場合(S107:YES)は、当該ハードウェアデバイス150のインストールは完了するので、OS120からハードウェアデバイス150を制御して利用することができるようになる(S105)。
【0024】
しかしながら、ユーザが適切な操作を知らない等の理由によりステップS106においてインストールの中断を選択した場合(S106:NO)、あるいは、ユーザの操作によるインストール処理がOS120の要求に応えられなかった場合(S107:NO)、当該ハードウェアデバイス150に対するインストールは未完のまま処理は終了する(S108)。この場合、デバイスドライバ132はインストールされていないので、OS120は当該ハードウェアデバイス150を制御することができない。従って、ユーザは当該ハードウェアデバイス150を利用することはできない。
【0025】
なお、上記のように新規なハードウェアデバイス150のインストールが中断され、インストールが未完のまま処理が終了した場合でも、ステップ102において、当該ハードウェアデバイス150がOS120に認識されたことは、デバイスID142を含む検出済情報140として情報処理装置110に格納されている。従って、このハードウェアデバイス150が次にOS120に検出された場合の処理には、この検出済情報140が参照される。
【0026】
図3は、PnPプロセス122の過程で、ステップS107においてユーザに選択を求めるために表示されるモーダルダイアログ20の表示例を示す図である。このモーダルダイアログ20は、図2に示したステップS103においてデバイスドライバ132が検出されず(S103:NO)、更に、ユーザがインストールの続行を選択した(S106:YES)にもかかわらず、ユーザの操作がOS120の要求を満たすことができなかった場合(S107:NO)に表示される。
【0027】
モーダルダイアログ20には、インストール処理を続行できない旨を示すメッセージ210と共に、前の手順に戻ってユーザが操作をやり直すための「戻る」ボタン240、メッセージ210を受け入れてインストール処理を終了させる「完了」ボタン250、これまでに処理されたインストール処理を無効にする「キャンセル」ボタン260等が併せて表示されている。これらのボタンをポインティングデバイスにより操作することにより、ユーザは処理の推移を指示することができる。
【0028】
また、モーダルダイアログ20には、「このソフトウェアをインストールする確認を今後表示しない」という選択事項220が表示されている。この選択事項220の記載内容は、今後、このハードウェアデバイス150に対応したデバイスドライバ132をインストールするためのPnPプロセス122の起動を禁止することを意味している。また、この選択事項220は、選択事項220の左側に表示されたチェックボックス230にチェックをいれた後に「完了」ボタン250を押すことにより表示内容が有効になり、検出済情報140にPnP禁止情報144が書き込まれる。
【0029】
このように、チェックボックス230にチェックを入れた状態で「完了」ボタン250が押されると、デバイスドライバ132のインストールは未完であるにもかかわらず、今後はPnPが起動されないことを意味している。従って、PnPプロセス122以外にインストール方法を知らないユーザには、まだインストールされていないデバイスドライバ132をインストールする手だてが全く失われることになる。
【0030】
図4は、この発明に係るインストール方法のひとつの実施形態に係る手順を示す流れ図F200である。同図に示すように、ユーザは、まず、この発明に係るインストール方法の手順が記載されたインストールプログラム(以下、「インストーラ」と記載する)を起動する(S201)。このインストーラは、ハードウェアデバイス150に同梱してユーザに提供される記録媒体160に格納されており、当該記録媒体160を情報処理装置110に装入することにより、オペレーティングシステム120のプログラム実効部124が実行できるようになる。また、多くのOS120システムでは、装入された記録媒体160上のプログラムを自動的に起動する機能を備えているので、それを利用してインストールプログラムを起動させることもできる。なお上記インストールプログラムは、インターネット等のネットワークにより配信され、情報処理装置110にダウンロードされてもよい。
【0031】
起動したインストーラは、まず、当該ハードウェアデバイス150のデバイスID142を含む検出済情報140を検索する(S202)。ここで、検出済情報140が検出されなかった場合(S202:NO)、当該ハードウェアデバイス150はまだインストールされていないので、通常のインストールの手順を実行する。
【0032】
即ち、インストーラは、まず、当該ハードウェアデバイス150に係るデバイスドライバ132のファイルを、情報処理装置110の所定のディレクトリに格納した後(S203)、ユーザに対して、ハードウェアデバイス150の物理的な接続を要求する(S204)。ユーザがこの要求に従ってハードウェアデバイス150を接続すると、OS120はPnPプロセス122を起動して(S205)、ハードウェアデバイス150に対するソフトウェア上のインストール処理を実行する(S206)。この場合、OS120はデバイスドライバ132のファイルを自身で検出できるので、ユーザに指示を要求することなくインストール処理を完了させることができる(S207)。従って、このインストール処理がユーザに中断されることはない。
【0033】
また、ステップS202において検出済情報140が検出された場合(S202:YES)、インストーラは、当該ハードウェアデバイス150に対するインストール処理が完了しているかどうかを検査する(S208)。この場合に、インストーラは、当該ハードウェアデバイス150のインストール済情報146がデバイス情報に格納されており、かつ、このデバイス情報により特定されるデバイスドライバ132が情報処理装置100の中に存在していることを検知した場合に、当該ハードウェアデバイス150に対するインストール処理が完了していると判断する。ここで、インストール処理が完了していることが判明した場合(S208:YES)、もはやハードウェアデバイス150のインストール処理を実行する必然性はない。ただし、多くの場合、インストーラは、ハードウェアデバイス150だけではなく、他のソフトウェア等のインストールを担っている。従って、ハードウェアデバイス150のインストールが完了していた場合は、他のインストール処理を実行した後(S209)、処理を終了する(S210)。
【0034】
一方、ステップS208において、ハードウェアデバイス150のインストールが完了していないことが検出された場合(S208:NO)、インストーラは、まず、PnPプロセス122のサーチパス上のディレクトリにデバイスドライバ132のファイルを格納する(S211)。続いて、ユーザに対して、ハードウェアデバイス150の物理的な接続を要求する(S212)。ユーザがこの要求に従ってハードウェアデバイス150を接続するか、ハードウェアデバイス150が既に接続されていた場合は、インストーラは、検出済情報140のPnP禁止情報144を初期化する(S213)。これにより、OS120がPnPプロセス122を起動して(S205)、ハードウェアデバイス150に対するソフトウェア上のインストール処理を実行する(S206)。この場合、OS120はデバイスドライバ132のファイルを自身で検出できるので、ユーザに指示を要求することなくインストール処理を完了させることができる(S207)。
【0035】
以上詳細に説明したように、この方法によれば、何らかの理由で、再実行の禁止を選択した状態でPnPによるデバイスドライバ132のインストール処理を中断させても、インストーラを起動することにより、再びPnPを利用したデバイスドライバ132のインストールを実行させることができる。従って、OS120の操作に不慣れなユーザの場合でも、新規なハードウェアデバイス150のインストールを完遂させることができ、当該ハードウェアデバイス150を確実に利用できるようにできる。
【0036】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加え得ることは当業者に明らかである。また、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【0037】
【図1】インストール方法を実施する対象となる情報処理装置110を含む概念上のシステム構成10を模式的に示す図。
【図2】PnP機能を有するOSが実装された情報処理装置110に対するハードウェアのインストール方法の手順を示す流れ図F100である。
【図3】PnP機能の処理の過程でユーザに選択を求めるモーダルダイアログ20の表示例。
【図4】ひとつの実施形態に係るインストール方法の手順を示す流れ図F200である。
【符号の説明】
【0038】
10 システム構成、20 モーダルダイアログ、110 情報処理装置、112 入出力ポート、120 オペレーティングシステム、122 PnPプロセス、124 プログラム実行部、130 格納部、132 デバイスドライバ、140 検出済情報、142 デバイスID、144 PnP禁止情報、146 インストール済情報、150 ハードウェアデバイス、160 記録媒体、170 入力装置、210 メッセージ、220 選択事項、230 チェックボックス、240 「戻る」ボタン、250 「完了」ボタン、260 「キャンセル」ボタン

【特許請求の範囲】
【請求項1】
情報処理装置に対して外部からハードウェアデバイスが接続された場合に、前記ハードウェアデバイスが新規であるときに新規のハードウェアデバイスを検出した旨を示す検出済情報を前記情報処理装置に格納し、次いで、前記ハードウェアデバイスを制御するデバイスドライバと前記ハードウェアデバイスとを関連付けたデバイス情報を生成して前記情報処理装置に格納するインストール処理が実装されたオペレーティングシステムに対して、前記ハードウェアのインストールを行うインストール方法であって、
前記ハードウェアデバイスについて前記検出済情報が既に格納されている場合に、前記検出済情報を初期化して前記オペレーティングシステムに前記インストール処理を起動させる初期化手順を含むインストール方法。
【請求項2】
前記オペレーティングシステムは、前記デバイス情報が前記情報処理装置の内部に書き込まれたとき、または、ユーザからの指示があったときに、前記検出済情報を格納する請求項1に記載のインストール方法。
【請求項3】
前記検出済情報を格納する処理が終了するまで、前記初期化手順の実行を待機する請求項1に記載のインストール方法。
【請求項4】
前記初期化手順に先立って、前記デバイスドライバを前記情報処理装置に格納する格納手順を含む請求項1に記載のインストール方法。
【請求項5】
情報処理装置に対して外部からハードウェアデバイスが接続された場合に、前記ハードウェアデバイスが新規であるときに新規のハードウェアデバイスを検出した旨を示す検出済情報を前記情報処理装置に格納し、次いで、前記ハードウェアデバイスを制御するデバイスドライバと前記ハードウェアデバイスとを関連付けたデバイス情報を生成して前記情報処理装置に格納するインストール処理が実装されたオペレーティングシステムに対して、前記ハードウェアのインストールを行うプログラムであって、
前記情報処理装置に、前記ハードウェアデバイスについて前記検出済情報が既に格納されている場合に前記検出済情報を初期化して前記オペレーティングシステムに前記インストール処理を起動させる初期化ステップを実行させるプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2007−102567(P2007−102567A)
【公開日】平成19年4月19日(2007.4.19)
【国際特許分類】
【出願番号】特願2005−292733(P2005−292733)
【出願日】平成17年10月5日(2005.10.5)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】