Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Po przesłaniu rekordu SDP (Service Discovery Protocol) przez sterownik profilu w celu anonsowania usług za pomocą protokołu SDP inne urządzenia mogą odnajdywać te usługi, wyszukując rekord lub przeglądając go, aby go znaleźć.
Aby wyszukać rekordy SDP, sterownik profilu klienta musi najpierw użyć IOCTL_BTH_SDP_CONNECT , aby nawiązać połączenie z usługą SDP urządzenia zdalnego.
Sterownik profilu może następnie użyć jednej z następujących IOCTLs do wykonania rzeczywistego wyszukiwania rekordów SDP.
IOCTL_BTH_SDP_ATTRIBUTE_SEARCH uzyskuje wszystkie składniki zdalnego rekordu SDP, który należy do określonego zakresu atrybutów SDP.
IOCTL_BTH_SDP_SERVICE_SEARCH wysyła żądanie SDP do urządzenia zdalnego, żądając dojść do rekordów SDP określonej klasy usługi lub klas.
IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH łączy IOCTL_BTH_SDP_ATTRIBUTE_SEARCH i IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH i zwraca użyteczny strumień rekordów SDP w ramach jednej operacji.
Sterowniki profilów mogą używać IOCTL_BTH_SDP_SERVICE_SEARCH i IOCTL_BTH_SDP_ATTRIBUTE_SEARCH, aby zmniejszyć ilość ruchu SDP przesyłanego przez połączenie Bluetooth i wyodrębnić niezbędne informacje przy użyciu niewielkiej liczby maksymalnych jednostek transferu (MTU). Jeśli żaden z tych problemów nie budzi większych obaw, może być wygodniejsze dla sterowników profili, aby wywołać IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH.
Po uzyskaniu dynamicznego protokołu/multipleksera usługi (PSM) dla żądanej usługi sterownik profilu może nawiązać połączenie z usługą zdalną przy użyciu BRB_L2CA_OPEN_CHANNEL BRB.
Uwaga
Jeśli usługa ma stały moduł PSM, który wiele z nich robi, sterowniki profilu klienta L2CAP nie muszą używać protokołu SDP do uzyskania psm. Jednak sterowniki profilów klienta L2CAP mogą nadal używać protokołu SDP do pobierania atrybutów serwera SDP.
Gdy sterownik profilu zakończy wyszukiwanie, powinien użyć IOCTL_BTH_SDP_DISCONNECT , aby odłączyć się od zdalnego serwera SDP.