intSendTo (Stałavoid *lpBuf,intnBufLen,UINTnHostPort,LPCTSTRlpszHostAddress=nFlags=intNULL,0);
int SendTo ( Stała void * lpBuf, int nBufLen, const SOCKADDR * lpSockAddr, int nSockAddrLen, int nFlags = 0 );
Wartość zwracany
Jeśli błąd nie wystąpi, SendTo zwraca wartość całkowita liczba znaków wysłanych. (Należy zauważyć, że ta może być mniejsza niż liczba wskazana przez nBufLen). W przeciwnym wypadku zwracana jest wartość SOCKET_ERROR , a kod błędu mogą być pobierane przez wywołanie GetLastError. Następujące błędy stosuje się do tej funkcji członek:
Parametry
lpBuf
Bufor zawierający dane, które mają być przekazywane.
nBufLen
Długość danych w lpBuf w bajtach.
nHostPort
Port identyfikacji aplikacji gniazda.
lpszHostAddress
Adres sieciowy gniazda, do którego podłączony jest ten obiekt: nazwa komputera, takich jak "ftp.microsoft.com" lub kropkowane liczbę takich jak "128.56.22.8".
nFlags
Określa sposób, w której połączenie jest nawiązywane. Semantyka tej funkcji są określane przez opcje gniazda i parametr nFlags . Ten ostatni jest wykonane przez łączenie dowolnego z następujących wartości z operatorem C++ lub:
lpSockAddr
Wskaźnik do struktury SOCKADDR , zawierający adres gniazda docelowych.
nSockAddrLen
Długość adresu w lpSockAddr w bajtach.
Uwagi
Wywołanie tej funkcji członek może wysyłać dane do określonego miejsca przeznaczenia. SendTo jest używany na datagram lub strumienia gniazd i jest używany do zapisu danych wychodzących na gnieździe. Dla datagramu gniazd opieki należy się nie mogą przekroczyć maksymalnej IP rozmiar pakietu podstawowego podsieci, określonego elementu iMaxUdpDg w strukturze WSADATA wypełnione przez AfxSocketInit. Jeśli dane są zbyt długie, aby przekazać atomically za pośrednictwem protokołu leżących u podstaw rozliczeń, zwracany jest błąd WSAEMSGSIZE i żadne dane nie zostały przekazane.
Należy zauważyć, że ukończenie SendTo nie wskazuje, że dane pomyślnie dostarczona.
SendTo jest używana tylko na gniazdo SOCK_DGRAM do wysłania datagramu do określonego gniazda określone przez parametr lpSockAddr.
Aby wysłać emisji (na SOCK_DGRAM tylko), powinna być konstruowana adres w parametrze lpSockAddr , przy użyciu specjalnego adresu IP INADDR_BROADCAST (zdefiniowany w pliku nagłówka Windows Sockets WINSOCK.H) wraz z numerem planowany port. Lub, jeśli parametr lpszHostAddress ma wartość NULL, gniazdo skonfigurowano dla emisji. Nie jest ogólnie wskazane dla emisji datagramu przekracza rozmiar, w którym mogą występować fragmentacji, co oznacza, że część danych datagramu (z wyłączeniem nagłówków) nie powinna przekraczać 512 bajtów.
Omówienie CAsyncSocket |nbsp; Klasa członków | Wykres hierarchii
Zobacz też CAsyncSocket::Create, CAsyncSocket::Receive, CAsyncSocket::ReceiveFrom, CAsyncSocket::Send