BluetoothAuthenticateDevice 함수(bluetoothapis.h)

BluetoothAuthenticateDevice 함수는 원격 Bluetooth 디바이스에 인증 요청을 보냅니다.

참고 Windows Vista SP2 및 Windows 7용으로 개발하는 경우 BluetoothAuthenticateDeviceEx 를 사용하는 것이 좋습니다.
 

구문

DWORD BluetoothAuthenticateDevice(
  HWND                  hwndParent,
  HANDLE                hRadio,
  BLUETOOTH_DEVICE_INFO *pbtbi,
  PWSTR                 pszPasskey,
  ULONG                 ulPasskeyLength
);

매개 변수

hwndParent

인증 마법사의 부모가 될 창입니다. NULL로 설정하면 마법사가 바탕 화면에서 제거됩니다.

hRadio

유효한 로컬 라디오 핸들 또는 NULL입니다. NULL이면 모든 로컬 라디오에서 인증이 시도됩니다. 라디오가 성공하면 함수 호출이 성공합니다.

pbtbi

인증할 Bluetooth 디바이스의 레코드를 포함하는 형식 BLUETOOTH_DEVICE_INFO 구조입니다.

pszPasskey

디바이스 인증에 사용할 PIN(개인 식별 번호)입니다. NULL로 설정하면 사용자 인터페이스가 표시되고 사용자는 사용자 인터페이스에 제공된 인증 프로세스를 따라야 합니다. pszPasskeyNULL이 아니면 사용자 인터페이스가 표시되지 않습니다. 암호가 NULL이 아니면 NULL로 끝나는 문자열이어야 합니다. 자세한 내용은 주의 섹션을 참조하세요.

ulPasskeyLength

pszPasskey의 크기(문자)입니다. pszPasskey의 크기는 BLUETOOTH_MAX_PASSKEY_SIZE 작거나 같아야 합니다.

반환 값

성공적으로 완료되면 ERROR_SUCCESS 반환합니다.

일반적인 오류는 다음 표에 나와 있습니다.

반환 코드 설명
ERROR_CANCELLED
사용자가 작업을 취소했습니다.
ERROR_INVALID_PARAMETER
pbtdi 매개 변수의 디바이스 구조가 잘못되었습니다.
ERROR_NO_MORE_ITEMS
pbtdi가 가리키는 디바이스는 이미 인증된 것으로 표시됩니다.

설명

일부 원격 Bluetooth 디바이스는 숫자 암호만 허용할 수 있습니다. 숫자 암호만 미리 허용하는 디바이스를 식별할 수 있는 방법은 없습니다.

Bluetooth 인증 프로세스에는 마법사 모드와 투명 모드의 두 가지 모드가 있습니다.

마법사 모드는 pszPasskeyNULL로 설정되고 Bluetooth 연결 마법사가 시작될 때 시작됩니다. 사용자에게 인증 요청이 전송된 후 마법사의 단계로 암호를 입력하라는 메시지가 표시됩니다. 사용자 인터페이스는 인증 시도의 성공 또는 실패 여부를 표시하고 사용자에게 실패한 인증을 다시 시도할 수 있는 기회를 제공합니다.

pszPasskeyNULL이 아닌 경우 투명 모드가 시작됩니다. 투명 모드에서 인증 요청은 사용자 인터페이스를 표시하지 않고 원격 Bluetooth 디바이스로 전송됩니다. 투명 모드에서 Bluetooth 상태 코드는 Win32 오류 코드에 매핑됩니다. 다음 표에는 이 매핑 정보가 나와 있습니다.

Bluetooth 상태 코드 Win32 오류 코드
BTH_ERROR_SUCCESS ERROR_SUCCESS
BTH_ERROR_NO_CONNECTION ERROR_DEVICE_NOT_CONNECTED
BTH_ERROR_PAGE_TIMEOUT WAIT_TIMEOUT
BTH_ERROR_HARDWARE_FAILURE ERROR_GEN_FAILURE
BTH_ERROR_AUTHENTICATION_FAILURE ERROR_NOT_AUTHENTICATED
BTH_ERROR_MEMORY_FULL ERROR_NOT_ENOUGH_MEMORY
BTH_ERROR_CONNECTION_TIMEOUT WAIT_TIMEOUT
BTH_ERROR_LMP_RESPONSE_TIMEOUT WAIT_TIMEOUT
BTH_ERROR_MAX_NUMBER_OF_CONNECTIONS ERROR_REQ_NOT_ACCEP
BTH_ERROR_PAIRING_NOT_ALLOWED ERROR_ACCESS_DENIED
BTH_ERROR_UNSPECIFIED_ERROR ERROR_NOT_READY
BTH_ERROR_LOCAL_HOST_TERMINATED_CONNECTION ERROR_VC_DISCONNECTED

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista, WINDOWS XP SP2 [데스크톱 앱만 해당]
지원되는 최소 서버 지원되는 버전 없음
대상 플랫폼 Windows
헤더 bluetoothapis.h(Bthsdpdef.h, BluetoothAPIs.h 포함)
라이브러리 Bthprops.lib
DLL bthprops.cpl

추가 정보

BLUETOOTH_DEVICE_INFO

BluetoothAuthenticateDeviceEx

BluetoothAuthenticateMultipleDevices

BluetoothEnableDiscovery

BluetoothEnableIncomingConnections

BluetoothIsConnectable

BluetoothIsDiscoverable

BluetoothRegisterForAuthentication

BluetoothSendAuthenticationResponse

BluetoothUnregisterAuthentication