状況
Borland の Delphi という開発ツールで BDE(Borland Database Engine) を使って Microsoft
製の Access 97 のデータベースファイル MDB にアクセスするアプリケーションを作成して
Windows 2000 + Office 2000 の環境では問題無く使用できていました。
しかし、XP や Vista ではそのアプリが正常に動作しなくなってしまったので、動作させるた
めの方法を探っていました。
対処方法
前提としては、あらかじめ使用するアプリと一緒に BDE がインストールされていることが
必要です。
1.XPの場合
(1) VB6.0 のランタイムをインストールする。
(これは次の DAO3.5 ランタイムを入れるのに必要)
http://www.vector.co.jp/soft/dl/win95/util/se195042.html
の vb61.lzh
(すでに MS Access 97 をインストールしてある環境には不要)
(2) DAO3.5 のランタイムをインストールする。
http://www.vector.co.jp/soft/dl/win95/util/se195042.html
の vb62.lzh
(すでに MS Access 97 をインストールしてある環境には不要)
(3) あらかじめインストールした BDE (C:\Program
files\Common files\Borlan Shared\BDE)
の中の BDEADMIN.EXE を実行。
環境設定を開き、Drivers\Native\MSACCESS を開き、DLL32 のところを
IDDAO32.DLL から IDDA3532.DLL に変更して、オブジェクトメニューを開いて
更新する。(すでに IDDA3532.DLL になっていれば変更の必要はありません)
※ (1) (2) のかわりに、MS Office 97 の CD に入っている ValuPack フォルダにある
DATAACC.EXE(Data Access Component) というのでも大丈夫だと思います。
以上で、XP でも ACCESS 97 データベースへのアクセスが可能になります。
2.Vista の場合
(1) VB6.0 のランタイムをインストールする。
(これは次の DAO3.5 ランタイムを入れるのに必要)
http://www.vector.co.jp/soft/dl/win95/util/se195042.html
の vb61.lzh
(すでに MS Access 97 をインストールしてある環境には不要)
(2) DAO3.5 のランタイムをインストールする。
http://www.vector.co.jp/soft/dl/win95/util/se195042.html
の vb62.lzh
(すでに MS Access 97 をインストールしてある環境には不要)
Vista では、上記インストールで DAO350.DLL の登録に失敗してしまうので
無視してインストールを継続する。
(3) プログラムのアクセサリにある、コマンドプロンプトを右クリックし、管理者と
して実行する。
(4) 登録に失敗した DAO350 を登録するため、下記コマンドを実行する。
regsvr32.exe "C:\Program
Files\Common Files\microsoft shared\DAO\dao350.dll"
登録に成功したメッセージが表示されればOK。
(5) あらかじめインストールした BDE (C:\Program
files\Common files\Borlan Shared\BDE)
の中の BDEADMIN.EXE を実行。
環境設定を開き、Drivers\Native\MSACCESS を開き、DLL32 のところを
IDDAO32.DLL から IDDA3532.DLL に変更して、オブジェクトメニューを開いて
更新する。
※ (1) (2) のかわりに、MS Office 97 の CD に入っている ValuPack フォルダにある
DATAACC.EXE(Data Access Component) というのでも大丈夫だと思います。
(6) Vista では、実際に実行するアプリが XP 互換モードじゃないとうまくいかないので
BDE を使用するアプリ(exe) を右クリックして、互換性タブを開き、互換モードのチェック
を付けて XP SP2 のモードにしておく。
以上で Vista 上でも ACCESS 97 データベースにアクセスが可能になります。
|