读书人

PC机上怎么配置蓝牙开发环境,请做过的

发布时间: 2012-05-22 18:18:54 作者: rapoo

PC机上如何配置蓝牙开发环境,请做过的指点一下
在网上查了很多资料,知道蓝牙通信编程的大致流程,不过发现个很郁闷的事情,先看下面的代码:
BOOL bRes = FALSE;
int iResult = 0;
LPWSAQUERYSET pwsaResults;
WSAQUERYSET wsaq;

WSADATA wsd;
WSAStartup (MAKEWORD(1,0), &wsd);
memset (&wsaq, 0, sizeof(wsaq));
wsaq.dwSize = sizeof(wsaq);
wsaq.dwNameSpace = NS_BTH;
wsaq.lpcsaBuffer = NULL;

// initialize searching procedure
iResult = WSALookupServiceBegin(&wsaq,
LUP_CONTAINERS,
&hLookup);
if (iResult != 0)
{
iResult = WSAGetLastError();
return iResult;
}
都说使用WSALookupServiceBegin,WSALookupServiceNext,WSALookupServiceEnd三个函数基本上能完成蓝牙设备的通信问题,不过调试的时候,我发现执行到WSALookupServiceBegin函数时就失败了,错误10108,没有NS_BTH类型的服务.也就是说不支持蓝牙服务,winsock2.h中确实没有定义蓝牙,不知道要怎么处理,才能让winsock2.h支持蓝牙?
其实也有直接使用socket的方法,比起上面的来说要简单一些,不过问题还是出在winsock2.h对蓝牙的支持上.
WSADATA wsadat;
WSAStartup( MAKEWORD( 1, 0 ), & wsadat );
sock = WSASocket(AF_BTH,SOCK_STREAM,0,NULL,0,WSA_FLAG_OVERLAPPED);//执行到这里就出错
int dwRet = getsockopt(sock,SOL_IRLMP,SO_PROTOCOL_INFO,(char *)&devList,&dwListLen);
有谁做过的?指点一下,万分感谢

[解决办法]
Windows Mobile 5.0/6.0版上应该支持吧。
[解决办法]
先看下相关的资源添加没?

然后仔细检查下WSASocket和getsockopt每个参数的具体意义,是不是用错了,根据你的提示,还没发现其他的问题.

读书人网 >VC/MFC

热点推荐