Содержание материала

Параметры:

hwndParent

Handle родительского окна. Если 0, то родительским окном станет окно Desktop.

hRadio

Handle локального радиомодуля. Если 0, то авторизация будет проведена на всех радиомодулях. Если хотя бы один пройдет авторизацию, функция выполнится успешно.

cDevices

Количество элементов в массиве rgpbtdi.

rgpbtdi

Массив структур BLUETOOTH_DEVICE_INFO, в котором представлены устройства для авторизации.

Возвращаемые значения:

ERROR_SUCCESS

Функция выполнена успешно. Проверьте флаг fAuthenticated у каждого устройства, что бы знать, какие прошли авторизацию.

ERROR_CANCELLED

Пользователь отменил процесс авторизации. Проверьте флаг fAuthenticated у каждого устройства, что бы знать, какие прошли авторизацию.

ERROR_INVALID_PARAMETER

Один или несколько элементов массива rgpbtdi не верны.

ERROR_NO_MORE_ITEMS

Все устройства в массиве уже авторизированны.

Другие ошибки Win32

 

Важно: В оригинале функция выглядит вот так:

Code:

function BluetoothAuthenticateMultipleDevices(

hwndParent : HWND;

hRadio : THandle;

cDevices : DWORD;

pbtdi : PBLUETOOTH_DEVICE_INFO): DWORD; stdcall;

 

Это не верно, так как в документации Microsoft указано, что параметр rgpbtdi должен передаваться как указатель (что подразумевает запись PBLUETOOTH_DEVICE_INFO), но как я писал выше, этот тип ошибочен. Он не является указателем. Я изменил функцию так, как показано выше. По поводу типа __PBLUETOOTH_DEVICE_INFO я писал выше.

Описывать с примером, как использовать эти функции не буду, так как они тривиальны (если вы прочитали все вышеизложенное). Остались последние три функции, которые мы не рассмотрели:

BluetoothRegisterForAuthentication - регистрирует функцию обратного вызова, которая будет вызываться на запрос устройства об авторизации. Если несколько приложений зарегистрировало такую функцию, то будет вызвана функция в последнем приложении.

Объявление функции:

Code:

function BluetoothRegisterForAuthentication(

var pbtdi : PBLUETOOTH_DEVICE_INFO;

var phRegHandle : HBLUETOOTH_AUTHENTICATION_REGISTRATION;

pfnCallback : PFN_AUTHENTICATION_CALLBACK;

pvParam : Pointer): DWORD; stdcall;

 

Параметры:

pbtdi

Указатель на BLUETOOTH_DEVICE_INFO. Используется адрес устройства, для которого регистрируется функция. Обратите внимание на параметр. В оригинале он опять передается не как указатель.

phRegHandle

Указатель, куда будет возвращен Handle регистрации, которой потом используется в BluetoothUnregisterAuthentication.

pfnCallback

Функция обратного вызова.

pvParam

Опциональный параметр, который без изменения передается в функцию обратного вызова.

Возвращаемые значения:

ERROR_SUCCESS

Функция выполнена успешно.

ERROR_OUTOFMEMORY

Недостаточно памяти.

Другие ошибки Win32

 

BluetoothUnregisterAuthentication - удаляет функцию обратного вызова, зарегистрированную функцией BluetoothRegisterForAuthentication и закрывает Handle.

Объявление функции:

Code:

function BluetoothUnregisterAuthentication(

hRegHandle : HBLUETOOTH_AUTHENTICATION_REGISTRATION): BOOL; stdcall;

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить