CAsyncSocket::SendTo

Int SendTo ( константа порожнечу * lpBuf, int nBufLen, UINT nHostPort, LPCTSTR lpszHostAddress = NULL, int nFlags = 0 );

Int SendTo ( константа порожнечу * lpBuf, int nBufLen, константа SOCKADDR * lpSockAddr, int nSockAddrLen, int nFlags = 0 );

Значення, яке повертається

Якщо помилки немає, SendTo повертає загальну кількість символів, що надсилаються. (Зауважимо, що це може бути менше, ніж номер, зазначений на nBufLen.) Інакше, повертається значення з SOCKET_ERROR , і міститься код помилки можуть бути отримані за номером GetLastError. Такі помилки застосовуються до цієї функції-члени:

Параметри

lpBuf

Буфер, який містить дані передаються.

nBufLen

Довжина дані в lpBuf в байт.

nHostPort

Порт, визначення socket застосування.

lpszHostAddress

Мережна адреса сокет, до якого підключено цей об'єкт: ім'я машини, такі, як "ftp.microsoft.com", або пунктирною число, наприклад "128.56.22.8".

nFlags

Визначає спосіб, в яких здійснюється виклик. Семантика ця функція визначається налаштувань socket і параметр nFlags . Останній будується шляхом об'єднання будь-яке з таких значень з C++ або оператором:

lpSockAddr

Вказівник на SOCKADDR структуру, яка містить адресу цільового socket.

nSockAddrLen

Довжина адреси в lpSockAddr в байт.

Зауваження

Телефонуйте цієї функції-члена для надсилання даних до певного місця призначення. SendTo використовується на дейтаграм або потоку розетки і використовується для запису даних на сокеті. Для дейтаграм розетки повинні бути прийняті перевищувати максимальної IP розмір пакета з базової підмереж, який дається iMaxUdpDg елементом у структурі WSADATA заповнювати за AfxSocketInit. Якщо дані не atomically проходити через основний протокол, помилка WSAEMSGSIZE , а не передачі.

Зверніть увагу, що успішне завершення SendTo не означає, що дані було успішно доставлене.

SendTo використовується лише на сокеті SOCK_DGRAM відправити дейтаграм конкретні socket визначені lpSockAddr параметр.

Щоб надіслати трансляції (на на SOCK_DGRAM тільки), адреса в параметрі lpSockAddr повинні бути побудовані за допомогою спеціальних IP-адреса INADDR_BROADCAST (визначається у файл заголовка Windows Sockets WINSOCK.H) разом з номером призначене порту. Або, якщо параметр lpszHostAddress є NULL, сокет настроєно для трансляції. Це зазвичай inadvisable для трансляції дейтаграм перевищує розмір, який може відбуватися фрагментації, який означає, що частину даних дейтаграм, (за винятком заголовків) не повинен перевищувати 512 байт.

Огляд CAsyncSocket |nbsp; Члени класу | Ієрархічна діаграма

Дивіться також CAsyncSocket::Create, CAsyncSocket::Receive, CAsyncSocket::ReceiveFrom, CAsyncSocket::Send

Index