Borland Database Engine エラー $2109 初期化中にエラーを回避するには?


ぺがさす  2005-06-16 19:16:35  No: 15706  IP: 192.*.*.*

以下の現象が発生してしまいます。初歩的な設定ミスだとは思うのですが、見れば見るほどツボにはまって訳が分からない状態です。同様の経験が有る方、知識をお持ちの方、ご教授お願い致します。
  OS:Windows Server 2003 Service Pack 1
  現象:BDEを利用したアプリケーションをサーバ上で実行中に、BDE Administratorを実行すると、
『Borland Database Engine エラー  $2109 初期化中にエラー』が発生します。
        または、BDE Administratorを実行中にBDEを利用したアプリケーションを実行すると同様のエラーが発生ます。
  動作環境:アプリケーションは全てサーバ上で動作させています。端末からのアクセスは今のところ行っておりません。
SP1の適用を行った辺りからどうも動作が怪しい状態です。ご教授お願い致します。

編集 削除
RAN  2005-06-16 21:18:32  No: 15707  IP: 192.*.*.*

アクセス権はありますか?
またレジストリが壊れている場合もあります。
BDEの再インストールが必要かもしれません。

編集 削除
ぺがさす  2005-06-17 09:46:23  No: 15708  IP: 192.*.*.*

ご指導ありがとうございます。
一応、BDEは再インストールを行ってみましたが、
変わりなく当現象が発生してしまいます。

編集 削除
RAN  2005-06-17 12:22:39  No: 15709  IP: 192.*.*.*

レジストリのアクセス権はどうでしょう?
セキュリティ・ポリシーでブロックされている、なんて事はありませんか?

編集 削除
ぺがさす  2005-06-17 13:20:57  No: 15710  IP: 192.*.*.*

ありがとうございます。
調査してみます。

編集 削除
ん?  2005-06-17 13:46:18  No: 15711  IP: 192.*.*.*

今更ながら確認ですが、質問の内容が
『「BDE Administrator」と「BDEを使ったアプリ」が同時に起動できない』
という趣旨でしょうか?

それだと、アクセス権みたいなものは関係なさそうな気もしますが。
むしろデータベースに何を使用しているかのほうが、重要そうに思えます。

すでに検索済みかもしれませんが、「Borland Database Engine $2109」でぐぐっても、解決できそうなものはありませんでした。

編集 削除
ぺがさす  2005-06-17 14:13:59  No: 15712  IP: 192.*.*.*

DBはOracle  9.2.0.1です。
趣旨としては、BDEを使ったアプリを動作させていた時に、
BDEの設定を変更しようと思い立ち、
BDE Administrator を起動したらエラーが発生したものですから、
それから気になって、何とか回避しようと悪戦苦闘している状態です。

>検索済み
  そうですね、色々探し回って行き着いた場所がここだった訳です。

編集 削除
ん?  2005-06-17 16:05:49  No: 15713  IP: 192.*.*.*

