← 戻る

Проблема при тестировании примера SampleGUI

Тестирую пример SampleGUI, при нажатии кнопки подключится выдается следующая ошибка: {"Не удалось получить фабрику класса COM для компонента с CLSID {43FB494A-620B-4588-A9DD-DB0BE4B6694A} из-за следующей ошибки: 80040154 Класс не зарегистрирован (Исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."}

Протрассировал, ошибка исходит из конструктора PlazaTrader, внутрь зайти не получается. Такое ощущение, что какая-то библиотечка должна была быть зарегана в GAC, но в исходниках никакая библиотека с таким CLSID не фигурирует. Что это может быть??

З.Ы. Буду искать способ зайти в конструктор PlazaTrader, чтоб выудить доп информацию.

このトピックは参考になりましたか?

トピックを共有

コメント (34)

ログイン または アカウントを作成, コメントを残すにはログインまたは新規登録してください

esper
esper

FiNick: Тестирую пример SampleGUI, при нажатии кнопки подключится выдается следующая ошибка: {"Не удалось получить фабрику класса COM для компонента с CLSID {43FB494A-620B-4588-A9DD-DB0BE4B6694A} из-за следующей ошибки: 80040154 Класс не зарегистрирован (Исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."}

Протрассировал, ошибка исходит из конструктора PlazaTrader, внутрь зайти не получается. Такое ощущение, что какая-то библиотечка должна была быть зарегана в GAC, но в исходниках никакая библиотека с таким CLSID не фигурирует. Что это может быть??

З.Ы. Буду искать способ зайти в конструктор PlazaTrader, чтоб выудить доп информацию.

При установке роутера в системе какой COM-объект регистрировался (MTA/STA)? Система какая (x86/x64)? Рядом с экзешником есть файл P2ClientGate.ini?

transdex
transdex

Такая ошибка у меня вывалилась, когда при установке роутера выбрал наугад библиотеку STA вместо MTA (лень было в папочку проекта заглянуть 😀 )

FiNick
FiNick 著者

А как устанавливать раутер? Дайте ссылку плиз =) Я скачивал с РТСа файл p2clientGate.zip, там вообще нет выбора STA/MTA и установки как таковой: просто запускаю cmd файл, который регистрирует библиотечку P2ClientGate.dll, и потом start_router.cmd, и ничего не работает =)

transdex
transdex

Установщики роутера P2_ClientGate1.11.5_32.exe или P2_ClientGate1.11.5_64.exe можно взять здесь: http://ftp.rts.ru/pub/FORTS/Plaza2/

Кратко опыт установки описан тут: http://stocksharp.com/posts/m/8922/

aspirant
aspirant

FiNick: Тестирую пример SampleGUI, при нажатии кнопки подключится выдается следующая ошибка: {"Не удалось получить фабрику класса COM для компонента с CLSID {43FB494A-620B-4588-A9DD-DB0BE4B6694A} из-за следующей ошибки: 80040154 Класс не зарегистрирован (Исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."}

Протрассировал, ошибка исходит из конструктора PlazaTrader, внутрь зайти не получается. Такое ощущение, что какая-то библиотечка должна была быть зарегана в GAC, но в исходниках никакая библиотека с таким CLSID не фигурирует. Что это может быть??

З.Ы. Буду искать способ зайти в конструктор PlazaTrader, чтоб выудить доп информацию.

Очень похоже на то, что на Вашем компьютере не зарегистрирована MTA-библиотека самой Плазы (P2ClientGateMTA.dll). Можно сделать вручную: запустите под админом файл register_MTA_dll.bat. Лежит в корневой папке роутера Плазы (\P2FORTSGate). Если не получается, проще будет снести роутер, и установить заново последнюю версию, обязательно выбрав в процессе регистрацию MTA-версии библиотеки.

FiNick
FiNick 著者

Роутер установил нормально, вроде заработало. Спасибо!

Тут теперь другая проблемка: пример подключается, в него через некоторое время загружается портфель (в котором правда 0,00 RUB), но инструменты не подгружаются совсем, событие NewSecurities не вызывается. То же самое со сделками.

Mikhail Sukhov
Mikhail Sukhov

FiNick: Роутер установил нормально, вроде заработало. Спасибо!

Тут теперь другая проблемка: пример подключается, в него через некоторое время загружается портфель (в котором правда 0,00 RUB), но инструменты не подгружаются совсем, событие NewSecurities не вызывается. То же самое со сделками.

Демо или реал?

FiNick
FiNick 著者

Тестовый доступ на beta-forts.rts.ru порт 3001.

Mikhail Sukhov
Mikhail Sukhov

FiNick: Тестовый доступ на beta-forts.rts.ru порт 3001.

Тоже не работает.

FiNick
FiNick 著者

Так это наша проблема или надо писать в суппорт РТСа? Вообще говоря логин мне давали на этом сервере, но можно попробовать приконнектиться к другому серверу.

Mikhail Sukhov
Mikhail Sukhov

FiNick: Так это наша проблема или надо писать в суппорт РТСа? Вообще говоря логин мне давали на этом сервере, но можно попробовать приконнектиться к другому серверу.

Вопрос на миллион. А откуда взяли саму библиотеку + пример?

FiNick
FiNick 著者

Вот отсюда: http://stockmarketdotnet.blogspot.com/2011/05/plazatrader-beta.html и http://box.net/plaza скачал файл Plaza_2011_05_17.zip

FiNick
FiNick 著者

Михаил, есть какие-нибудь идеи в чем может быть дело и как можно найти ошибку?

Mikhail Sukhov
Mikhail Sukhov

FiNick: Михаил, есть какие-нибудь идеи в чем может быть дело и как можно найти ошибку?

Выложил обновление на http://box.net/plaza

FiNick
FiNick 著者

Mikhail Sukhov: Последняя сборка.

Всмысле бага исправлена в последней сборке? А можно ссылку, не могу найти...

Mikhail Sukhov
Mikhail Sukhov

FiNick:

Mikhail Sukhov: Последняя сборка.

Всмысле бага исправлена в последней сборке? А можно ссылку, не могу найти...

Недописал сообщение.

FiNick
FiNick 著者

