37 return static_cast<DWORD
>(::WSAGetLastError ());
41 ULONG onoff, ULONG time, ULONG interval)
const
43 struct tcp_keepalive keepAlive = { 0, 0, 0 };
44 keepAlive.onoff = onoff;
45 keepAlive.keepalivetime = time;
46 keepAlive.keepaliveinterval = interval;
50 SIO_KEEPALIVE_VALS, &keepAlive,
sizeof (keepAlive), NULL, 0, &dwVal,
53 return ret == 0 ? TRUE : FALSE;
57 DWORD dwIoControlCode, LPVOID lpvInBuffer, DWORD dwInBuffer,
58 LPVOID lpvOutBuffer, DWORD dwOutBuffer, LPDWORD lpdwBytesReturned,
59 LPWSAOVERLAPPED lpOverlapped,
60 LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine)
const
63 _socket, dwIoControlCode, lpvInBuffer, dwInBuffer, lpvOutBuffer,
64 dwOutBuffer, lpdwBytesReturned, lpOverlapped, lpCompletionRoutine);
ソケットに関するWindowsAPIを集約したクラス
DWORD APIENTRY GetErrNo() const
WinSock API呼び出し時にエラーとなった時、 エラーの詳細を返します。
int APIENTRY Close()
ソケットが使用されていた場合、クローズします。
int APIENTRY WSAIoctl(DWORD dwIoControlCode, LPVOID lpvInBuffer, DWORD dwInBuffer, LPVOID lpvOutBuffer, DWORD dwOutBuffer, LPDWORD lpdwBytesReturned, LPWSAOVERLAPPED lpOverlapped, LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine) const
SOCKET _socket
このクラスで管理するソケットオブジェクト
BOOL APIENTRY SetKeepAliveValue(ULONG onoff, ULONG time, ULONG interval) const
KeepAlive送出タイミング、間隔をセッション個別に設定します。
APIENTRY SocketLibrary()
コンストラクタ
APIENTRY ~SocketLibrary()
デストラクタ