← Назад

помогите с плазой

В общем подключил у брокера плазу2 - брокер прислал логин, пароль и четыре ip адреса (подключение через сервер брокера), один default и три direct (впрочем, они отличаются только последней цифрой в числе после двоеточия. Скачал с сайта биржи роутер (ClientGate для 32-х разрядной системы), установил как службу. В процессе установки роутера указал эти ip адреса, логин и пароль.

Дальше запускаю пример работы с плазой SampleGUI, но подключиться не удаётся. Не до конца понимаю, нужно ли указывать ip, пробовал и так и так. В случае когда указываю ip, который мне брокер прислал прямо в форме, выскакивает ошибка подключения к серверу (скрин ниже). В случае когда ничего не указываю, то есть комментирую эту строку в коде, долго-долго ничего не происходит, а потом появляется сообщение, что не удалось подключиться в установленное время.


Trader.Address = Address.Text.To<IPEndPoint>();

Ещё не понимаю, нужно ли указывать логин и пароль на форме SampleGUI, если я их уже в роутере при установке. Пробовал и указывать, и не указывать - не работает.

Запускаю всё на локальной машине, то есть на домашнем компе.

p.s. как же это всё сложно!

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

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

IvanB
IvanB

pft_man, во первых убедитесь что разрядность плазы и вашей программы соответствуют (обе 32 или 64 разрядные). Во вторых, в окне программы выставляем IP и порт: 127.0.0.1:4001 снимаем галочку с опции Авторизация (т.е. логин и пароль не будем вводить) Находим файл client_router.ini в каталоге, где установлена плаза, открываем, там находим примерно следующее:

[AS:NS]
;настройка имени пользователя и пароля 
USERNAME=tgFZcm_хххх
PASSWORD=ххххх

если этого раздела ([AS:NS]) нет, то добавляем, у меня он в следующем контексте:

[P2MQRouter]

; TCP-порт, на котором слушает роутер
port=4001

AS=NS

restrict_local_login=0
tcp_nodelayin=1
tcp_nodelayout=1

[AS:Local]
Appname_0=pass
Appname_1=pass

[AS:NS]
;настройка имени пользователя и пароля 
USERNAME=tgFZcm_хххх
PASSWORD=ххххх

...

Проверяем порт, указанный в этом файле, например:

; TCP-порт, на котором слушает роутер
port=4001

это значение должно соответствовать тому, что указано на форме программы, после двоеточия (127.0.0.1:4001) Также в этом файле Вы должны найти IP адреса с портами, которые Вам передал брокер, пример:

[ROUTEINFO]
default=194.ххх.ххх.25:4001
direct=194.ххх.ххх.20:4001
direct=194.ххх.ххх.24:4003
pft_man
pft_man Автор

Что-то не работает. Прошёлся по всем пунктам, client_router.ini оказался идеальным. Нажимаю, подключить, долгое время ничего не происходит, а потом появляется сообщение, что не удалось подключиться за отведённое время. Подключаю, кстати, ваш пример SampleGUI из библиотеки. Что ещё попробовать?

А почему нужно ip именно такой указывать 127.0.0.1:4001?

IvanB
IvanB

pft_man: Что-то не работает. Прошёлся по всем пунктам, client_router.ini оказался идеальным. Нажимаю, подключить, долгое время ничего не происходит, а потом появляется сообщение, что не удалось подключиться за отведённое время. Подключаю, кстати, ваш пример SampleGUI из библиотеки. Что ещё попробовать?

А почему нужно ip именно такой указывать 127.0.0.1:4001?

Вопрос решается индивидуально, результат будет опубликован позже.

pft_man
pft_man Автор

Иван, спасибо большое за помощь. Ошибка похоже в том, что у брокера неверно указан мой ip адрес, с которого я подключаюсь. Попросил их поменять, надеюсь, всё заработает.

Теперь хочу роутер и приложение запускать на виртуальном сервере. Какие для этого изменения нужно сделать в файле конфигурации роутера?

IvanB
IvanB

pft_man: Теперь хочу роутер и приложение запускать на виртуальном сервере. Какие для этого изменения нужно сделать в файле конфигурации роутера?

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