Compartir a través de


Bluetooth y conexión

Bluetooth usa la función conectar para conectarse a un dispositivo Bluetooth de destino mediante un socket Bluetooth creado anteriormente. El nombre parámetro de la función conectar, que es una estructura de SOCKADDR_BTH, debe especificar un dispositivo Bluetooth de destino. Se usan dos mecanismos para identificar el dispositivo de destino:

  • La estructura SOCKADDR_BTH puede especificar directamente el número de puerto al que se solicita una conexión. Este mecanismo requiere que la aplicación realice sus propias consultas SDP antes de intentar una operación de conexión.
  • La estructura SOCKADDR_BTH puede especificar el identificador de clase de servicio único del servicio al que quiere conectarse. Si el dispositivo del mismo nivel tiene más de un puerto que corresponde al identificador de clase de servicio, la conectar llamada de función se conecta al primer servicio válido. Este mecanismo se puede usar sin consultas SDP anteriores.

Al usar la estructura de SOCKADDR_BTH con la función conectar, se aplican los siguientes requisitos:

  • El miembro btAddr debe ser una dirección de radio remota válida.
  • Para el miembro serviceClassId de, si el miembro de puerto es cero, el sistema intenta usar serviceClassId para resolver el puerto remoto correspondiente al servicio. La clase de servicio es un GUID normalizado de 128 bits, definido por la especificación de Bluetooth. Los GUID comunes se definen mediante el documento Números asignados por Bluetooth. Como alternativa, se puede usar un GUID único para una aplicación específica del dominio.
  • El de puerto debe ser un puerto remoto válido o cero si se especifica el miembro serviceClassId.

En la tabla siguiente se enumeran los códigos de resultado para Bluetooth y la función conectar.

Error/error# Descripción
WSAEISCONN10056
La función conectar llamada para el socket ya conectado.
WSAEACCES10013
La conexión de la aplicación solicitó la autenticación, pero no se pudo realizar la autenticación.
WSAENOBUFS10055
Error irrecuperable de memoria insuficiente.
WSAEADDRINUSE10048
El número de puerto o canal solicitado está en uso.
WSAETIMEDOUT10060
La E/S agota el tiempo de espera en el nivel de radio Bluetooth (PAGE_TIMEOUT).
WSAEDISCON10101
Canal RFCOMM desconectado por el mismo nivel remoto.
WSAECONNRESET10054
Multiplexor RFCOMM (sesión) desconectado por el mismo nivel remoto.
WSAECONNABORTED10053
Socket apagado por aplicación.
WSAENETUNREACH10051
Error distinto del tiempo de espera en el nivel de radio L2CAP o Bluetooth.
WSAEHOSTDOWN10064
La respuesta de DM recibida por RFCOMM.
WSAENETDOWN10050
Error de red inesperado.
WSAESHUTDOWN10058
El canal L2CAP desconectado por el mismo nivel remoto.
WSAEADDRNOTAVAIL10049
El puerto o el canal bluetooth o la dirección del dispositivo no son válidos.
WSAEINVAL10022
Plug and Play, evento de pila de controladores u otro error causó un error.

de Windows Sockets de

conectar

SOCKADDR_BTH