「ORACLE BDE $2109」 のキーワードでぐぐったら、海外サイトしかみつからなかった。
しかも、英語ならともかく中国語は読めません(^^ゞ

[その1]
ここ(http://www.excite.co.jp/world/chinese/web/)
ここ(http://www.china-askpro.com/msg40/qa97.shtml)を翻訳しました。

日本語訳
> この類はデータベースの使うBDE別名が正しく設けていないでもたらすためで、
> BDE Adminプログラムを使って先によいデータベースの別名を設けるべきで、
> ようやくデータベースのプログラムに運行することができる。

意味不明だ。

[その2]
http://cbuilder.ru/faqs/faqd_en/16739.html
ここには、レジストリにIDAPI32.DLL のパスが書いてないんじゃないのか?って(読めた)書いてある。

これでは、解決できそうになさそうです。


どうもBDEの設定やらレジストリくさいのですが、
BDE Administratorで、環境設定−Drivers−Native−Oracle の設定。
DLL32やVENDOR INITあたりは、どうなっていますか?
Oracle7以降は、『SQLORA8.DLL + OCI.DLL にしましょう』と、どっかで読んだ記憶があります。

横やり入れましたが、あまりお役に立てそうにないです。申し訳ない。

編集 削除
ぺがさす  2005-06-17 16:39:20  No: 15714  IP: 192.*.*.*

ん?さん、ご返答ありがとうございます。
VENDOR  INITは、OCI.DLLになっております。

>あまりお役…
いえいえそんなことは有りません。何らかの書き込みをして頂くだけでも、救われる思いです。
私自身が見つけられなかった解決策を皆様に提供して頂くだけでも非常に助かっております。

編集 削除
ん?  2005-06-17 17:35:55  No: 15715  IP: 192.*.*.*

> Oracle7以降は、『SQLORA8.DLL + OCI.DLL にしましょう』と、どっかで読んだ記憶があります。
これの訂正

BDE Administratorの設定について。
http://www.sint.co.jp/siob/v7/faq/faqtech2.html

ここで、Oracle8.0.3以降は、以下のように設定するようにかいてありました。
DLL32:SQLORA8.DLL
VENDOR  INIT:OCI.DLL 

# 他にBorlandからの正式な発表として、どこかに記載されていたかと思うのですが、行方不明。


ちなみに、一つ忘れていましたが、アクセス権なんですが、Oracle9.xをインストールしたフォルダのセキュリティで、
Authenticated Users のアクセス許可がおかしくなるという現象がありました。
手動でAuthenticated Usersの権限を当て直すことで回避できます。
(この件についての詳細は、ぐぐれば見つかると思います。)

これは、最初の質問でもあるように
> BDEを利用したアプリケーションをサーバ上で実行中に、BDE Administratorを実行すると、
アプリケーションは起動できることから、関係ないと考えていたのですが、どうでしょう?

以上、絞り出せる情報は、これで打ち止めです。


Windows Server 2003 Service Pack 1 では、セキュリティが強化されたらしいですね。
どこが変わったのか知りませんが、結局はこれが一番の問題だったりすると困ったモノです。

編集 削除
RAN  2005-06-18 04:47:29  No: 15716  IP: 192.*.*.*

> 『「BDE Administrator」と「BDEを使ったアプリ」が同時に起動できない』
うわ、ぜんぜん理解していませんでした。変な回答をして、すみません。

同時に起動できない・・・この辺りでしょうか?
XP SP2の話なのですが、OSのバグらしいです。
http://groups.google.co.jp/group/borland.public.bde/browse_frm/thread/12c40f279660f927/e3fc6ba11a8515e4?tvc=1&q=sametime#e3fc6ba11a8515e4

2つの種類のアプリケーションを同時に開くと、idapi32.dllでOsGetSharedPtrが
失敗する(CPUウィンドウで確認)という話で、eWeekの記事にも出ています。

> although another tester reports that multiple applications 
> under SP2 cannot access the Borland Database Engine.
http://www.eweek.com/article2/0,1759,1624962,00.asp

回避策は・・・OSのビルドを上げて、対策済みのOSを導入するでしょうか?
NGのPrivateDirの話も興味をひいたのですが、ちょっと理解できませんでした。

編集 削除
RAN  2005-06-18 06:25:07  No: 15717  IP: 192.*.*.*

えーと、上記の話は全てWindows XPの話です。
Windows 2003は未確認と言う事で、あしからずです mOm

編集 削除
グー助  2005-06-27 11:00:32  No: 15718  IP: 192.*.*.*

ぺがさすさん、まさにその現象で頭悩ませております。
2つ以上のBDEを利用したアプリケーションが立ち上がりません。

SP1を削除すれば現象は出なくなりますが、今後の事考えるとそれで解決というわけにも行かなくて。。。
進展はありませんか?
検索幾らしても見つからず、ここに流れ着きました。。。。
どなたか解決された方はいらっしゃいませんでしょうか?

編集 削除
ぺがさす  2005-07-04 16:26:24  No: 15719  IP: 192.*.*.*

WindowsUpdateを1つずつかけていき、最終的には
SP1で問題が発生しているようですね。DCOMに問題が有るようです。
SP1さえUninstallしてしまえば問題なく動くようです。
SP2を待つしかないですね…

編集 削除
しー  2005-07-05 14:47:06  No: 15720  IP: 192.*.*.*

当方でも同様の問題にぶち当たり調査しました。
Windows Server 2003 SP1 +  IME2002 ver.8.1
の組合せで発生することがわかってます。

暫定的な回避策として
・ATOKなどを使用する。
・IMEをバージョンを上げる。もしくは下げる
・IME2002 Ver.8.1をアンインストールする。
と考えていますが、根本的な解決策としてはBDEを使用しないというのが確実だと思います。
WindowsUpdateはいつになることやら・・・。

編集 削除
HOta  2005-07-06 07:58:47  No: 15721  IP: 192.*.*.*

そうですね。IDEは開発停止になっていますし、DBExpressを使えばどうでしょうか?

編集 削除
おっ  2005-09-08 14:51:19  No: 15722  IP: 192.*.*.*

すでに二ヶ月が経過していますが・・・

何気なくDelphi-MLのメールを整理していたら、このスレの一ヶ月前に同じ現象があったようです。

質問者の結論として以下(しーさんの回答と「暫定的な回避策」と同じ)
> ・別の日本語入力ソフトをインストールし、それを使用する。
> ・MS-IMEを別のバージョンに変更する。
>   バージョンを上げる
>     MS-IME2003:Office2003、Onenote2003などに付属。
>   バージョンを下げる
>     MS-IME2002(ver.8.1が付かないもの):
>             OfficeXPなどに付属。
> ・MS-IME2002 Ver.8.1をアンインストールする。
>   ただし、日本語は入力できなくなる。


他に、『XP以降の言語バーの不具合』に着目し、言語バー(CTFMON.EXE)を
停止することで回避できるということも報告されています。
> [OFFXP] CTFMON プログラムの概要と機能
http://support.microsoft.com/default.aspx?scid=kb;ja;282599

一応、報告。

編集 削除