← К каталогу
Исходный код · ID 2986

SocketLib

socketlib.mqh
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

SocketLib — это библиотека на языке MQL, предоставляющая обёртки над стандартными функциями Winsock 2 для организации сетевого взаимодействия. Она позволяет создавать TCP и UDP сокеты, устанавливать соединения, отправлять и получать данные, а также управлять параметрами сокетов.

Библиотека импортирует функции из Ws2_32.dll и объявляет структуры для сетевых адресов (sockaddr_in, in_addr, sockaddr), а также вспомогательные функции для преобразования адресов и порядков байтов. Дополнительно включает функцию WSAErrorDescript для перевода кодов ошибок Winsock в читаемый текст.

Исходный код содержит набор констант ошибок Winsock и макросы, используемые при работе с сетевыми сокетами. Библиотека предназначена для использования внутри торговых платформ MetaTrader.

Состав библиотеки

Классов: 6 · методов: 0 · конструкторов: 0 · деструкторов: 0 · отдельных функций: 20

Классы
Класс class WSAData

Инициализация Winsock библиотеки с указанной версией.

Класс class S_un_b

Завершение и очистка Winsock библиотеки.

Класс class S_un_w

Получение кода последней ошибки Winsock.

Класс class in_addr

Преобразование 16-битного значения из хостового в сетевой порядок байтов.

Класс class sockaddr_in

Преобразование IP-адреса из текстовой формы в бинарную.

Класс class sockaddr

Преобразование бинарного адреса в текстовое представление.

Функции
Функция int WSAStartup(WORD wVersionRequested,LPWSADATA lpWSAData[])

Преобразование 16-битного значения из сетевого в хостовый порядок байтов.

Функция int WSACleanup()

Создание сокета с указанным адресным семейством, типом и протоколом.

Функция int WSAGetLastError()

Управление режимом работы сокета (например, неблокирующий ввод-вывод).

Функция ushort htons(ushort hostshort)

Отключение отправки, приёма или обоих направлений на сокете.

Функция uint inet_addr(char &cp[])

Закрытие сокета.

Функция string inet_ntop(int Family, char &pAddr[],char &pStringBuf[],uint StringBufSize)

Привязка сокета к локальному адресу.

Функция ushort ntohs(ushort netshort)

Перевод сокета в режим прослушивания входящих соединений.

Функция SOCKET64 socket(int af,int type,int protocol)

Принятие входящего соединения.

Функция int ioctlsocket(SOCKET64 s,int cmd,int &argp)

Установление соединения с удалённым узлом.

Функция int shutdown(SOCKET64 s,int how)

Отправка данных на подключённый сокет.

Функция int closesocket(SOCKET64 s)

Приём данных из подключённого сокета.

Функция int bind(SOCKET64 s,LPSOCKADDR name[],int namelen)

Приём данных и адреса отправителя для датаграммного сокета.

Функция int listen(SOCKET64 s,int backlog)

Отправка данных на указанный адрес через датаграммный сокет.

Функция SOCKET64 accept(SOCKET64 s, LPSOCKADDR addr[],int &addrlen)

Получение текстового описания кода ошибки Winsock.

Функция int connect(SOCKET64 s,LPSOCKADDR name[],int namelen)

Структура данных, содержащая информацию о версии и возможностях Winsock.

Функция int send(SOCKET64 s,char &buf[],int len,int flags)

Структура для хранения 4-байтового IP-адреса.

Функция int recv(SOCKET64 s,char &buf[],int len,int flags)

Структура адреса сокета для IPv4 с портом и IP-адресом.

Функция int recvfrom(SOCKET64 s,char &buf[],int len,int flags,LPSOCKADDR from[],int &fromlen)

Обобщённая структура адреса сокета.

Функция int sendto(SOCKET64 s,const char &buf[],int len,int flags,LPSOCKADDR to[],int tolen)

Союзная структура для интерпретации IP-адреса как байтов или слов.

Функция string WSAErrorDescript(int code)

Союзная структура для интерпретации адреса sockaddr_in как массива символов.

Получить полный код

Поиск по коду файла

********

Показано первые 50% кода (символов: 63533)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
6 353,30₽ ≈ $77.66