Overview of the Bluetooth technology.

To develop Bluetooth, you need these headers:

For programming guidance for this technology, see:


Title Description
BLUETOOTH_AUTHENTICATION_METHOD BLUETOOTH_AUTHENTICATION_METHOD enumeration defines the supported authentication types during device pairing.
BLUETOOTH_AUTHENTICATION_REQUIREMENTS BLUETOOTH_AUTHENTICATION_REQUIREMENTS enumeration specifies the 'Man in the Middle' protection required for authentication.
BLUETOOTH_IO_CAPABILITY BLUETOOTH_IO_CAPABILITY enumeration defines the input/output capabilities of a Bluetooth Device.


Title Description
BluetoothAuthenticateDevice Sends an authentication request to a remote Bluetooth device.
BluetoothAuthenticateDeviceEx The BluetoothAuthenticateDeviceEx function sends an authentication request to a remote Bluetooth device.
BluetoothAuthenticateMultipleDevices Enables the caller to prompt for multiple devices to be authenticated during a single instance of the Bluetooth Connection wizard.
BluetoothDisplayDeviceProperties Starts Control Panel device information property sheet.
BluetoothEnableDiscovery The BluetoothEnableDiscovery function changes the discovery state of a local Bluetooth radio or radios.
BluetoothEnableIncomingConnections The BluetoothEnableIncomingConnections function modifies whether a local Bluetooth radio accepts incoming connections.
BluetoothEnumerateInstalledServices The BluetoothEnumerateInstalledServices function enumerates the services GUIDs (Globally Unique Identifiers) enabled on a Bluetooth device.
BluetoothFindDeviceClose The BluetoothFindDeviceClose function closes an enumeration handle associated with a device query.
BluetoothFindFirstDevice The BluetoothFindFirstDevice function begins the enumeration Bluetooth devices.
BluetoothFindFirstRadio The BluetoothFindFirstRadio function begins the enumeration of local Bluetooth radios.
BluetoothFindNextDevice The BluetoothFindNextDevice function finds the next Bluetooth device.
BluetoothFindNextRadio The BluetoothFindNextRadio function finds the next Bluetooth radio.
BluetoothFindRadioClose The BluetoothFindRadioClose function closes the enumeration handle associated with finding Bluetooth radios.
BluetoothGetDeviceInfo Retrieves information about a remote Bluetooth device.
BluetoothGetRadioInfo Obtains information about a Bluetooth radio.
BluetoothIsConnectable The BluetoothIsConnectable function determines whether a Bluetooth radio or radios is connectable.
BluetoothIsDiscoverable The BluetoothIsDiscoverable function determines whether a Bluetooth radio or radios is discoverable.
BluetoothIsVersionAvailable BluetoothIsVersionAvailable function indicates if the installed Bluetooth binary set supports the requested version.
BluetoothRegisterForAuthentication The BluetoothRegisterForAuthentication function registers a callback function that is called when a particular Bluetooth device requests authentication.
BluetoothRegisterForAuthenticationEx The BluetoothRegisterForAuthenticationEx function registers an application for a pin request, numeric comparison and callback function.
BluetoothRemoveDevice Removes authentication between a Bluetooth device and the computer and clears cached service information for the device.
BluetoothSdpEnumAttributes The BluetoothSdpEnumAttributes function enumerates through the SDP record stream, and calls the callback function for each attribute in the record.
BluetoothSdpGetAttributeValue The BluetoothSdpGetAttributeValue function retrieves the attribute value for an attribute identifier.
BluetoothSdpGetContainerElementData Iterates a container stream and returns each element contained within the container element.
BluetoothSdpGetElementData Retrieves and parses a single element from an SDP stream.
BluetoothSdpGetString Converts a raw string embedded in the SDP record into a Unicode string.
BluetoothSelectDevices Enables Bluetooth device selection.
BluetoothSelectDevicesFree Frees resources associated with a previous call to BluetoothSelectDevices.
BluetoothSendAuthenticationResponse The BluetoothSendAuthenticationResponse function is called when an authentication request to send the passkey response is received.
BluetoothSendAuthenticationResponseEx The BluetoothSendAuthenticationResponseEx function is called when an authentication request to send the passkey or a Numeric Comparison response is made.
BluetoothSetServiceState Enables or disables services for a Bluetooth device.
BluetoothUnregisterAuthentication The BluetoothUnregisterAuthentication function removes registration for a callback routine that was previously registered with a call to the BluetoothRegisterForAuthentication function.
BluetoothUpdateDeviceRecord Updates the local computer cache about a Bluetooth device.
PFN_AUTHENTICATION_CALLBACK Used in conjunction with the BluetoothRegisterForAuthentication function.
PFN_AUTHENTICATION_CALLBACK_EX PFN_AUTHENTICATION_CALLBACK_EX function is a callback function prototype used in conjunction with the BluetoothRegisterForAuthenticationEx function.
PFN_BLUETOOTH_ENUM_ATTRIBUTES_CALLBACK A callback function prototype that is called once for each attribute found in the pSDPStream parameter passed to the BluetoothSdpEnumAttributes function call.
PFN_DEVICE_CALLBACK A callback prototype used in association with selecting Bluetooth devices.


