не приходит событие trader.Connected
Atom
30.07.2012
SelfDeleted


S# 4.1.2. квик 6.02.0.39 W7 квик и VS2010 от имени админа верифайер говорит, что все настроено правильно файл лицензии в "моих документах" папка проекта и квик в корне диска "С"

код основан на примере SampleConsole:

            using (var waitHandle = new AutoResetEvent(false))
            {
                // создаем шлюз к Quik-у
                using (var trader = new RealTimeEmulationTrader<QuikTrader>(new QuikTrader(quikPath)))
                {
                    // подписываемся на событие успешного подключения
                    // все действия необходимо производить только после подключения
                    trader.Connected += () =>
                    {
                        Console.WriteLine("Подключение было произведено успешно.");

                        // извещаем об успешном соединени
                        waitHandle.Set();
                    };

                    Console.WriteLine("Производим подключение...");

                    // добавляем экспорт стобцов в таблице инструменты
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.LastTradePrice);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.LastTradeVolume2);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.MinStepPrice);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.MainSessionBeginTime);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.MainSessionEndTime);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.EveningSessionBeginTime);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.EveningSessionEndTime);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.MarginSell);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.MaxPrice);
                    trader.Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.MinPrice);

                    trader.Connect();
                    
                    // дожидаемся события об успешном соединении
                    <mark>waitHandle.WaitOne();</mark>

В SampleConsole подключение к квику срабатывает.

что посоветуете проверить?


Теги:


Спасибо:


Memory

Фотография
Дата: 31.07.2012
Ответить


У вас в коде написано

// подписываемся на событие успешного подключения // все действия необходимо производить только после подключения trader.Connected += () => { Console.WriteLine("Подключение было произведено успешно.");

// извещаем об успешном соединени waitHandle.Set(); };

Попробуйте экспортировать после получения waitHandle

Спасибо: Sergey Masyura

SelfDeleted

Фотография
Дата: 31.07.2012
Ответить


это только написано про "экспорт" столбцов )) на самом-то деле это активация этих столбцов в квик-трейдере.

но я попробовал (все равно больше ничего в голову не приходит) -- не помогло!

Спасибо:

Memory

Фотография
Дата: 31.07.2012
Ответить


Обработку ошибки попробуйте добавить


trader.ConnectionError += (f) =>
 {
    Console.WriteLine("Ошибка подключения. "+f.Message);
 };

может скажет чего полезного.

Спасибо: Sergey Masyura SelfDeleted

SelfDeleted

Фотография
Дата: 01.08.2012
Ответить


СПАСИБО!

Ошибка подключения библиотеки TRANS2QUIK.dll. А возникла она потому, что я начал работать на новом ноуте с 64-разрядной W7 (до этого код писался на 32-разрядной машине). Учесть переход на 64 я забыл, и никак не мог понять в чем дело. Ваш совет очень помог!

Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy