Подключение к Quik и запуск DDE

Подключение к Quik и запуск DDE
Atom
1/24/2011
vvt


Пробую подключение к Quik и запуск DDE из примеров (Sample, SampleSMA).
Все происходит очень медленно, поискал по форуму, есть несколько сообщений с такими же проблемами.
Железо вроде не самое слабое (Phenom II X2 555/8Gb/SSD), система Windows 7 Ultimate 64bit.
Запускаются Quik и примеры от имени администратора.
Хотелось бы все-таки с помощью Михаила докопаться до возможных причин таких тормозов.

В связи с этим первый вопрос:
после установки соединения с Квиком через QuikTrader.Connect() и поступления события Connected секунд где-то через 10 в Квике появляется окно "Выбор активных счетов и задание их очередности", которое висит и пропадает где-то через 30 секунд.
Так и должно быть?


Вот код этого консольного приложения:
Code
            Console.WriteLine("Запуск...");

            try
            {
                var waitHandle = new AutoResetEvent(false);

                // создаем шлюз к Quik-у
                var trader = new QuikTrader(@"C:\FinamJunior\info.exe");

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

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

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

                trader.Connect();

                // дожидаемся события об успешном соединении
                waitHandle.WaitOne();
                Console.ReadKey();

                trader.Dispose();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                Console.ReadKey();
            }

Tags:


Thanks:


1 2 3  > >>
Valdis

Avatar
Date: 1/24/2011
Reply


у меня тож примерно так же . секунд 10-30, иногда пошустрей иногда помедленней
Thanks:

Alexander

Avatar
Date: 1/24/2011
Reply


Тоже наблюдаю.

По этому поводу уже была дискуссия - подобное наблюдается только на Windows 7 (как 32bit, так и 64bit) и связано именно
со стартом DDE в этой операционной системе (под Windows XP всё моментально).

Если я не ошибаюсь, то:
Из окна "Выбор активных счетов и задание их очередности" экспортируются все текущие счета в квике и задаются портфели.
Данный экспорт запускается подленным и его медлительность также связаны с особенностью работы Квика в Windows 7.
Thanks:

vvt

Avatar
Date: 1/24/2011
Reply


Ну до старта DDE еще не дошло дело.
Если я правильно понимаю, то приложение сначала ждет появления окна "Выбор активных счетов и задание их очередности" и после его появления должно программно нажать кнопку "Да". Но почему оно это делает так медленно?
Thanks:

vvt

Avatar
Date: 2/1/2011
Reply


Похоже медленное подключение к Квику и запуск ДДЕ происходит из-за множества открытых окон программ (в моем случае Internet Explorer-а с кучей вкладок в каждой), чем их больше, тем медленнее идет процесс. Сейчас запущен только Google Chrome с 30-ю вкладками и сам Квик, соединение и запуск ДДЕ происходит за 16 секунд вместо 4 минут...
Thanks:

dart

Avatar
Date: 2/1/2011
Reply


vvt
Похоже медленное подключение к Квику и запуск ДДЕ происходит из-за множества открытых окон программ (в моем случае Internet Explorer-а с кучей вкладок в каждой), чем их больше, тем медленнее идет процесс. Сейчас запущен только Google Chrome с 30-ю вкладками и сам Квик, соединение и запуск ДДЕ происходит за 16 секунд вместо 4 минут...

Попробуйте на ХР. Выше уже писали что на В7 весь этот процесс занимает больше времени.
Моё ИМХО, что это не связано именно с S#.
Такое поведение многие отмечали у многих дотнетовских программ при переходе с ХР на В7.
Thanks:

Mikhail Sukhov

Avatar
Date: 2/1/2011
Reply


dart
vvt
Похоже медленное подключение к Квику и запуск ДДЕ происходит из-за множества открытых окон программ (в моем случае Internet Explorer-а с кучей вкладок в каждой), чем их больше, тем медленнее идет процесс. Сейчас запущен только Google Chrome с 30-ю вкладками и сам Квик, соединение и запуск ДДЕ происходит за 16 секунд вместо 4 минут...

Попробуйте на ХР. Выше уже писали что на В7 весь этот процесс занимает больше времени.
Моё ИМХО, что это не связано именно с S#.
Такое поведение многие отмечали у многих дотнетовских программ при переходе с ХР на В7.


Не смотрел еще причину, но думаю что и да и нет. S# использует поиск окон (что само по себе не быстрый процесс). Возможно в Win7 это работает медленнее, так как безопасность все время расширяется, а ее расширение постепенно подминает и производительность.

На следующей неделе я постараюсь с этим разобраться. Но сразу оговорюсь, ждать чуда не стоит. Если это можно поправить моими силами и в самом S#, я это сделаю. Иначе, увы.
Thanks:

Den

Avatar
Date: 3/10/2011
Reply


Mikhail Sukhov


Не смотрел еще причину, но думаю что и да и нет. S# использует поиск окон (что само по себе не быстрый процесс). Возможно в Win7 это работает медленнее, так как безопасность все время расширяется, а ее расширение постепенно подминает и производительность.

На следующей неделе я постараюсь с этим разобраться. Но сразу оговорюсь, ждать чуда не стоит. Если это можно поправить моими силами и в самом S#, я это сделаю. Иначе, увы.


Решил написать свои изыскания:

на одном форуме читал про проблему, что GetPixel стал работать в десятки раз медленнее на Win7 по сравнению с Win XP.
Человеку надо было читать цвет пикселей игрушки, запущенной в браузере. В итоге он разобрался и написал следущее:

"если получать пиксель используя хэндл рабочего стола (или контекст ус-ва, связанный с раб. столом в случае с GetPixel()), то тупит , если использовать например хэндл браузера, то работает быстро. Вот такая вот магия... "

Михаил, возможно из этого вы по аналогии сможете решить проблему долгого поиска окон на Win7: брать Handle от окна Quik для поиска таблиц.
Thanks:

Артем_2

Avatar
Date: 6/21/2011
Reply


Очень бесит сидеть на XP только из-за экспорта по DDE [confused]...Михаил можно ли выложить кусок чек кода, который запускает экспорт какой-нить таблицы с при менением поиска окон?- Может совместными усилиями получится нагуглить причину тормозов.
Thanks:

Alexander

Avatar
Date: 6/21/2011
Reply


Артем_2
Очень бесит сидеть на XP только из-за экспорта по DDE [confused]...Михаил можно ли выложить кусок чек кода, который запускает экспорт какой-нить таблицы с при менением поиска окон?- Может совместными усилиями получится нагуглить причину тормозов.


Давно под 7кой пробовали? :)
Относительно недавно был фикс, у меня сейчас работает реально шустро.
Thanks:

Артем_2

Avatar
Date: 6/21/2011
Reply


У меня на рабое семерка(работает в домене), дома виста, и есть комп с XP еще, поэтому есть возможность сравнивать:
W7- я плачу
Vista - в депрессии
XP - Летает

Особенно поражает разница в скорости работы верифаера... В XP он как на межгалактической станции отрабатывает, а в W7 или Vista гораздо медленнее. При разработке, во время тестов - это ОЧЕНЬ ограничивает, поэтому лучше сидеть на XP, т.к. в W7 при такой сорости могут нервы не выдержать.
После фикса стал быстрее отрабатывать запуск Quik, но на запуске экспорта я че-то не очень ощутил изменения.
Я вот думаю, может это все связано с появлением WPF в новых операционках,который многослоен, может это как-то увеличивает количество окон, участвующих в поиске, надо Spy++ поковырять...
Thanks:
1 2 3  > >>

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy