Конфликт DDE серверов

 

Все знают, что можно получить данные из терминала в excel с помощью функции МТ "DDE сервер".

Но что будет если одновременно запущено несколько терминалов подключенных к разным ДЦ?

Excel будет получать котировки только с терминала, который был запущен раньше.

Ведь MT4 – имя терминала MetaTrader всегда одинаковое для любого терминала.

МТ вроде создает OLE-объект с именем МТ4 и второй терминал уже получается не может занять это имя.

Как это обойти?

Надо получать в excel данные с нескольких терминалов.

 

Выяснил, что в Excel это ни ка не обойти. Можно вроде на Builder c++ написать программу для приёма данных через DDE сразу с нескольких МТ.

Дальше рыться в этой теме не стал, т.к. отпала надобность получать данные через DDE. Ask, Bid - мало этого оказалось. 

 
Теоретически наваять такой dde-клиент ( с оговорками и ограничениями ) с помощью winapi можно, практически -- настоятельно не рекомендуется. Технология dde заточена под схему "один отправитель -- один получатель" и в основном по этой причине устарела ещё лет 10 тому назад. Это я к тому, что если вдруг захочется к ней вернуться. :)))
 
Все МТ4 будут отправлять данные в один приёмник. Если бы разработчики предусмотрели уникальные имена для разных терминалов, то можно было бы отправлять куда захочешь.
Причина обращения: