(57)【要約】【課題】オペレーションシステムや製品別に専用のインストーラを用意する必要がある。また、ファイル名の変更や使用するファイル数の変更のたび全てのインストーラを書き換える必要がある。【解決手段】ハードウェアやオペレーションシステムに依存して書き換える必要がある文字列を除く汎用的な部分だけをインストーラに記述する。ハードウェアやオペレーションシステムに依存する情報は、インストールの実行に先立ち、これらの文字列を含む他のファイル（インストーラ以外のファイル）から自動的に取得する方式を採用する。【選択図】図１
2005141367.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
インストールの実行に先立ち、インストールに必要な文字列を他のファイルから取得させる工程と、
取得された文字列を参照してインストールを進行させる工程と
を実行させるインストール補助プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２】
請求項１に記載の記録媒体において、
前記文字列は、ドライバファイル名を示す情報である
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項３】
請求項１に記載の記録媒体において、
前記文字列は、ドライバの設定情報を示す情報である
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項４】
請求項１に記載の記録媒体において、
前記文字列は、ドライバファイルのコピー先を示す情報である
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項５】
請求項１に記載の記録媒体において、
前記文字列は、会社名、モデル名又はハードウェア識別キーを示す情報である
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項６】
請求項１に記載の記録媒体において、
前記他のファイルは、インストールを実行するコンピュータがネットワーク経由で接続された記憶装置に格納されている
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項７】
コンピュータに、
インストールの実行に先立ち、インストールに必要な文字列を他のファイルから取得させる工程と、
取得された文字列を参照してインストールを進行させる工程と
を実行させるインストール補助プログラム。
【請求項８】
コンピュータを内蔵する情報処理装置であって、
インストール補助プログラムが保存される第１のメモリ領域と、
前記インストール補助プログラムによるインストールの実行に先立ち、インストール補助プログラム以外の他のファイルから取得されたインストールに必要な文字列が保存される第２のメモリ領域と
を有し、前記インストール補助プログラムの実行中に、前記第２のメモリ領域を随時参照しながらインストールを進行することを特徴とする情報処理装置。
【請求項９】
請求項８に記載の情報処理装置は、
自装置内にインストール情報を含む前記他のファイルが存在しない場合に、ネットワーク経由でインストールに必要な文字列を取得するインタフェース部を有する
ことを特徴とする情報処理装置。
【請求項１０】
インストール補助プログラムによるインストール時に、
インストールの実行に先立ち、インストールに必要な文字列を他のファイルから取得する工程と、
取得された文字列を参照してインストールを進行させる工程と
を実行することを特徴とするインストール方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードウェア又はソフトウェアをインストールする際に用いる補助プログラムに関する。また、同プログラムを記録した記録媒体に関する。また、同プログラムによるインストール方法に関する。また、同プログラムを実行する情報処理装置に関する。
【背景技術】
【０００２】
コンピュータの普及に伴い、比較的知識の乏しいユーザが、周辺装置やアプリケーションプログラムをコンピュータにインストールする機会が増えている。ところで昨今は、周辺装置やアプリケーションプログラムが多機能化する傾向にある。これに伴い、インストール作業が非常に複雑なものになっている。
【０００３】
そこで昨今では、メーカやベンダー会社が、インストール作業を補助するプログラム（すなわち、インストーラ）を製品毎に作成し、ユーザに配布している。製品に付属したインストーラを用いることにより、比較的知識の乏しいユーザでも簡単にインストール作業を行うことができる。
【０００４】
ところで、インストーラの作成には、インストーラ専用の作成プログラムが用いられる。例えば、オペレーションシステムがWindows （登録商標）の場合、InstallShield（登録商標）と呼ばれるプログラムが用いられる。インストーラの作成時には、インストール実行時に必要とされるファイル名、ファイルのコピー先、設定値等が収集され、インストーラ内に書き込まれる。
【０００５】
従って、インストールの実行時には、インストーラ内に格納されたこれらの情報が参考され、ハードウェアやソフトウェアの動作に必要なファイルのコピーや設定の変更が行われる。
【特許文献１】特開２００３−２１６３７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、インストーラの記述はオペレーションシステム毎に異なる。すなわち、オペレーションシステム毎に専用のインストーラを必要とする。また、機種毎についても専用のインストーラを必要とする。このため、ハードウェアとソフトウェアの組み合わせの数だけインストーラが必要となる。
【０００７】
一方、インストーラに記述したファイル名や設定値等に変更があると、関連する全てのインストーラを作り直す必要がある。この作業は、インストーラの作成に要した時間や費用を考えると非常に効率が悪い。加えて、インストーラは特殊な関数を用いるため、そのメンテナンスを誰もが行えるわけではない。
【課題を解決するための手段】
【０００８】
本発明は、以上の課題を考慮してなされたものであり、前述した問題を解決することを目的とする。
【０００９】
かかる目的を実現するため、本発明の一つでは、ハードウェアやオペレーションシステムに依存して書き換える必要がない汎用的な部分だけをインストーラに記述し、書き換える可能性がある文字列は他のファイルから取得するインストール補助プログラムを提案する。すなわち、図１に示すように、インストールに必要な文字列を他のファイルから自動的に取得してインストールを進行するインストール補助プログラムを提案する。
【００１０】
このため本発明に係るインストール補助プログラムでは、準備処理と本処理の２段構成を採る。準備処理とは、要するに実行プログラムであるインストーラ内に記述されていない情報であってインストールの実行に必要な情報を、本処理で利用できるように準備する処理である。いかなる文字列を他のファイルから取得するかは、換言するといかなる文字列をインストーラに記述しないかは、メーカやベンダー会社の設定による。
【００１１】
例えば、文字列には、ドライバファイル名を示す情報を選択するのが好適である。かかる文字列を他のファイルから取得できれば、例えばドライバ自体を変更する場合でもインストーラの書き換えを不要にできる。なお、ドライバの名称に変更が生じる場合、又は、ドライバ数を変更する場合にもインストーラの書き換えを不要にできる。
【００１２】
また例えば、文字列には、ドライバの設定情報を示す情報を選択するのが好適である。かかる文字列を他のファイルから取得できれば、ドライバの設定情報に変更が生じる場合にもインストーラの書き換えを不要にできる。
【００１３】
また例えば、文字列には、ドライバファイルのコピー先を示す情報を選択するのが好適である。かかる文字列を他のファイルから取得できれば、ドライバファイルのコピー先に変更が生じる場合にもインストーラの書き換えを不要にできる。
【００１４】
また例えば、文字列には、会社名、モデル名又はハードウェア識別キーを示す情報を選択するのが好適である。これらの文字列を他のファイルから取得できれば、会社名や機種毎に専用のインストーラを作成しなくて済む。
【００１５】
なお、インストール補助プログラムがインストールに必要な文字列を取得する他のファイルは複数でも良い。他のファイルの名称は、インストール補助プログラム内に予め記述しておくのが好ましい。
【００１６】
もっとも、インストール補助プログラム内には、インストール情報を含むファイルへのリンク情報を記述することもできる。この場合、インストール補助プログラムは、このリンク情報を通じて間接的にインストール情報を含むファイルにアクセスすることができる。リンク情報を用いることにより、インストール情報を含むファイルの将来の変更にも対応できる。
【００１７】
図２に、以上説明した全ての情報を文字列として取得する場合の処理手順を示す。なお、文字列を取得する順番は一例である。インストール補助プログラム（以下、「インストーラ」という。）を起動すると、準備処理が実行される。先ず、プログラムが、インストール情報を含んだファイルを開く（Ｐ１）。
【００１８】
続いて、インストーラが他のファイルから会社名（Ｐ２）、モデル名（Ｐ３）、ハードウェア識別キー（Ｐ４）、ドライバファイル名（Ｐ５）、ドライバ設定情報（Ｐ６）、ドライバファイルのコピー先（Ｐ７）を順に取得する。かかる準備処理により、必要なとする全ての情報がインストーラに取り込まれると、インストーラは既存のインストール処理と同様にインストールの本処理を実行する（Ｐ８）。
【００１９】
かかるインストール補助プログラムを記録する記録媒体には、例えば、磁気ディスク（フレキシブルディスク又はハードディスク）又は磁気テープのような磁気記憶媒体、光ディスク、光テープ又はマシン読取り可能なバーコードのような光記憶媒体、半導体記憶装置の他、コンピュータプログラムを記憶するために使用される他の物理装置又は媒体を適用できる。
【００２０】
なお、インストール情報を含むファイルがインストーラを実行するコンピュータ上に存在しない場合には、図３に示すように、コンピュータ１とネットワーク２を経由して接続される記憶装置３から取得すれば良い。
【００２１】
例えば、インストーラ内に記述されているメーカやベンダー会社のＵＲＬ（Uniform Resource Locator）にアクセスすれば、必要な情報を取得することができる。また例えば、インストールに必要な情報を記述したファイル名を用いてネットワークを検索することにより、必要な情報を取得することができる。
【００２２】
かかる仕組みを採用することにより、ユーザは、常に最新のインストール情報を管理サーバ等から入手することができる。また、メーカやベンダーにとっても、ユーザのインストール情報を常に最新に保つことができる。
【００２３】
なお、かかるインストーラは、コンピュータを内蔵する情報処理装置であって、ハードウェアやソフトウェアをインストール可能なものに適用できる。情報処理装置には、コンピュータ装置の他、コンピュータ機能を搭載する各種の電子機器、例えば、携帯情報端末、ゲーム機、遊戯ロボット、携帯電話機、ビデオレコーダが含まれる。
【発明の効果】
【００２４】
本発明のように、インストーラが必要とする文字列を他のファイルから取得して実行する仕組みを採用することにより、メーカやベンダーがインストーラのメンテナンスに費やす労力をかなりの割合で低減することができる。
【発明を実施するための最良の形態】
【００２５】
（１）実施形態例
以下、コンピュータにプリンタをインストールする場合について、本発明の実施形態を説明する。なお、本明細書で特に図示又は記載されない技術については、当該技術分野において知られている技術を適用する。
【００２６】
図４に、コンピュータの内部構成を示す。ハードウェア自体は、周知の構成である。この例のコンピュータ１０は、中央処理装置１０Ａ、主記憶装置１０Ｂ、補助記憶装置１０Ｃ、入力装置１０Ｄ、出力装置１０Ｅ、インタフェース装置１０Ｆを有する。
【００２７】
主記憶装置１０Ｂは、例えばＲＯＭ（Read Only Memory）やＲＡＭ（Random
Access Memory）等の記憶装置でなる。主記憶装置１０Ｂには、周辺機器との入出力を制御する基本プログラムの他、オペレーションシステムやアプリケーションプログラムが記憶される。この主記憶装置１０Ｂは、ソフトウェアの作業領域としても使用される。インストーラも当該作業領域を使用して実行される。
【００２８】
なお、主記憶装置１０Ｂは、インストーラを保存するメモリ領域１０Ｂ１を有する。また、主記憶装置１０Ｂは、インストーラの本処理に先立って取得した文字列を保存するメモリ領域１０Ｂ２も有する。メモリ領域１０Ｂ２に書き込まれた文字列は、インストーラの実行中に随時参照される。図４の場合、メモリ領域１０Ｂ２とメモリ領域１０Ｂ１を別の領域として表しているが、メモリ領域１０Ｂ２はメモリ領域１０Ｂ１の一部であっても良い。
【００２９】
補助記憶装置１０Ｃは、例えば、ハードディスクドライブ装置や取り外し可能な記録媒体のドライブ装置でなる。例えば、インストーラがＣＤ−ＲＯＭ（Compact Disc Read Only Memory ）に記録されている場合、ＣＤ−ＲＯＭドライブが用いられる。もっとも、記録媒体には、例えば、磁気ディスク（フレキシブルディスク）又は磁気テープのような磁気記憶媒体、光ディスク、光テープ又はマシン読取り可能なバーコードのような読み取りに光を用いる光記憶媒体、半導体記憶装置の他、データやコンピュータプログラムを記憶するために使用される他の物理装置又は媒体を適用できる。
【００３０】
入力装置１０Ｄは、例えば、キーボードやマウスその他のポインティングデバイスでなる。ソフトウェアを実行する中央処理装置１０Ａに対する指示は、入力装置１０Ｄを用いて行われる。
出力装置１０Ｅは、例えば、表示装置やスピーカでなる。表示装置の画面上には、例えば、インストーラのユーザインタフェース画面が表示される。
【００３１】
インタフェース装置１０Ｆは、例えば、プリンタとの通信デバイスでなる。例えば、ＵＳＢ（Universal Serial Bus）インタフェースやネットワークインタフェースが用いられる。インストール情報を含むファイルをネットワーク上から取得する場合には、ネットワークインタフェースによってネットワークと接続される。
【００３２】
図５−１及び図５−２に、コンピュータ１０で実行されるインストーラの処理手順を示す。図５−１及び図５−２は、インストーラの処理手順のうち主要な部分だけを表している。なお、この処理手順は、オペレーションシステムがWindows（登録商標）の場合である。図５−１及び図５−２は、インストーラに、“会社名”、“モデル名”、“ハードウェア識別キー（プラグ・アンド・プレイの実行の際に必要なキー）”、“ドライバファイル名”、“ドライバファイルのコピー先”の各情報が記述されていない場合の例である。
【００３３】
起動したインストーラは、まず自身と同じＣＤ−ＲＯＭに格納されている初期設定用ファイルを開く（Ｐ１０）。図６に、初期設定用ファイル（ＩＮＦファイル）の一例を示す。この初期設定用ファイルには、インストーラが必要とする基本的な情報が記述されている。
【００３４】
次に、インストーラは、VersionセクションのProviderフィールドからそのフィールド値を取得する（Ｐ１１）。このフィールドには、プリンタのメーカ名又はベンダー名を示す文字列が記述されている。この例の場合、このフィールドには、会社名として“Sony
Corporation”が記述されている。参考までに、このフィールドの記述位置を図７に示す。
【００３５】
次に、インストーラは、Manufacturerセクションを参照する。インストーラは、先に取得した会社名と同じ文字列が記述されたフィールドを検索し、そのフィールド値を取得する（Ｐ１２）。この例の場合、このフィールドには、“SONY（登録商標）”が記述されている。
【００３６】
インストーラは、先に取得した文字列“SONY”と同じセクション名を検索し、そのフィールド名をプリンタのモデル名として取得する（Ｐ１３）。この例の場合、モデル名として“Sony
Katiz LQG-2582”が記述されている。参考までに、これらの文字列の記述位置を図８に示す。
【００３７】
次に、インストーラは、同じく文字列“SONY”と同じセクション名を検索し、今度はそのフィールド値を取得する（Ｐ１４）。この例の場合、フィールド値として“SONY.GDI,USBPRNT\SONYLQG-2582RTYZ”が記述されている。参考までに、この文字列の記述位置を図９に示す。
【００３８】
インストーラは、このＰ１４の処理で取得したフィールド値のうちコンマ手前の部分までの値、すなわち“SONY.GDI”を取得する（Ｐ１５）。この値は、後の処理で使用される。
また、インストーラは、同じくＰ１４の処理で取得したフィールド値のうちコンマ以降の部分の値、すなわち“USBPRNT\SONYLQG-2582RTYZ”を取得する（Ｐ１６）。この値がハードウェア識別キーである。ハードウェア識別キーは、プラグ・アンド・プレイ機能の実現に必要な情報である。
【００３９】
次に、インストーラは、Ｐ１５の処理で取得したフィールド値“SONY.GDI”と同じセクション名を検索する。この例の場合、このセクションには、２つのフィールド名が記述されている。インストーラは、それらのうち“CopyFiles”と記述されたフィールドの値を取得する（Ｐ１７）。この例の場合、フィールド値として“SONY_GDI_COPY,SONY_ICM,SONY_MONITOR”が記述されている。参考までに、この文字列の記述位置を図１０に示す。
【００４０】
このフィールド値には、ドライバファイルの記述位置を与える文字列が記述されている。このフィールド値はコンマで区切られていることも多い。すなわち、複数のセクションに対応する場合が多い。区切り方は、コピー先が同じかどうかである。インストーラは、このフィールド値を構成する文字列をコンマ毎に取出し、各文字列をセクション名とする全ての文字列をファイルリストとして取得する（Ｐ１８）。この例の場合、“SONY_GDI_COPY”、“SONY_ICM”、“SONY_MONITOR”のそれぞれに対応するセクション名の部分が、ファイルリストとして取得される。
【００４１】
次に、インストーラは、Ｐ１５で取得したフィールド値“SONY.GDI”と同じセクション名を検索する。インストーラは、今度は２つのフィールド名のうち“DataSection”のフィールド値を取得する（Ｐ１９）。この例の場合、フィールド値として“SONY_GDI_DATA”が記述されている。参考までに、この文字列の記述位置を図１１に示す。
【００４２】
インストーラは、取得した文字列“SONY_GDI_DATA”と同じセクション名を検索し、そのセクションからドライバの設定情報を取得する。この例の場合、インストーラは、DriveFileフィールドからフィールド値“zkatiz.DLL”を取得する（Ｐ２０）。同様に、インストーラは、ConfigFileフィールドからフィールド値“zkatizui.DLL”を取得する（Ｐ２１）。
【００４３】
同様に、インストーラは、DataFileフィールドからフィールド値“zkatiz.BDF”を、HelpFile“フィールドからフィールド値”katiz.chm“を、LanguageMonitorフィールドからフィールド値”Sony
Katiz Language Monitor,zkatizlm.dll“を取得する（Ｐ２２〜Ｐ２４）。
【００４４】
この後、インストーラは、DestinationDirsセクションを検索し、Ｐ１７の処理で取得したフィールド値を構成する各文字列と同じフィールド名を有する記述部分又はDefaultDestDirフィールドの部分のフィールド値を取得する（Ｐ２５）。参考までに、この文字列の記述位置を図１２に示す。
【００４５】
DestinationDirsセクションは、ドライバのコピー先を記述する部分である。この例の場合、DefaultDestDirフィールドに対応するフィールド値“66000”と、SONY_ICMフィールドに対応するフィールド値”66003“と、SONY_MONITORに対応するフィールド値”66002“が取得される。
【００４６】
インストーラは、Ｐ２５の処理でフィールド値を取得すると、各ドライバファイルのコピー先を図１３に示す関数を用いて取得する（Ｐ２６）。これにより、本例で必要とする全ての情報が、初期設定用ファイルの中からインストーラに取得される。これ以降は、取得した情報を参照しながらインストール処理に伴うファイルのコピーや設定の変更が実行される。
【００４７】
このように、インストーラ内には汎用的な部分だけを残し、必要な情報は他のファイルから自動的に取得する方式を採用することにより、インストーラのメンテナンスに要する労力を格段に低減できる。また、このインストーラはメーカやベンダーが提供するインストーラであるため、ユーザのニーズに応じた詳細な設定をユーザフレンドリーなグラフィックインタフェース画面を通じて実現できる。
【００４８】
また、製品の開発中にファイル数の増減やファイル名の変更があった場合にも、メーカやベンダーはその情報をＩＮＦファイルに反映するだけで良くメンテナンスが容易である。また、インストーラ自体をメンテナンスする必要性が格段に減るため、設定内容のメンテナンスに伴う不具合の発生を一段と低下できる。
【００４９】
（２）他の実施形態
上述の実施形態では、コンピュータにプリンタをインストールする場合について説明したが、プリンタ以外の電子機器やソフトウェアをインストールする場合にも適用し得る。例えば、コンピュータに、スキャナ装置、スキャナとプリンタの複合機、ファックス、ＬＡＮカード、モデム、記録媒体のドライブ装置、プロジェクタ装置、ゲーム機、デジタルカメラ、撮像装置、ビデオレコーダ、ビデオプレーヤ、オーディオ装置、ストレージ装置、情報処理装置その他の電子機器をインストールする場合に適用し得る。
【００５０】
前述の実施形態は、オペレーションシステムがWindows NT（登録商標）の場合であったが、他のオペレーションシステムの場合にも同様に適用し得る。
【図面の簡単な説明】
【００５１】
【図１】本発明によるインストーラの概念構成を示す図である。
【図２】本発明を適用したインストーラの概念的な処理手順を示す図である。
【図３】インストーラに必要な情報をネットワーク経由で取得する場合の概念図である。
【図４】コンピュータの内部構成例を示す図である。
【図５−１】インストーラで実行される処理手順例を示す図である。
【図５−２】インストーラで実行される処理手順例を示す図である。
【図６】インストールに必要な情報を含むファイルの一例を示す図である。
【図７】会社名の取得を説明する図である。
【図８】モデル名の取得を説明する図である。
【図９】ハードウェア識別キーの取得を説明する図である。
【図１０】ドライバファイル名の取得を説明する図である。
【図１１】ドライバ設定情報の取得を説明する図である。
【図１２】コピー先の情報の取得を説明する図である。
【図１３】コピー先情報を与える数値の意味を示す図表である。
【符号の説明】
【００５２】
１        コンピュータ
２        ネットワーク
３        記憶装置
１０Ｂ    主記憶装置
１０Ｂ１  メモリ領域（インストーラ用）
１０Ｂ２  メモリ領域（取得情報用）
【図１】
2005141367.tif 000003
【図２】
2005141367.tif 000004
【図３】
2005141367.tif 000005
【図４】
2005141367.tif 000006
【図５−１】
2005141367.tif 000007
【図５−２】
2005141367.tif 000008
【図６】
2005141367.tif 000009
【図７】
2005141367.tif 000010
【図８】
2005141367.tif 000011
【図９】
2005141367.tif 000012
【図１０】
2005141367.tif 000013
【図１１】
2005141367.tif 000014
【図１２】
2005141367.tif 000015
【図１３】
2005141367.tif 000016