Bluetooth ve bağlan

Bluetooth, daha önce oluşturulmuş bir Bluetooth yuvası kullanarak hedef Bluetooth cihazına bağlanmak için connect işlevini kullanır. SOCKADDR_BTH bir yapı olan connect işlevinin adı parametresi bir hedef Bluetooth cihazı belirtmelidir. Hedef cihazı tanımlamak için iki mekanizma kullanılır:

  • SOCKADDR_BTH yapısı, bağlantının istendiği bağlantı noktası numarasını doğrudan belirtebilir. Bu mekanizma, uygulamanın bir bağlanma işlemi gerçekleştirmeden önce kendi SDP sorgularını gerçekleştirmesini gerektirir.
  • SOCKADDR_BTH yapısı, bağlanmak istediği hizmetin benzersiz hizmet sınıfı kimliğini belirtebilir. Eş cihazın hizmet sınıfı kimliğine karşılık gelen birden fazla bağlantı noktası varsa, bağlan işlev çağrısı ilk geçerli hizmete bağlanır. Bu mekanizma, önceki SDP sorguları olmadan kullanılabilir.

connect işleviyle SOCKADDR_BTH yapısını kullanırken aşağıdaki gereksinimler geçerlidir:

  • btAddr üyesi geçerli bir uzak radyo adresi olmalıdır.
  • serviceClassId üyesi için, bağlantı noktası üyesi sıfırsa, sistem hizmete karşılık gelen uzak bağlantı noktasını çözümlemek için serviceClassId kullanmayı dener. Hizmet sınıfı, Bluetooth belirtimi tarafından tanımlanan normalleştirilmiş bir 128 bit GUID'dir. Ortak GUID'ler Bluetooth Atanan Numaralar belgesi tarafından tanımlanır. Alternatif olarak, etki alanına özgü bir uygulama için benzersiz bir GUID kullanılabilir.
  • bağlantı noktası üyesi geçerli bir uzak bağlantı noktası veya serviceClassId üyesi belirtilmişse sıfır olmalıdır.

Aşağıdaki tabloda Bluetooth ve connect işlevinin sonuç kodları listelenmektedir.

Hata/hata# Açıklama
WSAEISCONN10056
zaten bağlı yuva için çağrılan connect işlevi.
WSAEACCES10013
Uygulama bağlanıyor kimlik doğrulaması istedi, ancak kimlik doğrulaması başarısız oldu.
WSAENOBUFS10055
Kurtarılamaz bellek yetersiz hatası.
WSAEADDRINUSE10048
İstenen bağlantı noktası/kanal numarası kullanımda.
WSAETIMEDOUT10060
G/Ç, Bluetooth radyo düzeyinde (PAGE_TIMEOUT) zaman aşımına uğradı.
WSAEDISCON10101
RFCOMM kanalının bağlantısı uzak eş tarafından kesildi.
WSAECONNRESET10054
RFCOMM çoğullayıcısının (oturum) bağlantısı uzak eş tarafından kesildi.
WSAECONNABORTED10053
Uygulama tarafından yuva kapatılır.
WSAENETUNREACH10051
L2CAP veya Bluetooth radyo düzeyinde zaman aşımı dışında bir hata.
WSAEHOSTDOWN10064
RFCOMM DM yanıtı aldı.
WSAENETDOWN10050
Beklenmeyen ağ hatası.
WSAESHUTDOWN10058
L2CAP kanalının bağlantısı uzak eş tarafından kesildi.
WSAEADDRNOTAVAIL10049
Bluetooth bağlantı noktası/kanal veya cihaz adresi geçerli değil.
WSAEINVAL10022
Tak Çalıştır, sürücü yığını olayı veya hataya neden olan başka bir hata.

Windows Yuvaları

bağlanma

SOCKADDR_BTH