Обсуждение статьи "Работа с сокетами в MQL, или Как стать провайдером сигналов" - страница 5
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
У меня получился такой синхронный TCP клиент:
На мкл мне сервер не нужен, поэтому только клиент. Проверил поверхностно.
ЗЫ: Спасибо за статью.На этапе компиляции ругается на преобразования структур :-(.
'cannnot cast Data_cz_char -> Data_cz_int ' и наоборот.
Хотя раньше вроде работало. Похоже, что после очередного обновления терминала перестало.
В чем проблема? никак не пойму.
В чем проблема? никак не пойму.
union
Спасибо за ответ. Однако, вопрос не потерял актуальности. В MQL4 вроде не поддерживаются объединения. По крайней мере в доке так сказано.
Так же по мере разбирательства возникли еще вопросы:
- В процедурах send и recv параметр int flags (последний) никак не освещен. Я случае с send он принимает значение - 0, а в recv - 8, почему?
- В исходном посте сказано, что клиент синхронный, а в примере реализована только отправка строки на сервер. А как же ответ ... .
Пардон за чайниковские вопросы. Пытаюсь разобраться, но пока не получается ..., если можете помогите плз.
Хочется реализовать рабочий класс для взаимодействия со сторонним сервером многих клиентов. Пока топчусь на месте, увы.
Спасибо за ответ. Однако, вопрос не потерял актуальности. В MQL4 вроде не поддерживаются объединения. По крайней мере в доке так сказано.
Так же по мере разбирательства возникли еще вопросы:
- В процедурах send и recv параметр int flags (последний) никак не освещен. Я случае с send он принимает значение - 0, а в recv - 8, почему?
- В исходном посте сказано, что клиент синхронный, а в примере реализована только отправка строки на сервер. А как же ответ ... .
Пардон за чайниковские вопросы. Пытаюсь разобраться, но пока не получается ..., если можете помогите плз.
Хочется реализовать рабочий класс для взаимодействия со сторонним сервером многих клиентов. Пока топчусь на месте, увы.
Forum on trading, automated trading systems and testing trading strategies
Code breaking changes in MQL4 language
Alain Verleyen, 2017.05.18 22:10
They introduced union (not documented on MT4, but works well with ME 1599) :
union Udata_32bytes { uchar d_uchar[32]; ulong d_ulong[4]; } data; void OnStart() { data.d_ulong[0]=0xFFEEDDCC; printf("uchar[%i] = %X",1,data.d_uchar[1]); }ДА! Работают объединения. СПАСИБО! Я так понял, что с 12-ого мая 2017-ого была добавлена поддержка union. Замечательно!
Разработчикам не плохо было бы в доке это отразить.
Простой примерчик иллюстрирующий работу с union
- В процедурах send и recv параметр int flags (последний) никак не освещен. Я случае с send он принимает значение - 0, а в recv - 8, почему?
потому что сочиняете. не вижу я флагов =8
- В исходном посте сказано, что клиент синхронный, а в примере реализована только отправка строки на сервер. А как же ответ ... .
потому что сочиняете. не вижу я флагов =8
с такими формулировками вопросов лучше сюда обратитьсяУважаемый, ГУРУ! Не имею такой привычки, сочинять. Ошибка моя, видимо заключалась в том, что вопросы были адресованы пользователю с ником pavlick_ и касались класса TCP_Client, реализованного им и представленного в данной ветке выше - https://www.mql5.com/ru/forum/91150/page3#comment_2798881
Так что прошу прощения за беспокойство. Однако, такой бурной, если не сказать больше, реакции от Вас не ожидал.
Поверьте, иногда бывает полезно сдерживать свои негативные эмоции.
Дитто! Вопрос!
Опубликована новая статья Работа с сокетами в MQL, или Как стать провайдером сигналов:
Автор: o_O
Здравствуйте, Этот код работает на MQL4?
Я пытаюсь перенести его на mql4, и когда функция DLL bind() вызывается в функции MQL StartServer, выдает мне сообщение ниже:
Привет, Этот код работает на MQL4?
Исходный код был скомпилирован для x64
Вам необходимо изменить все указатели на 32-битные
например, использовать SOCKET32 вместо SOCKET64 и т.д.