"Geograf�a y Electr�nica, SA de CV" wrote:
>
> Dear list:
>
> I have a mapinfo_program1.mbx comunicating via DDE with an external
> visualbasic program.
>
> When I open a mapinfo dialog, a standard mapinfo dialog or a custom dialog
> created by another mapinfo_program2.mbx, all DDE processes stop for as long
> as the dialog is on screen. All DDE messages/commands are "buffered" and
> released after the dialog is closed.
>
> Is there a way to prevent this, and have the program1 running in the
> background and processing its DDE messages when there's a mapinfo dialog in
> progress?
The only way I know to do this is to intercept all program
requests to menus or dialogs and before passing them on to the
actual routine (via run menu command or similar) issue a 'Set
Handler RemoteMsgHandler off' This disable the RMH, and the DDE
messages arriving in the meantime are lost. However, it does get
rid of Before returning control, turn the handler back on.
Writing the code to intercept all MapInfo controls is pretty
tedious, too, but you can rewrite all the menus to pass through
your own routines first if you need them to. Also this technique
throws the DDE messages away. If that's not acceptable, then
maybe your intercept code should also tell your VB app to do
something else with the messages until your MB app is free again.
- Bill Thoen
------------------------------------------------------------
GISnet, 1401 Walnut St., Suite C, Boulder, CO 80302
tel: 303-786-9961, fax: 303-443-4856
mailto:[EMAIL PROTECTED], http://www.ctmap.com/gisnet
------------------------------------------------------------
----------------------------------------------------------------------
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]