タイトル DDE処理での&MESSAGE関数の使用について
詳細 項目部品をDDEサーバとしDDE処理を行なう際に処理内で&MESSAGEによるメッセージボックスを表示した場合、DDEクライアント側の処理が遅延もしくは2回目以降のDDE処理が実行されない問題が発生いたします。

WindowsのDDE通信ではクライアントとサーバー間のデータ トランザクションを開始します。 DDE は非表示のウィンドウを作成し、クラス名は DDEMLAnsiClient と DDEMLAnsiServer になります。 これらのウィンドウは、WM_DDE_POKEのようなメッセージを使い互いに通知し合います。その際、メッセージ キューをブロックしてはいけないのですが、メッセージボックスのようなモーダル ダイアログが使用された場合、メッセージ キューがブロックされてしまいます。
このため、DDEクライアント側でタイムアウトが発生するまで遅延が発生したり、サーバ側のDDE処理が動作しないなどの問題が発生します。

DDE処理内でのメッセージボックスの表示はDDE処理の妨げになりますので、DDE処理内ではメッセージボックスを使用しないようお願いいたします。

環境 Version 全バージョン
OS 全てのWindows OS
更新日 2002.11.28