[蓝牙socket问题]XP SP2 SDK的蓝牙socket服务端通讯程序无法接受客户端连接的问题
这是运行在PC上的蓝牙通讯程序。是作为服务器的,主要是与手机进行蓝牙通讯。
以下是部分代码:
m_lisSocket = socket(AF_BTH, SOCK_STREAM, BTHPROTO_RFCOMM);
if (m_lisSocket == INVALID_SOCKET)
{
return WSAGetLastError ();
}
SOCKADDR_BTH sa;
memset (&sa, 0, sizeof(sa));
sa.addressFamily = AF_BTH;
sa.port = BT_PORT_ANY;
sa.btAddr = lpRadioInfo->address.ullLong;
if (bind(m_lisSocket, (SOCKADDR *)&sa, sizeof(sa)))
{
return WSAGetLastError();
}
int iNameLen = sizeof(sa);
if (getsockname(m_lisSocket, (SOCKADDR *)&sa, &iNameLen))
{
return WSAGetLastError ();
}
if (listen (m_lisSocket, SOMAXCONN))
{
return WSAGetLastError ();
}
一切都正常,但是accept函数那里检测不到客户端的连接。我写了个Windows Mobile的手机蓝牙客户端作测试,调用connect函数是得到的错误是10061,connect的时候指定的蓝牙地址应该没错呀?可是就是连不上?
有做过蓝牙通讯程序的朋友能帮忙解决吗?