Home
製 品
Inno Setup
Toolbar2000
Toolbar97
StripReloc
その他...
サポート
ニュースグループ
連絡先
|
Inno Setup知識データベース
Inno Setup知識データベースには付属文書やFAQに含まれていない追加の情報を納めています。 (訳注:以下に示す情報は,2004年4月6日時点のスナップショットです。最新の情報に関しては,こちらをご覧下さい。)
BDE(Borland Database Engine)を配布する方法
記事作成: 2003-10-15 19:09 GMT by Jordan Russell
最終更新: 2003-10-26 23:51 GMT by Jordan Russell
32ビット版のInno SetupからBDEをインストールすることは可能です。次の手順に従ってください:
- MiniReg.exe [13KB, ソース]をインストール配布物のソースディレクトリにダウンロードしてください
(たいてい,スクリプトファイルを置いているディレクトリです)。MiniReg.exeは私(Jordan Russell)が
書いたユーティリティで,マイクロソフト社のREGSVR32.EXEの機能のサブセット版です
(REGSVR32.EXEを使わないのは,このファイルがWindows 95の最初のバージョンではインストールされていないからです)。
- Program Files\Common Files\Borland Shared\BDEフォルダにあるBDEINST.CABからBDEINST.DLLを取り出します。
このためには,WinZipを使うか,コマンドラインから"EXTRACT BDEINST.CAB"と打ち込んでください
(BDEINST.CABがBDEのディレクトリになければ,ここ,あるいはここをクリックして,
バージョン5.11 [3581 KB, md5sum e8a51ce7a07bbece55dad9307c65e224]をダウンロードしてください)。
- 取り出したBDEINST.DLLをインストール配布物のソースディレクトリに移動します。
- 次の行をスクリプトに追加します:
[Files]
Source: "MiniReg.exe"; DestDir: "{tmp}"
Source: "BdeInst.dll"; DestDir: "{tmp}"
[Run]
Filename: "{tmp}\MiniReg.exe"; Parameters: """{tmp}\BdeInst.dll"""
これだけです。この方法を使えば,実際のファイルのインストールとレジストリの設定を行うのはInno Setupではなく
ボーランド社のBdeInst.dllなので,いわゆる"認定されたインストーラ"の問題を回避できます。
エリアスの作成法
- Ralf Walhoeferがこれを行うAddAlias (~30KB, 2001-01-08)というプログラムを提供してくれました。
使用説明書とソースコードが含まれています。インストール配布物でこのプログラムを使用するには:
- スクリプトの[Files]セクションで,MiniReg.exeやBdeInst.dllと同じ要領でAddAliasプログラムを {tmp} へコピーする。
- スクリプトの[Run]セクションで,MiniReg.exeの次に {tmp}\AddAlias.exe を実行する。
- 自分で小さなDelphiのプログラムを書いて,スクリプトの[Run]セクションで実行し,TSession.AddAliasや
DbiAddAliasを呼び出して希望のエリアスを追加してもよいでしょう。あるいはこの機能をアプリケーションに
組み込んでもよいでしょう。起動時に必要なエリアスを作成するのです。
Darko Ivancevicがエリアスを作成する次のDelphiのコードを提供してくれました(私はこのコードをテストしていません)。
procedure CreateAlias;
const
FDbDriver = 'PARADOX';
SubDir = 'Data';
var
FAlias: string;
FAliasDir: string;
begin
FAlias := 'aLog2000';
Session.ConfigMode := cmPersistent;
if not Session.IsAlias(FAlias) then
begin
AliasDir := ExtractFilePath(ParamStr(0)) + SubDir;
Session.AddStandardAlias(FAlias, FAliasDir, FDbDriver);
Session.SaveConfigFile;
end;
end;
SQL Linkのインストール法
Holger Erneから引用:
「方法」の欄で説明されているBDEINST.DLL経由でBDEをインストール方法では,必要なファイルの大半が
インストールされます(私はバージョン5.1.1.1のbdeinst.dll(サイズ:3,67 MB(3,853,824 バイト))
で検証しました)。
あとはSQLドライバ自体を追加し,レジストリを設定してドライバを登録するだけです。
私は次の手順に従います(BDE&SQL-Linkがローカルのハードディスクの<BDEPATH>に
インストールされていることを想定しています):
1. 配布元のコンピュータ(開発システム)
=============================================
a) <BDEPATH>にあるbdedeploy.txtを読む。このファイルには,特定のデータベースをサポートとするのに,
再配布する必要のあるファイルに関する情報が書かれている。
例: Interbase用のSQL-Linkドライバ:
SQLINT32.DLL Interbaseドライバ
SQL_INT.CNF Interbaseドライバ用のBDE設定ファイル
b) regedit.exeを実行して,
HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\Setting\Drivers
の情報を調べる。データベース・ドライバに一致するサブキーを選択する
(たとえば,Interbase: subkey "INTRBASE")。(全てのサブキーと共に)このサブキーを
(たとえば,Interbase.regという名前で)エクスポートする([ファイル(F)] --> [エクスポート(E)...])。
2. インストール先のコンピュータにインストール
=============================================
a) BDEINST.DLLを用いる方法で,BDEをインストール
b) SQL-Linkドライバ(1.aのファイル)をインストール先のコンピュータのBDEをインストールした
ディレクトリにコピー(このディレクトリは,
HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\DLLPATHから取得できる)
c) レジストリのスクリプト(1.bで作成したファイル)を実行
もちろん,セットアップ・プログラムに2.a)〜2.c)の過程を自動的に実行させてもよい。
(a)のドライバと(b)のレジストリ・スクリプト[レジストリの設定をインストール用のスクリプトに追加してもよい。
お好きなように...]を配布元のディレクトリに追加して,インストール配布物をビルドしてもよい。
注:方法は私の場合はうまくいったが,皆さんがうまくいなくても責任ではありません!
ユーザーにディレクトリを選択するダイアローグをを表示させないようにできますか?
このBDEのインストール方法では,できないと思います。
自作のプログラムをアンインストールするとき,BDEは削除されますか?
残念ですが,「No」です。
それに,BDEのディレクトリを抹殺するのに[UninstallDelete]セクションのエントリを使用するのは,よい考えではありません。ユーザーがインストールした他のアプリケーションがBDEに依存しているかも知れないからです。
Site contents Copyright © 1997-2004 Jordan Russell. All rights reserved.
|