Скачал последнюю сборку Plaza_2011_06_28.zip Та же ерунда, не подгружаются инструменты=(

Mikhail Sukhov
Mikhail Sukhov

FiNick: Скачал последнюю сборку Plaza_2011_06_28.zip Та же ерунда, не подгружаются инструменты=(

А портфели?

aspirant
aspirant

FiNick: Скачал последнюю сборку Plaza_2011_06_28.zip Та же ерунда, не подгружаются инструменты=( У вас есть родные плазовские примеры (лежат здесь)? Попробуйте запустить пример MTA\BaselessClient. Он работает?

FiNick
FiNick 著者

Портфель грузится. Хорошая идея, завтра попробую родные плазовские примеры запустить

FiNick
FiNick 著者

Очень странно, строка m_conn = new CP2ConnectionClass(); выдает ошибку "Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память повреждена.", причем вне зависимости включен раутер или нет. Может это просто из-за того что поздно и сервер не работает. Посмотрим в понедельник.

Mikhail Sukhov
Mikhail Sukhov

FiNick: Очень странно, строка m_conn = new CP2ConnectionClass(); выдает ошибку "Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память повреждена.", причем вне зависимости включен раутер или нет. Может это просто из-за того что поздно и сервер не работает. Посмотрим в понедельник.

Думаю проще всего будет протестить все же нашим примером, а логи послать тех поддержке.

aspirant
aspirant

FiNick: Очень странно, строка m_conn = new CP2ConnectionClass(); выдает ошибку "Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память повреждена.", причем вне зависимости включен раутер или нет. Может это просто из-за того что поздно и сервер не работает. Посмотрим в понедельник.

Такая ошибка возникает, когда в папке, где у вашего примера / проекта лежит библиотека Interop.P2ClientGateMTA.dll, нет файлов P2ClientGate.ini и p2fortsgate_messages.ini. У себя PlazaTrader, если не находит эти файлы, создает их сам. Посмотрите, есть ли у вас эти файлы.

FiNick
FiNick 著者

Действительно, не хватало ini файлов. РТСовский пример работает (BaselessClient), котировки подгружает. SampleGUI не работает, стал смотреть лог, очень много записей, ничего не понятно, но поиск по слову error дает вот что:

2011-07-05 20:35:02.781;P2ReplStorage;;Basic policy created;stream 0x0,policy 0x75D2578 2011-07-05 20:35:02.781;p2repl-cli;;Stream opening started;stream 0x75D41A0,type 2,name 'FORTS_FUTCOMMON_REPL',server_addr 'nick_firsov.l_i' 2011-07-05 20:35:02.781;p2repl-cli;<mark>error;Open stream reply failed;</mark>stream 0x75D46D8 2011-07-05 20:35:02.781;P2ReplStorage;;Basic policy deleted;stream 0x75D46D8,policy 0x75D4C10 2011-07-05 20:35:02.781;P2ReplStorage;;Revs were inited; stream 0x0; cnt 1 2011-07-05 20:35:02.781;P2ReplStorage;; tbl_idx 0; cur_rev 0 2011-07-05 20:35:02.781;P2ReplStorage;;Basic policy created;stream 0x0,policy 0x75D4C10 2011-07-05 20:35:02.781;p2repl-cli;;Stream opening started;stream 0x75D46D8,type 1,name 'FORTS_FUTINFO_REPL',server_addr 'nick_firsov.l_i' 2011-07-05 20:35:02.781;p2repl-cli;<mark>error;Open stream reply failed;</mark>stream 0x75D4C60 2011-07-05 20:35:02.781;P2ReplStorage;;Basic policy deleted;stream 0x75D4C60,policy 0x75D5198 2011-07-05 20:35:02.781;P2ReplStorage;;Revs were inited; stream 0x0; cnt 1 2011-07-05 20:35:02.781;P2ReplStorage;; tbl_idx 0; cur_rev 0 2011-07-05 20:35:02.781;P2ReplStorage;;Basic policy created;stream 0x0,policy 0x75D5198 2011-07-05 20:35:02.781;p2repl-cli;;Stream opening started;stream 0x75D4C60,type 2,name 'FORTS_OPTCOMMON_REPL',server_addr 'nick_firsov.l_i' 2011-07-05 20:35:02.781;p2repl-cli;<mark>error;Open stream reply failed;</mark>stream 0x75D5230 2011-07-05 20:35:02.781;P2ReplStorage;;Basic policy deleted;stream 0x75D5230,policy 0x75D5768 2011-07-05 20:35:02.781;P2ReplStorage;;Revs were inited; stream 0x0; cnt 1

Попробую прикрепить весь лог к этому сообщению, если получится...

P.S. Вопрос: где-нибудь написано, как читать логи??

aspirant
aspirant

FiNick: SampleGUI не работает

То есть, когда после подключения щелкаешь на кнопке Инструменты, окно Инструменты открывается, но в списке ничего нет?

FiNick
FiNick 著者

Да, именно так. Портфель подгружается, а инструменты и все остальное нет. И, судя по логу, какая-то активная деятельность идет)

P.S. В логе часто встречается фраза типа 2011-07-06 02:53:15.921;p2repl-cli;;Desired schema is not equal to prev schema (lifenum ignored);stream 0x74D7D08 может у меня какие-то неправильные ini файлы используются

aspirant
aspirant

FiNick: Да, именно так. Портфель подгружается, а инструменты и все остальное нет. И, судя по логу, какая-то активная деятельность идет)

P.S. В логе часто встречается фраза типа 2011-07-06 02:53:15.921;p2repl-cli;;Desired schema is not equal to prev schema (lifenum ignored);stream 0x74D7D08 может у меня какие-то неправильные ini файлы используются

Не с ini файлами все нормально. Надо некоторое время, чтобы разобраться.

aspirant
aspirant

FiNick: Да, именно так. Портфель подгружается, а инструменты и все остальное нет.

У вас сейчас какая версия PlazaTrader? Нужно, чтобы была Plaza_2011_06_28.zip. Брать отсюда.

FiNick
FiNick 著者

Да, у меня последняя стоит 06_28.

Тут я вижу два варианта: либо надо попробовать с другого компа запустить, либо у меня логин какой-то кривой. Первое завтра проверю

FiNick
FiNick 著者

Заработало на Win7 64 битной. Поставил P2FORTSGate 64бит, зарегал P2ClientGateMTA64.dll, SampleGUI неработает, ошибка при подключении. Зарегал просто P2ClientGateMTA.dll (32бит), заработало, хотя гейт 64 битный включен при этом. На самом деле странно получается, гейт использует 64 битную dll, а пример 32 битную, и это работает=)

aspirant
aspirant

FiNick: Заработало на Win7 64 битной. Поставил P2FORTSGate 64бит, зарегал P2ClientGateMTA64.dll, SampleGUI неработает, ошибка при подключении. Зарегал просто P2ClientGateMTA.dll (32бит), заработало, хотя гейт 64 битный включен при этом. На самом деле странно получается, гейт использует 64 битную dll, а пример 32 битную, и это работает=)

PlazaTrader использует 32-битную версию. У меня тоже win7 64-битная версия. Роутер установлен с 32-битной версией библиотеки. Все работает.

FiNick
FiNick 著者

Но под XP 32 бит не работает, надо бы вылечить...

esper
esper

FiNick: Но под XP 32 бит не работает, надо бы вылечить... У меня под Win2003 x86 все нормально работает

FiNick
FiNick 著者

Проблема с инструментами (на WinXP 32bit) решилась сама, не знаю в чем было дело, переставил гейт, заработало. Кстати, кнопка "Отключиться" не работает: загружает два ядра под 100% и не отключается.