91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

詳細列出了windows藍牙通信的所有功能,看此文檔即可知道windows藍牙通信API的開發流程 詳細列出了windows藍牙通信的所有功能,看此文檔即可知道windows藍牙通信API的開發流程

資源截圖

代碼片段和文件信息

#include?“StdAfx.h“
#include?“BlueTooth.h“

CBlueTooth::CBlueTooth(void)
{
m_Ary_RemoteBthDevInfo.SetSize?(?0?10*sizeof(BLUETOOTH_DEVICE_INFO)?);
m_Ary_LocalRadioInfo.SetSize?(?0?10*sizeof(t_LocalRadioInfo)?);
}

CBlueTooth::~CBlueTooth(void)
{
RemoveAll_RemoteBthDevInfo?();
RemoveAllLocalRadio?();
}

//
//?用?Socket?函數搜索附近的藍牙設備,成功時返回設備數,否則返回-1
//
int?CBlueTooth::WSAScanNearbyBthDev?()
{
m_Ary_RemoteBthDevInfo.RemoveAll?();

WSAQUERYSET?wsaq;
HANDLE?hLookup;
union
{
CHAR?buf[5000];
double?__unused;?//?ensure?proper?alignment
};

LPWSAQUERYSET?pwsaResults?=?(LPWSAQUERYSET)?buf;
DWORD?dwSize?=?sizeof(buf);
BOOL?bHaveName;
ZeroMemory(&wsaq?sizeof(wsaq));
wsaq.dwSize?=?sizeof(wsaq);
wsaq.dwNameSpace?=?NS_BTH;
wsaq.lpcsaBuffer?=?NULL;
if?(ERROR_SUCCESS?!=?WSALookupServiceBegin?(&wsaq?LUP_CONTAINERS?&hLookup))
{
TRACE?(?_T(“WSALookupServiceBegin?failed\n“)?);
return?-1;
}

ZeroMemory(pwsaResults?sizeof(WSAQUERYSET));
pwsaResults->dwSize?=?sizeof(WSAQUERYSET);
pwsaResults->dwNameSpace?=?NS_BTH;
pwsaResults->lpBlob?=?NULL;
while?(ERROR_SUCCESS?==?WSALookupServiceNext?(hLookup?LUP_RETURN_NAME?|?LUP_RETURN_ADDR?&dwSize?pwsaResults))
{
ASSERT?(pwsaResults->dwNumberOfCsAddrs?==?1);
BTH_ADDR?b?=?((SOCKADDR_BTH?*)pwsaResults->lpcsaBuffer->RemoteAddr.lpSockaddr)->btAddr;
bHaveName?=?pwsaResults->lpszServiceInstanceName?&&?*(pwsaResults->lpszServiceInstanceName);
t_RemoteBthDevInfo?RemoteBthDevInfo;
if?(?bHaveName?)
{
StringCchPrintf?(?RemoteBthDevInfo.szName?sizeof(RemoteBthDevInfo.szName)?_T(“%s“)?
pwsaResults->lpszServiceInstanceName?);
}
RemoteBthDevInfo.Address.ullLong?=?b;

TRACE?(L“%s?(?%04x%08x?)\n“?RemoteBthDevInfo.szName?GET_NAP(b)?GET_SAP(b)?);
m_Ary_RemoteBthDevInfo.Add?(?RemoteBthDevInfo?);
}
WSALookupServiceEnd(hLookup);

return?(int)m_Ary_RemoteBthDevInfo.GetSize();
}

BOOL?AUTHENTICATION_CALLBACK?(LPVOID?pvParam?PBLUETOOTH_DEVICE_INFO?pDevice)
{
t_AUTHENTICATION_CALLBACK_Para?*pAUTHENTICATION_CALLBACK_Para?=?(t_AUTHENTICATION_CALLBACK_Para*)pvParam;
if?(?pAUTHENTICATION_CALLBACK_Para?)
{
pDevice->fAuthenticated?=?TRUE;
DWORD?result?=?BluetoothUpdateDeviceRecord?(?pDevice?);
ASSERT?(?result?==?ERROR_SUCCESS?);
result?=?BluetoothSendAuthenticationResponse?(?pAUTHENTICATION_CALLBACK_Para->hRadio?pDevice?AUTHENTICATION_PASSKEY?);
if?(?result?==?ERROR_SUCCESS?)
return?TRUE;
}
return?FALSE;
}

//
//?用藍牙?APIs?搜索附近的藍牙設備,成功時返回設備數,否則返回-1
//
int?CBlueTooth::ScanNearbyBthDev?(
HANDLE?hRadio
BOOL?fReturnAuthenticated/*?=?TRUE*/
BOOL?fReturnRemembered/*?=?TRUE*/
BOOL?fReturnUnknown/*?=?TRUE*/
BOOL?fReturnConnected/*?=?TRUE*/
BOOL?fIssueInquiry/*?=?FALSE*/
UCHAR?cTimeoutMultiplier/*?=?30*/

{
RemoveAll_RemoteBthDevInfo?();
CWaitCursor?WaitCursor;

BLUETOOTH_DEVICE_INFO?bdi?=?{?sizeof(BLUETOOTH_DEVICE_INFO)?};
BLUETOOTH_DEVICE_SEARCH_PARAMS?

評論

共有 條評論