Windows 2003 Server で DataSnap Delphi 2009 アプリケーションを実行します。DataSnap クライアントとサーバーは同じコンピュータ上にあり、Borland Socketserver 経由で DCOM を使用します。クライアントはバックグラウンド バッチ ジョブを実行します。
場合によっては、クライアントがサーバー アプリケーションに接続できず、サーバー デスクトップにメッセージ ダイアログが表示され、「サーバーに接続できませんでした。ネットワーク パスが見つかりませんでした」などのメッセージが表示されることがあります。または「Objectexporter が見つかりません。」
私たちの Delphi クライアント コードは、メッセージ ダイアログを使用してエラーや例外を表示することはありません。代わりに、try ... except .. finally ... end とログを使用して接続エラーを処理しているため、ダイアログは DataSnap メソッドによって作成されていると思います。このモーダル ダイアログ ボックスを非表示にする方法はありますか?
更新: すべての例外は下位レベルのルーチンで処理されます。メイン ループは、例外が発生したとき (処理または未処理) の切断と再接続を処理します。
while True do
begin
Connect;
while True do
begin
try
DoMyWork;
except
Break;
end;
end;
Disconnect;
end;