← Назад

старт экспорта dde в 2.0.1 часто не проходит

Приветсвую, Михаил!

Столкнулся с тем что после перехода на 2.0.1 стал часто получать при старте ошибку (ниже) Но со второго третьего раза запускается нормально (Quik не перестартовывал). У меня одного так или кто то еще сталкивался. До 2.0.1 такого не наблюдалось, хотя , возможно в более ранних версиях я экспортировал меньше таблиц, а именно не экспортировал OrdersTable.

// Экспорт запускается так: trader.StartDde(new[] { trader.SecuritiesTable, trader.TradesTable, trader.MyTradesTable, trader.OrdersTable });

Спасибо и с уважением!

System.InvalidOperationException: Нет информации о главном окне Quik. Возможно, было неуспешное подключение. в ♠.☻(String ☻) в ♠.☻(DdeTable ☻) в System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement] (IEnumerable1 source, Func2 keySelector, Func2 elementSelector, IEqualityComparer1 comparer) в System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement] (IEnumerable1 source, Func2 keySelector, Func2 elementSelector) в ♠.☻(IEnumerable1 ☻, Action2 ♥) в ♠.☻(IEnumerable1 ☻) в Ecng.Trading.Quik.QuikTrader.StartDde(IEnumerable`1 ddeTables)

Комментарии (7)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

Mikhail Sukhov
Mikhail Sukhov

Стартовать экспорт нужно после успешного соединения, тоесть события Connected.

Tauler
Tauler

Была такая же фигня, и стало так в версии 2.0.1, в версии 2.0 достаточно было сделать trader.Connect(); и сразу можно было стартовать DDE

Tauler
Tauler

Может сделать метод trader.Connect() синхронным?

Mikhail Sukhov
Mikhail Sukhov

Это я сделал для того, чтобы можно было в случае разрыва связи находить квик заново. Например квик упал. Снова его подняли - робот должно подхватить новый Квик.

ustas
ustas Автор

Понятно, бум делать паузы...

Спасибо и с уважением!

Mikhail Sukhov
Mikhail Sukhov

Да не надо делать паузы. Запускайте экспорт из события Connected.

Tauler
Tauler

а сделать метод Connect() синхронным нельзя? было бы просто - кому надо - пусть на событие коннектед подписывается, кому нет - вызвал коннект и запуская себе экпорты