Compartir a través de


Bluetooth y conexión

Bluetooth usa la función connect para conectarse a un dispositivo Bluetooth de destino mediante un socket Bluetooth creado anteriormente. El parámetro name de la función connect , que es una estructura 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 desea conectarse. Si el dispositivo del mismo nivel tiene más de un puerto que corresponde al identificador de clase de servicio, la llamada de función connect se conecta al primer servicio válido. Este mecanismo se puede usar sin consultas SDP anteriores.

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

  • El miembro btAddr debe ser una dirección de radio remota válida.
  • Para el miembro serviceClassId , si el miembro del 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 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 miembro del 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 connect .

Error o error # Descripción
WSAEISCONN10056
La función connect a la que se llama para el socket ya conectado.
WSAEACCES10013
La conexión de la aplicación solicitó la autenticación, pero se produjo un error en 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
El RFCOMM recibió la respuesta DM.
WSAENETDOWN10050
Error de red inesperado.
WSAESHUTDOWN10058
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 causado por un error.

Windows Sockets

conectar

SOCKADDR_BTH