JP4158423B2 - ドライバインストールシステム、その方法及びそのプログラム - Google Patents

ドライバインストールシステム、その方法及びそのプログラム Download PDF

Info

Publication number
JP4158423B2
JP4158423B2 JP2002162562A JP2002162562A JP4158423B2 JP 4158423 B2 JP4158423 B2 JP 4158423B2 JP 2002162562 A JP2002162562 A JP 2002162562A JP 2002162562 A JP2002162562 A JP 2002162562A JP 4158423 B2 JP4158423 B2 JP 4158423B2
Authority
JP
Japan
Prior art keywords
driver
hardware
identification information
computer
installation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002162562A
Other languages
English (en)
Other versions
JP2004013266A (ja
Inventor
佐藤  茂樹
洋一 西村
清志 北原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2002162562A priority Critical patent/JP4158423B2/ja
Publication of JP2004013266A publication Critical patent/JP2004013266A/ja
Application granted granted Critical
Publication of JP4158423B2 publication Critical patent/JP4158423B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ドライバインストールシステム、その方法及びそのプログラムに関する。
【0002】
【従来の技術】
近年、例えばディスクトップ型、タワー型、ノートブック型などのパソコンにおいて、種々のハードウェアを組み込んだものが販売されている。これらのハードウェアをパソコンで利用するには、各ハードウェアの動作に必要な情報をパソコンのオペレーティングシステムに提供したり動作を管理したりするドライバが必要となる。このため、パソコンに新たなハードウェアを組み込む場合には、ユーザはそのハードウェアのドライバのインストール作業を行う必要がある。
【0003】
【発明が解決しようとする課題】
しかしながら、各ハードウェアのドライバのインストール作業は、パソコンに組み込まれたハードウェアをユーザが確認したあと、各ハードウェアに対応するドライバを各種ハードウェアのドライバが記録されたドライバCDから手動でインストールするといった作業になるため、ユーザに大きな負担がかかるという問題があった。なお、特開2000−339263には、ドライバ取得方法に関する技術が開示されているが、具体的な自動インストールの手法については開示されていない。
【0004】
本発明は、このような課題に鑑みなされたものであり、ドライバをインストールする際のユーザの負担を軽減することを目的の一つとする。また、コンピュータに現に接続されているハードウェアのドライバだけを自動インストールすることを目的の一つとする。
【0005】
【課題を解決するための手段およびその作用・効果】
上述の目的の少なくとも一つを達成するため、本発明の第1は、コンピュータに接続されたハードウェアを制御するドライバを自動インストールするドライバインストールシステムであって、
前記コンピュータに接続可能な1又は複数のハードウェアのドライバ情報と各ハードウェアの識別情報の特定部との対応関係を記憶する第1記憶手段と、
前記ドライバを汎用インストーラでインストールする際に必要となる所定形式で前記ハードウェアの識別情報を記憶する第2記憶手段と、
前記コンピュータに現に接続されているハードウェアから該ハードウェアの識別情報の特定部を取得する第1取得手段と、
前記第1取得手段が取得した前記識別情報の特定部に対応するドライバ情報を前記第1記憶手段から取得する第2取得手段と、
前記第1取得手段が取得した前記識別情報の特定部を含む前記所定形式の識別情報を前記第2記憶手段から取得する第3取得手段と、
前記第2取得手段が取得した前記ドライバ情報に基づいてドライバをインストールするにあたり前記第3取得手段が取得した前記所定形式の識別情報を用いて前記汎用インストーラをコールして自動インストールを実行するインストール実行手段と
を備えたものである。
【0006】
このドライバインストールシステムでは、コンピュータに現に接続されているハードウェアからそのハードウェアの識別情報の特定部を取得し、この識別情報の特定部に対応するドライバ情報を第1記憶手段から取得し、また、この識別情報の特定部を含む所定形式の識別情報を第2記憶手段から取得する。そして、取得したドライバ情報に基づいてドライバをインストールするにあたり所定形式の識別情報を用いて汎用インストーラをコールして自動インストールを実行する。
【0007】
このドライバインストールシステムによれば、汎用インストーラを用いてドライバを自動インストールするため、従来のようにユーザがインストール作業を行う場合に比べてユーザの負担が軽減する。また、現に接続されているハードウェアのドライバのみが自動インストールされるため、無駄なドライバをインストールすることがない。
【0008】
本発明のドライバインストールシステムにおいて、前記第1記憶手段は、前記コンピュータに対して着脱自在な記憶媒体であってもよい。こうすれば、第1記憶手段をコンピュータに簡単に付属させることができる。ここで、「記憶媒体」としては、コンピュータが読み取り可能な媒体であればどのようなものでもよく、例えばCD、DVD、FD、MO、各種メモリカードなどが挙げられる。
【0009】
本発明のドライバインストールシステムにおいて、前記第1記憶手段は、前記コンピュータの外部から提供された前記対応関係を記憶する媒体であってもよい。こうすれば、第1記憶手段の記憶内容をネットワーク経由で授受することも可能となる。ここで、「媒体」としては、例えばHDDなどが挙げられる。
【0010】
本発明のドライバインストールシステムにおいて、前記第2記憶手段は、前記コンピュータのオペレーティングシステムによって認識されたハードウェアの識別情報を前記所定形式で記憶してもよい。ここで、「オペレーティングシステム」としては、特に限定されないが、例えばマイクロソフト社のウィンドウズやアップル社のマックOSなどが挙げられる。ウィンドウズの場合にはハードウェアの識別情報を所定形式でレジストリに記憶してもよい。
【0011】
本発明のドライバインストールシステムにおいて、前記汎用インストーラは、前記コンピュータのオペレーティングシステムのアプリケーションプログラムインタフェースとして提供されるものであってもよい。こうすれば、別途、汎用インストーラを用意する必要がない。
【0012】
本発明のドライバインストールシステムにおいて、前記ハードウェアのドライバ情報は、前記汎用インストーラをコールするコマンドラインのうち前記ハードウェアの前記所定形式の識別情報が未指定のもの(ハードウェア未指定コマンドライン)を含んでいてもよい。こうすれば、このハードウェア未指定コマンドラインにハードウェアの所定形式の識別情報を指定するだけで汎用インストーラによる自動インストールが実行される。
【0013】
本発明のドライバインストールシステムにおいて、前記ハードウェアの識別情報は、前記ハードウェアの製造メーカの事情に影響されない部分と影響される部分とを含み、前記ハードウェアの識別情報の特定部は、前記ハードウェアの製造メーカの事情に影響されない部分であることが好ましい。こうすれば、第1記憶手段におけるハードウェアのドライバ情報と各ハードウェアの識別情報の特定部との対応関係は製造メーカの事情に影響されないため、製造メーカの事情によって対応関係を見直す必要がない。
【0014】
本発明のドライバインストールシステムにおいて、前記ハードウェアの識別情報は、ベンダ、デバイス、サブシステム及びリビジョンをそれぞれ特定する識別符号を含み、前記ハードウェアの識別情報の特定部は、ベンダ及びデバイスをそれぞれ特定する識別符号であることが好ましい。一般に、ベンダを特定する識別符号はそのハードウェアの製造メーカを表し、デバイスを特定する識別符号はそのハードウェアの製品を表すものであり、同じ製造メーカの同じ製品については変更されることがない。これに対して、サブシステムを特定する識別符号やリビジョンを特定する識別符号は、同じ製造メーカの同じ製品であっても製造メーカの事情(例えば製造ロットが相違する等)によって変更されるおそれがある。つまり、サブシステム及びリビジョンをそれぞれ特定する識別符号は製造メーカの事情に影響されるが、ベンダ及びデバイスをそれぞれ特定する識別符号は製造メーカの事情に影響されない。このため、第1記憶手段におけるハードウェアのドライバ情報と各ハードウェアの識別情報のうちベンダ及びデバイスをそれぞれ特定する識別符号との対応関係は、製造メーカの事情に影響されず、製造メーカの事情によって対応関係を見直す必要がない。
【0015】
本発明の第2は、コンピュータが該コンピュータに接続されたハードウェアを制御するドライバを自動インストールするドライバインストール方法であって、
前記コンピュータに現に接続されているハードウェアから該ハードウェアの前記識別情報の特定部を取得する第1取得ステップと、
前記コンピュータに接続可能な1又は複数のハードウェアのドライバ情報と各ハードウェアの識別情報の特定部との対応関係を記憶する第1記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部に対応するドライバ情報を取得する第2取得ステップと、
前記ドライバを汎用インストーラでインストールする際に必要となる所定形式で前記ハードウェアの識別情報を記憶する第2記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部を含む前記所定形式の識別情報を取得する第3取得ステップと、
前記第2取得ステップで取得した前記ドライバ情報に基づいてドライバをインストールするにあたり前記第3取得ステップで取得した前記所定形式の識別情報を用いて前記汎用インストーラをコールして自動インストールを実行するインストールステップと
を含むものである。
【0016】
このドライバインストール方法によれば、汎用インストーラを用いてドライバを自動インストールするため、従来のようにユーザがインストール作業を行う場合に比べてユーザの負担が軽減される。また、現に接続されているハードウェアのドライバのみが自動インストールされるため、無駄なドライバをインストールすることがない。なお、第2取得ステップと第3取得ステップとは順不同で行ってもよい。
【0017】
このドライバインストール方法において、前記第1記憶手段は、前記コンピュータに対して着脱自在な記憶媒体であってもよいし、前記コンピュータの外部から提供された前記対応関係を記憶する媒体であってもよい。また、前記第2記憶手段は、前記コンピュータのオペレーティングシステムによって認識されたハードウェアの識別情報を前記所定形式で記憶してもよい。更に、前記汎用インストーラは、前記コンピュータのオペレーティングシステムのアプリケーションプログラムインタフェースとして提供されるものであってもよい。更にまた、前記ハードウェアのドライバ情報は、前記汎用インストーラをコールするコマンドラインのうち前記ハードウェアの前記所定形式の識別情報が未指定のものを含んでいてもよい。そしてまた、前記ハードウェアの識別情報は、前記ハードウェアの製造メーカの事情に影響されない部分と影響される部分とを含み、前記ハードウェアの識別情報の特定部は、前記ハードウェアの製造メーカの事情に影響されない部分であることが好ましく、例えば、前記ハードウェアの識別情報は、ベンダ、デバイス、サブシステム及びリビジョンをそれぞれ特定する識別符号を含み、前記ハードウェアの識別情報の特定部は、ベンダ及びデバイスをそれぞれ特定する識別符号であることが好ましい。
【0018】
本発明の第3は、コンピュータに接続されたハードウェアを制御するドライバを自動インストールするドライバインストールプログラムであって、
前記コンピュータに対し、
前記コンピュータに現に接続されているハードウェアから該ハードウェアの識別情報の特定部を取得する第1取得ステップと、
前記コンピュータに接続可能な1又は複数のハードウェアのドライバ情報と各ハードウェアの識別情報の特定部との対応関係を記憶する第1記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部に対応するドライバ情報を取得する第2取得ステップと、
前記ドライバを汎用インストーラでインストールする際に必要となる所定形式で前記ハードウェアの識別情報を記憶する第2記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部を含む前記所定形式の識別情報を取得する第3取得ステップと、
前記第2取得ステップで取得した前記ドライバ情報に基づいてドライバをインストールするにあたり前記第3取得ステップで取得した前記所定形式の識別情報を用いて前記汎用インストーラをコールして自動インストールを実行するインストールステップと
を実行させるためのものである。
【0019】
このドライバインストールプログラムをコンピュータに実行させると、汎用インストーラを用いてドライバを自動インストールするため、従来のようにユーザがインストール作業を行う場合に比べてユーザの負担が軽減される。また、現に接続されているハードウェアのドライバのみが自動インストールされるため、無駄なドライバをインストールすることがない。なお、第2取得ステップと第3取得ステップとは順不同で行ってもよい。また、このドライバインストールプログラムは、コンピュータが読み取り可能な記憶媒体(例えばハードディスク、ROM、FD、CD、DVDなど)に記録されていてもよいし、伝送媒体(インターネットやLANなどの通信網)を介して配信されてもよいし、その他どのような形で授受されてもよい。
【0020】
このドライバインストールプログラムにおいて、前記第1記憶手段は、前記コンピュータに対して着脱自在な記憶媒体であってもよいし、前記コンピュータの外部から提供された前記対応関係を記憶する媒体であってもよい。また、前記第2記憶手段は、前記コンピュータのオペレーティングシステムによって認識されたハードウェアの識別情報を前記所定形式で記憶してもよい。更に、前記汎用インストーラは、前記コンピュータのオペレーティングシステムのアプリケーションプログラムインタフェースとして提供されるものであってもよい。更にまた、前記ハードウェアのドライバ情報は、前記汎用インストーラのコールコマンドのうち前記ハードウェアの前記所定形式の識別情報が未指定のものを含んでいてもよい。そしてまた、前記ハードウェアの識別情報は、前記ハードウェアの製造メーカの事情に影響されない部分と影響される部分とを含み、前記ハードウェアの識別情報の特定部は、前記ハードウェアの製造メーカの事情に影響されない部分であることが好ましく、例えば、前記ハードウェアの識別情報は、ベンダ、デバイス、サブシステム及びリビジョンをそれぞれ特定する識別符号を含み、前記ハードウェアの識別情報の特定部は、ベンダ及びデバイスをそれぞれ特定する識別符号であることが好ましい。
【0021】
【発明の実施の形態】
次に、本発明の実施の形態を図面に基づいて説明する。図1は、本実施形態のコンピュータシステム10の概略構成を表すブロック図である。
【0022】
本実施形態のコンピュータシステム10は、本発明のドライバインストールシステムを実現化したものであり、例えば汎用のディスクトップ型パソコンやノートブック型パソコンである。このコンピュータシステム10は、PCIバス等のシステムバス20に、CPU11、システムメモリ13、チップセット15、HDD17、CD−ROMドライブ18、ディスプレイコントローラ23、キーボードコントローラ27、モデム33、サウンドカード35及びネットワークアダプタ39が接続されたものである。
【0023】
CPU11は、このコンピュータシステム10の全体を制御する役割を果たし、システムメモリ13に格納されたオペレーティングシステム(例えばマイクロソフト社のウィンドウズ2000やウィンドウズXPなど)や、各種のハードウェアを制御するためのドライバや、各種のアプリケーションソフトのプログラムに基づいて動作する。
【0024】
システムメモリ13は、このコンピュータシステム10の主記憶装置であり、前出のオペレーティングシステムやドライバやアプリケーションソフトを格納している。
【0025】
チップセット15は、CPU11をサポートしCPU11と共に作動するプログラマブル割込コントローラなどの集積回路をセットにしたものである。
【0026】
HDD17及びCD−ROMドライブ18は、このコンピュータシステム10の外部記憶装置であり、システム起動時、現行のオペレーティングシステムは、HDD17からシステムメモリ13にロードされる。一方、後述するドライバ自動インストールソフトのプログラムはCD−ROMドライブ18に挿入されたCD−ROM19からシステムメモリ13にロードされる。また、ドライバ自動インストールソフトのプログラムを実行するにあたり必要となる各種のデータもCD−ROM19に記録されている。
【0027】
ディスプレイコントローラ23は、このコンピュータシステム10において画像出力を制御するものであり、CPU11から受信した信号に基づいてディスプレイ25の表示を制御する。
【0028】
キーボードコントローラ27は、このコンピュータシステム10においてオペレータによる入力を制御するものであり、キーボード29やマウス31等の入力装置の操作をデータ化してCPU11に送信する。
【0029】
モデム33は、このコンピュータシステム10が電話回線を介して情報を伝送できるようにする通信装置である。このモデム33は、送信時にデジタル信号を電話回線上の連続的に変化する搬送波周波数に変調し、受信時に搬送波からの情報を復調しデジタル信号に変換する。
【0030】
サウンドカード35は、WAVEファイルやMIDIファイルやMPEGファイルや音楽CD−ROMなどからの音声の再生及び録音を可能にする拡張ボードであり、マイク36を介して入力された音声データをCPU11に送信したり、音声データをスピーカ37を介して出力したりする。
【0031】
ネットワークアダプタ39は、このコンピュータシステム10をケーブルを介してLANなどのネットワークへ接続する拡張ボードであり、ネットワークカードなどとも称される。
【0032】
このコンピュータシステム10の動作はオペレーティングシステムによって統合的に制御され、オペレーティングシステムはこの制御のために必要な各種情報をHDD17上のレジストリに格納する。
【0033】
次に、このコンピュータシステム10のドライバ自動インストールについて図2に基づいて説明する。図2はドライバ自動インストールプログラムのフローチャートである。
【0034】
コンピュータシステム10のCPU11は、ドライバ自動インストールプログラムが記録されたCD−ROM19がセットされると、ステップS100で、オートラン(Auto Run)機能が働き、CD−ROM19からドライバ自動インストールプログラムが読み出されて開始される。
【0035】
続くステップS105で、CPU11は、インストールすべきドライバリストを作成する。ここで、セットされたCD−ROM19には、このコンピュータシステム10に搭載可能なハードウェアにつき、ハードウェアIDの一部やドライバ情報などが記述された定義ファイルが格納されている。ハードウェアIDは、ベンダIDとデバイスIDとサブシステムIDとリビジョンIDとで構成されている。このうち、ベンダIDはそのハードウェアを製造したメーカを表すIDであり、デバイスIDはその製造メーカが設定したその製品を表すIDであり、サブシステムIDはそのハードウェアが複数種類存在する場合にどの種類かを特定するIDであり、リビジョンIDはそのハードウェアのバージョン情報を表すIDである。
【0036】
ここで、図3(a)は定義ファイルの具体例である。この定義ファイルは、1行目にチップセットに関する定義、2行目にサウンドドライバに関する定義、3行目にネットワークドライバに関する定義、4行目にワイヤレスネットワークドライバに関する定義、5行目にモデムドライバに関する定義、6行目にディスプレイドライバに関する定義が記述されている。各定義には、左から順にベンダID欄51、デバイスID欄52、ドライバ名欄61、スクリプト名欄71、コールコマンド関連情報欄81が記述される。ベンダID欄51及びデバイスID欄52に記述されるベンダID及びデバイスIDはハードウェアIDの特定部をなすものであり、ドライバ名欄61に記述されるドライバ名は後述するメニュー表示の際に使用される名称であり、スクリプト名欄71に記述されるスクリプト名は各ドライバの専用インストーラの手順が記載されたスクリプトの名称であり、コールコマンド関連情報欄81に記述される情報は自動インストールを利用せずユーザが手動でインストールする場合に利用するものである。
【0037】
図3(a)の定義ファイルの1〜4行目及び6行目は、スクリプト名欄71にスクリプト名が記述され、コールコマンド関連情報欄81に専用インストーラのコールコマンドが記述されている。これに対して、定義ファイルの5行目は、モデムドライバに関する定義であるが、モデムドライバには専用インストーラが用意されていないためスクリプトが作成されておらず、このためスクリプト名欄71には本来スクリプト名を記述されるべきところを「$SETUP$」と記述されており、コールコマンド関連情報欄81も専用インストーラが存在しないためオペレーティングシステムのアプリケーションプログラムインタフェースとして提供される汎用インストーラをコールするコマンドラインのうちハードウェアIDが未指定のもの(ハードウェア未指定コマンドライン)が記述されている。すなわち、汎用インストーラをコールするコマンドラインは、図5に示すように、セットアップコマンドにオプションスイッチを付け、第1パラメータとしてinfファイルを指定し、第2パラメータとして所定形式のハードウェアIDを指定したものであるが、コールコマンド関連情報欄81には、このうち第2パラメータが省略されたものが記述されている。なお、コールコマンド関連情報欄81には、どのドライブがinfファイルを格納していても対処できるようにドライブ名が「??」と記述されている。
【0038】
さて、ステップS105において、CPU11は、システムバス20に接続されている各ハードウェアからハードウェアIDのうちの少なくともベンダID及びデバイスIDを取得し、取得したベンダID及びデバイスIDとCD−ROM19に記憶された定義ファイルのベンダID欄51及びデバイスID欄52とを照合することにより、CD−ROM19に収録されているドライバの中からインストールすべきドライバのみを選択し、ドライバリストを作成する。図3(b)はハードウェアから取得したベンダID及びデバイスIDの一例であり、これを図3(a)の定義ファイルと照合することにより、チップセットドライバ、サウンドドライバ、ネットワークドライバ、モデムドライバ、ディスプレイドライバをリストアップしたドライバリストを作成する。
【0039】
続くステップS110で、CPU11は、一括インストールのほかに個別インストール等の他のメニューを選択可能なメニュー選択画面をディスプレイに表示し、ステップS115で、一括インストールが選択されたか否かを判定する。ステップS115で一括インストールが選択されたなかったとき、つまり一括インストール以外のメニューが選択されたときには、ステップS120に進み、選択されたメニューに応じたルーチンを実行し、その後このプログラムを終了する。一方、ステップS115で一括インストールが選択されたときには、ステップS125に進んでインストールすべきドライバを一覧表示する。この一覧表示は、ステップS105で作成したドライバリストをディスプレイ25に表示することにより行う。図4は、ドライバリストをディスプレイ25に表示したときの一例を示す。この表示画面には、「インストール開始」ボタンが設けられている。
【0040】
続くステップS130で、「インストール開始」ボタンがオンされたか否かを判定し、オンされなければそのまま待機し、オンされたならばステップS135〜S160を実行することにより、ドライバリストにリストアップされたドライバを順次自動インストールしていく。
【0041】
すなわち、ステップS135でカウンタの値iに初期値「1」をセットし、ステップS140でi番目のドライバにつきスクリプトが存在するか否かを判定する。ここで、スクリプトとは、そのドライバに専用インストーラが存在しその専用インストーラのウィザードを自動的に進行させるための記述がなされたものである。例えば、スクリプトには、そのドライバの専用インストーラの手順に従ってダイアログが表示されるごとに「次へ」ボタンがオンされていき、インストールが完了したあと今すぐ再起動するか後で再起動するかのダイアログが表示されると「後で再起動する」がオンされるように記述されている。ステップS140でi番目のドライバにつきスクリプトが存在するとき、つまり定義ファイルのスクリプト名欄71にスクリプト名が記述されているときには、ステップS145に進み、スクリプト解釈実行プログラムを呼び出してそのドライバのスクリプトに基づいて処理を実行することにより、そのドライバの自動インストールを実行する。
【0042】
例えば、チップセットをインストールする場合には、図3(a)の定義ファイルの1行目に記述さているように、スクリプト名欄71にはスクリプト名である「chipinf.EDS」、つまり拡張子がEDSのファイル名が記述されていることから、スクリプト解釈実行プログラムを呼び出してこのスクリプトファイルを解釈し実行することにより、専用インストーラによる自動インストールが行われる。
【0043】
一方、ステップS140でi番目のドライバにつきスクリプトが存在しないとき、つまり定義ファイルのスクリプト名欄71にスクリプト名が記述されていないときには、ステップS150に進み、オペレーティングシステムのレジストリに所定形式で保管されているハードウェアIDの中から、i番目のドライバに対応するベンダID及びデバイスID(定義ファイルのベンダID欄51及びデバイスID欄52に記述されたID)を含むものを取得し、取得した所定形式のハードウェアIDをi番目のドライバに対応するハードウェア未指定コマンドラインにマージしてそのコマンドラインを完成させる。
【0044】
例えば、モデムドライバをインストールする場合には、図3(a)の定義ファイルの5行目に記述されているように、スクリプト名欄71にはスクリプト名ではなく「$SETUP$」と記述されていることから、スクリプトが存在しないと判定される。そして、オペレーティングシステム(例えばマイクロソフト社のウィンドウズXP)のレジストリ(例えばPCIバスに接続されているハードウェアID群を格納している場所)の中から、このモデムのベンダID欄51及びデバイスID欄52のベンダID及びデバイスIDを含むものを取得する。この場合、所定形式のハードウェアID(数1参照)を取得し、定義ファイルの5行目のコールコマンド関連情報欄81に記述されたハードウェア未指定コマンドラインにこの所定形式のハードウェアIDを第2パラメータとしてマージする。そのときのコマンドラインを図5に示す。なお、コールコマンド関連情報欄81ではドライブ名を「??」としたが、ここではCドライブに汎用インストーラが格納されているためドライブ名は「C」となる。図5は、入力したコマンドラインに従って処理が実行されたあとドライバの更新が成功したときのディスプレイ25の表示画面を示す。なお、レジストリは、オペレーティングシステムで各種ソフトウェアの設定情報などを保存する場所であり、本実施形態ではオペレーティングシステムによって認識されたハードウェアの所定形式のハードウェアIDがハードウェア未指定コマンドラインにマージされて実行コマンドとして機能可能な形式でこのレジストリに記憶されている。
【0045】
【数1】
Figure 0004158423
【0046】
その後、ステップS155に進み、ドライバリストにリストアップされたすべてのドライバのインストールが完了したか否かを判定し、まだすべてのドライバのインストールが完了していないときにはステップS160でカウンタの値iを1インクリメントしたあと再びステップS140以降の処理を行い、一方、すべてのドライバのインストールが完了したときにはステップS165に進んですべてのドライバのインストールが完了した旨のメッセージをディスプレイ25に表示し、更にステップS170に進んで今すぐ再起動をすることの確認を行い、このプログラムを終了する。
【0047】
なお、本実施形態では、ドライバリストにリストアップされたドライバの上から順にインストールを行っていくが、このインストール順は予めトラブルが起きにくい適切な順序に定められている。
【0048】
ここで、本実施形態の構成要素と本発明の構成要素の対応関係を明らかにする。本実施形態のCD−ROM19が本発明の第1記憶手段に相当し、HDD17が第2記憶手段に相当し、CPU11が第1〜第3取得手段及びインストール実行手段に相当する。また、本実施形態の図3(a)のモデムに関する定義におけるコールコマンド関連情報欄81のハードウェア未指定コールコマンドが本発明のドライバ情報に相当し、ハードウェアIDがハードウェアの識別情報に相当し、ハードウェアIDのうちベンダID及びデバイスIDがハードウェアの識別情報の特定部に相当する。更に、CD−ROM19には本発明のドライバインストールプログラムが記録されている。
【0049】
以上詳述した本実施形態では、コンピュータシステム10のシステムバス20に現に接続されているハードウェアからそのハードウェアのベンダID及びデバイスIDを取得し、このベンダID及びデバイスIDに対応するスクリプトが存在しない場合には、このベンダID及びデバイスIDに対応するコールコマンド関連情報をCD−ROM19から取得すると共に、このベンダID及びデバイスIDを含む所定形式のハードウェアIDをレジストリから取得し、ハードウェア未指定コールコマンドに基づいてドライバをインストールするにあたり、レジストリから取得した所定形式のハードウェアIDをハードウェア未指定コールコマンドにマージし、オペレーティングシステムのアプリケーションプログラムインタフェースである汎用インストーラをコールして自動インストールを実行する。このように、本実施形態によれば、汎用インストーラを用いてドライバを自動インストールするため、従来のようにユーザがインストール作業を行う場合に比べてユーザの負担が軽減される。また、現に接続されているハードウェアのドライバのみが自動インストールされるため、無駄なドライバをインストールすることがない。
【0050】
また、本実施形態における汎用インストーラは、コンピュータシステム10のオペレーティングシステムのアプリケーションプログラムインタフェースとして提供されるものであるため、別途、汎用インストーラを用意する必要がない。
【0051】
更に、ハードウェアのドライバ情報にはハードウェア未指定コールコマンドが含まれているため、このハードウェア未指定コールコマンドにレジストリから取得した所定形式のハードウェアIDをパラメータとしてマージするだけで実行コマンドが完成し、汎用インストーラによる自動インストールが実行される。
【0052】
更にまた、ベンダ、デバイス、サブシステム及びリビジョンをそれぞれ特定するIDからなるハードウェアIDのうち、製造メーカの事情(例えば製造ロットが相違する等)によって変更されるおそれのないベンダID及びデバイスIDとドライバ情報との対応関係をCD−ROM19に記憶しているため、製造メーカの事情によってサブシステムID及びリビジョンIDが変更されたとしても、この対応関係を見直す必要がない。
【0053】
なお、本発明は上述した実施形態に何等限定されるものではなく、種々の形態で実施し得ることはいうまでもない。
【0054】
例えば、上述した実施形態では、システムバス20に接続されているハードウェアからベンダID及びデバイスIDのみを取得したが、これらのIDに加えてサブシステムIDやリビジョンIDを取得してもよい。但し、定義ファイルとの照合は製造メーカの事情によって変更されることのないベンダID及びデバイスIDに基づいて行う。
【0055】
また、上述した実施形態では、定義ファイルやドライバ自動インストールプログラムをCD−ROM19に記憶したが、DVD、FD、MO、各種メモリカードなどに記憶してもよいし、あるいは、外部からネットワークなどを経由して定義ファイルやドライバ自動インストールプログラムの提供を受けてHDD17等に記憶してもよい。
【0056】
更に、上述した実施形態では、スクリプトのないドライバのコールコマンド関連情報欄81に一つのハードウェア未指定コールコマンドを記述したが、オペレーティングシステムごとに複数のハードウェア未指定コールコマンドを列挙して記述してもよい。例えば、コールコマンド関連情報欄81に、オペレーティングシステムがマイクロソフト社のウィンドウズXPの場合のハードウェア未指定コールコマンドを記述し、続いてオペレーティングシステムがマイクロソフト社のウィンドウズ2000の場合のハードウェア未指定コールコマンドを記述してもよい。どのコールコマンドを使用するかはどのオペレーティングシステムがインストールされているかによって決めればよい。
【0057】
更にまた、上述した実施形態では、CD−ROM19に記憶した定義ファイルには一つのハードウェアに対して一つのドライバを対応付けたが、一つのハードウェアに対して複数のドライバを対応付けてもよい。例えば、コンピュータシステム10のモデムとして製造メーカAの製品aというモデムと製造メーカBの製品bというモデムが接続可能だとすると、両方のモデムについて定義を作成してCD−ROM19に記憶しておき、実際に接続されているモデムに応じてどちらの定義を用いるかを決めればよい。こうすれば、コンピュータシステム10にどちらのモデムが接続されていても1枚のCD−ROM19で対処することができる。
【図面の簡単な説明】
【図1】本実施形態のコンピュータシステムの概略構成を表すブロック図である。
【図2】ドライバ自動インストールプログラムのフローチャートである。
【図3】定義ファイルとハードウェア情報検出値を表す説明図である。
【図4】ドライバリストの表示画面を表す説明図である。
【図5】汎用インストーラのコマンドラインを表す説明図である。
【符号の説明】
10…コンピュータシステム、11…CPU、13…システムメモリ、15…チップセット、17…HDD、18…CD−ROMドライブ、19…CD−ROM、20…システムバス、23…ディスプレイコントローラ、25…ディスプレイ、27…キーボードコントローラ、29…キーボード、31…マウス、33…モデム、35…サウンドカード、36…マイク、37…スピーカ、39…ネットワークアダプタ、51…ベンダID欄、52…デバイスID欄、61…ドライバ名欄、71…スクリプト名欄、81…コールコマンド関連情報欄。

Claims (9)

  1. コンピュータに接続されたハードウェアを制御するドライバを自動インストールするドライバインストールシステムであって、
    汎用インストーラをコールするときに利用される情報を含み前記コンピュータに接続可能な1又は複数のハードウェアのドライバ情報と各ハードウェアの識別情報の一部である特定部との対応関係を記憶する第1記憶手段と、
    前記ドライバを汎用インストーラでインストールする際に必要となる所定形式で、前記コンピュータに接続されたハードウェアの識別情報を記憶する第2記憶手段と、
    前記コンピュータに現に接続されているハードウェアから該ハードウェアの識別情報の特定部を取得し、該取得した識別情報の特定部に対応するドライバ情報を前記第1記憶手段から取得し、該取得した識別情報の特定部を含む前記所定形式の識別情報を前記第2記憶手段から取得し、前記第1記憶手段から取得した前記ドライバ情報に基づいてドライバを自動インストールするにあたり前記第2記憶手段から取得した前記所定形式の識別情報を用いて前記汎用インストーラをコールして自動インストールを実行するインストール実行手段と、
    を備えたドライバインストールシステム。
  2. 前記第1記憶手段は、前記コンピュータに対して着脱自在な記憶媒体である、請求項1記載のドライバインストールシステム。
  3. 前記第1記憶手段は、前記コンピュータの外部から提供された前記対応関係を記憶する媒体である、請求項1記載のドライバインストールシステム。
  4. 前記第2記憶手段は、前記コンピュータに接続されたハードウェアの管理を行うオペレーティングシステムによって認識されたハードウェアの識別情報を前記所定形式で記憶する、請求項1〜3のいずれか1項に記載のドライバインストールシステム。
  5. 前記インストール実行手段は、前記コンピュータに接続されたハードウェアの管理を行うオペレーティングシステムのアプリケーションプログラムインタフェースとして提供された前記汎用インストーラを利用して前記ドライバの自動インストールを実行する、請求項1〜4のいずれか1項に記載のドライバインストールシステム。
  6. 前記ハードウェアのドライバ情報は、前記汎用インストーラをコールするコマンドラインのうち前記ハードウェアの前記所定形式の識別情報が未指定のものを含む、請求項1〜5のいずれか1項に記載のドライバインストールシステム。
  7. 前記ハードウェアの識別情報は、ベンダ、デバイス、サブシステム及びリビジョンをそれぞれ特定する識別符号を含み、前記ハードウェアの識別情報の特定部は、ベンダ及びデバイスをそれぞれ特定する識別符号である、請求項1〜のいずれか1項に記載のドライバインストールシステム。
  8. コンピュータが該コンピュータに接続されたハードウェアを制御するドライバを自動インストールするドライバインストール方法であって、
    前記コンピュータに現に接続されているハードウェアから該ハードウェアの前記識別情報の一部である特定部を取得する第1取得ステップと、
    汎用インストーラをコールするときに利用される情報を含み前記コンピュータに接続可能な1又は複数のハードウェアのドライバ情報と各ハードウェアの識別情報の特定部との対応関係を記憶する第1記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部に対応するドライバ情報を取得する第2取得ステップと、
    前記ドライバを汎用インストーラでインストールする際に必要となる所定形式で、前記コンピュータに接続されたハードウェアの識別情報を記憶する第2記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部を含む前記所定形式の識別情報を取得する第3取得ステップと、
    前記第2取得ステップで取得した前記ドライバ情報に基づいてドライバを自動インストールするにあたり前記第3取得ステップで取得した前記所定形式の識別情報を用いて前記汎用インストーラをコールして自動インストールを実行するインストールステップと、
    を含むドライバインストール方法。
  9. コンピュータに接続されたハードウェアを制御するドライバを自動インストールするドライバインストールプログラムであって、
    前記コンピュータに対し、
    前記コンピュータに現に接続されているハードウェアから該ハードウェアの識別情報の一部である特定部を取得する第1取得ステップと、
    汎用インストーラをコールするときに利用される情報を含み前記コンピュータに接続可能な1又は複数のハードウェアのドライバ情報と各ハードウェアの識別情報の特定部との対応関係を記憶する第1記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部に対応するドライバ情報を取得する第2取得ステップと、
    前記ドライバを汎用インストーラでインストールする際に必要となる所定形式で、前記コンピュータに接続されたハードウェアの識別情報を記憶する第2記憶手段から、前記第1取得ステップで取得した前記識別情報の特定部を含む前記所定形式の識別情報を取得する第3取得ステップと、
    前記第2取得ステップで取得した前記ドライバ情報に基づいてドライバを自動インストールするにあたり前記第3取得ステップで取得した前記所定形式の識別情報を用いて前記汎用インストーラをコールして自動インストールを実行するインストールステップと、
    を実行させるためのドライバインストールプログラム。
JP2002162562A 2002-06-04 2002-06-04 ドライバインストールシステム、その方法及びそのプログラム Expired - Fee Related JP4158423B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002162562A JP4158423B2 (ja) 2002-06-04 2002-06-04 ドライバインストールシステム、その方法及びそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002162562A JP4158423B2 (ja) 2002-06-04 2002-06-04 ドライバインストールシステム、その方法及びそのプログラム

Publications (2)

Publication Number Publication Date
JP2004013266A JP2004013266A (ja) 2004-01-15
JP4158423B2 true JP4158423B2 (ja) 2008-10-01

Family

ID=30431274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002162562A Expired - Fee Related JP4158423B2 (ja) 2002-06-04 2002-06-04 ドライバインストールシステム、その方法及びそのプログラム

Country Status (1)

Country Link
JP (1) JP4158423B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4873687B2 (ja) * 2006-02-09 2012-02-08 キヤノン株式会社 インストール装置およびその制御方法およびプログラム
JP4952978B2 (ja) * 2006-02-28 2012-06-13 ブラザー工業株式会社 インストーラを作成するためのプログラム,該プログラムを記憶する記憶媒体,情報処理装置
JP2008299725A (ja) * 2007-06-01 2008-12-11 Canon Inc ソフトウェア更新方法、情報処理装置、及びプログラム
JP5473391B2 (ja) * 2009-05-01 2014-04-16 三菱電機株式会社 保護制御装置

Also Published As

Publication number Publication date
JP2004013266A (ja) 2004-01-15

Similar Documents

Publication Publication Date Title
JP6874405B2 (ja) 情報処理装置、プログラム、システム
US7237238B2 (en) Method and apparatus for automated operating systems upgrade
US6581157B1 (en) System and method for detecting and updating non-volatile memory on an electronic adapter board installed in a computing system
US7010624B1 (en) System and method of software/firmware uploading and upgrading for peripheral devices
US6915514B1 (en) Information processing apparatus, information processing system, control method of information processing apparatus, control method of information processing system, and storage medium having programs capable of being read and stored by computer
US7500026B2 (en) Information processing apparatus control method for external device having both a wired interface and a wireless interface settings
KR100520058B1 (ko) 디바이스드라이버 업그레이드 시스템 및 디바이스드라이버업그레이드 방법
US7546597B2 (en) Data processing apparatus having function of installing device drivers
TW561412B (en) System and method for providing hardware driver installation
US20010018738A1 (en) Computer, controlling method therefor, recording medium, and transmitting medium
US20050162688A1 (en) Printing terminal, printing data outputting device, and computer and peripheral device using therefor
JP2003308215A (ja) 情報処理装置、制御方法、制御プログラム
JP2003527654A (ja) 自動的デバイスドライバコンフィギュレーション用方法、システム及びコンピュータ読取可能格納媒体
JP2010044579A (ja) 周辺装置、プログラム、およびドライバインストールシステム
US20090083651A1 (en) Method to manage driver program of image forming apparatus, and apparatus thereof
KR100601684B1 (ko) 외부 저장장치, 화상획득장치, 및 드라이버를 구동하는방법 및 시스템
JP4158423B2 (ja) ドライバインストールシステム、その方法及びそのプログラム
JP2006024155A (ja) 周辺装置
US7825323B2 (en) Electrical music apparatus capable of connecting with external device
JP4158422B2 (ja) ドライバインストールシステム、その方法及びそのプログラム
JP2003058378A (ja) 情報処理装置およびプログラムインストール方法および記憶媒体およびプログラム
US6832312B1 (en) Process for automatically installing video display software upon detecting new video display controller
JP2004272764A (ja) コンピュータシステムの機能拡張方法
US20040019896A1 (en) Method of automatic program installation for computer device
EP1594055A1 (en) System with application program and method for automatically installing the application program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050526

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080526

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080624

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080707

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110725

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110725

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120725

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120725

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130725

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees