喫茶XRAYトップページ


[7738] DB接続不可時にアプリケーションを終了させるには返信 削除
2014/7/9 (水) 15:30:51 KSC
ご無沙汰しております。KSCです。

データベースアプリケーションにおいて、
DB接続中(一覧取得や更新等)に接続先のPC(データベースファイルが置かれている)
に何らかのトラブルが発生し、下記のようなエラーが当然の事ながら発生します。

「Unable to complete network request to host "192.168.100.10".
 Error writing data to the connection.
 確立された接続がホストコンピュータのソフトウェアによって中止されました。」

【開発環境】
 Delphi2007
 Firebird 1.56 SuperServer
 IBExpress

上記のエラーが発生した場合に「アプリケーションを終了させます。」のようなメッセージを
表示させて、アプリケーションを(強制的に)終了させるには、
どのような方法があるでしょうか?

方法を知ってみえましたらアドバイスをお願いしたいのですが...。

[7743] Re:DB接続不可時にアプリケーションを終了させるには返信 削除
2014/7/9 (水) 22:53:02 Mr.XRAY
▼ KSCさん

> 上記のエラーが発生した場合に「アプリケーションを終了させます。」のようなメッセージを
> 表示させて、アプリケーションを(強制的に)終了させるには、
> どのような方法があるでしょうか?


そうですよね.
これがないと.ちょっとね.
う〜ん,私どうしていたかな.
接続時はもちろんですが,クエリー実行時等も必要ことがありますからね.


[7748] Re2:DB接続不可時にアプリケーションを終了させるには返信 削除
2014/7/10 (木) 09:41:05 KSC
▼ Mr.XRAYさん

ご無沙汰しておりました。

> そうですよね.
> これがないと.ちょっとね.
> う〜ん,私どうしていたかな.
> 接続時はもちろんですが,クエリー実行時等も必要ことがありますからね.


「Unable to complete network request to host "192.168.100.10".
 Error writing data to the connection.
 確立された接続がホストコンピュータのソフトウェアによって中止されました。」

上記のエラーメッセージが表示された後に、アプリケーションを終了させようとすると
(「終了」メニューや「×」ボタンから)、アプリケーションによってまちまちなのですが、

a.そのまま終了する。
b.同じエラーメッセージが何回か表示されて終了する。
c.同じエラーメッセージが何回か表示されて終了できない為、
  タスクマネージャーからプロセスを強制的に終了させる。

cに関しては、アプリケーションを使ってもらっている社員では対応できない為、
システムの人間が対応せざる終えないのです。

で、何とかしたいな〜!!

と思っているしだいです。

[7753] Re3:DB接続不可時にアプリケーションを終了させるには返信 削除
2014/7/11 (金) 10:53:26 Mr.XRAY
▼ KSCさん

まだ,ソースコードを見て確認していないのですが,
私の場合,クエリかなんかのコンポーネントのイベント内で処理
していたと思います.
処理コードの最後に Abort を入れていたような.
Abort いれないと,終了しませんから.エラーから脱出不可になることも.
後で確認してみます.

[DBGridで削除や追加をさせない]
http://www.wwlnk.com/boheme/delphi/dbtips/css0200.htm

[System.SysUtils.Abort]
http://docwiki.embarcadero.com/Libraries/XE5/ja/System.SysUtils.Abort

Abort は,他のオブジェクト,例えば TPrinter にもあります.


INCM/CMT
Cyclamen v3.82