Title Description
BLUETOOTH_ADDRESS_STRUCT The BLUETOOTH_ADDRESS structure provides the address of a Bluetooth device.
BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS structure contains specific configuration information about the Bluetooth device responding to an authentication request.
BLUETOOTH_COD_PAIRS The BLUETOOTH_COD_PAIRS structure provides for specification and retrieval of Bluetooth Class Of Device (COD) information.
BLUETOOTH_DEVICE_INFO_STRUCT The BLUETOOTH_DEVICE_INFO structure provides information about a Bluetooth device.
BLUETOOTH_DEVICE_SEARCH_PARAMS Specifies search criteria for Bluetooth device searches.
BLUETOOTH_FIND_RADIO_PARAMS The BLUETOOTH_FIND_RADIO_PARAMS structure facilitates enumerating installed Bluetooth radios.
BLUETOOTH_LOCAL_SERVICE_INFO_STRUCT Contains local service information for a Bluetooth device.
BLUETOOTH_NUMERIC_COMPARISON_INFO BLUETOOTH_NUMERIC_COMPARISON_INFO structure contains the numeric value used for authentication via numeric comparison.
BLUETOOTH_OOB_DATA_INFO BLUETOOTH_OOB_DATA_INFO structure contains data used to authenticate prior to establishing an Out-of-Band device pairing.
BLUETOOTH_PASSKEY_INFO BLUETOOTH_PASSKEY_INFO structure contains a passkey value used for authentication. A passkey is similar to a password, except that a passkey value is used for authentication only once.
BLUETOOTH_PIN_INFO BLUETOOTH_PIN_INFO structure contains information used for authentication via PIN.
BLUETOOTH_RADIO_INFO Contains information about a Bluetooth radio.
BLUETOOTH_SELECT_DEVICE_PARAMS Facilitates and manages the visibility, authentication, and selection of Bluetooth devices and services.
BTH_DEVICE_INFO Stores information about a Bluetooth device.
BTH_HCI_EVENT_INFO Used in connection with obtaining WM_DEVICECHANGE messages for Bluetooth.
BTH_L2CAP_EVENT_INFO Contains data about events associated with an L2CAP channel.
BTH_QUERY_DEVICE The BTH_QUERY_DEVICE structure is used when querying for the presence of a Bluetooth device.
BTH_QUERY_SERVICE The BTH_QUERY_SERVICE structure is used to query a Bluetooth service.
BTH_RADIO_IN_RANGE Stores data about Bluetooth devices within communication range.
BTH_SET_SERVICE Provides service information for the specified Bluetooth service.
SDP_ELEMENT_DATA The SDP_ELEMENT_DATA structure stores SDP element data.
SDP_STRING_TYPE_DATA The SDP_STRING_TYPE_DATA structure stores information about SDP string types.
SdpAttributeRange The SdpAttributeRange structure is used in a Bluetooth query to constrain the set of attributes to return in the query.
SdpQueryUuid The SdpQueryUuid structure facilitates searching for UUIDs.
SdpQueryUuidUnion The SdpQueryUuidUnion union contains the UUID on which to perform an SDP query. Used in conjunction with the SdpQueryUuid structure.
SOCKADDR_BTH The SOCKADDR_BTH structure is used in conjunction with Bluetooth socket operations, defined by address family AF_BTH.