window mobile下,keepalive的默认时间间隔是多少?如何修改时间呢?
window mobile下,keepalive的默认时间间隔是多少?如何修改时间呢?
我现在还是用xp下,以下这段代码修改的
// 设置KeepAlive参数
tcp_keepalive alive_in = {0};
tcp_keepalive alive_out = {0};
alive_in.keepalivetime = 5000; // 开始首次KeepAlive探测前的TCP空闭时间
alive_in.keepaliveinterval = 5000; // 两次KeepAlive探测间的时间间隔
alive_in.onoff = TRUE;
unsigned long ulBytesReturn = 0;
nRet = WSAIoctl(m_sHost, SIO_KEEPALIVE_VALS, &alive_in, sizeof(alive_in),
&alive_out, sizeof(alive_out), &ulBytesReturn, NULL, NULL);
if (nRet == SOCKET_ERROR)
{
int errCode = WSAGetLastError();
CString temp;
temp.Format(L"设置KeepAlive参数失败!%d",errCode);
AfxMessageBox(temp);
return;
}
编译没有问题,可是执行的时候出错了
错误代码是:10022 WSAEINVAL