ble_services

GATT サービス一覧を取得

ble_services dev_h, var_list, buf_size

dev_h    : デバイスハンドル
var_list : UUID 文字列を LF 区切りで受け取る str 変数 (sdim 済)
buf_size : var_list に sdim で確保したバッファサイズ

(プラグイン / モジュール : hspble.dll)

解説

GetGattServicesAsync(Uncached) でサービスを列挙し、各 UUID を
小文字の 128bit 形式 ("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
で LF 区切りの文字列として var に格納します。

関連項目

ble_characteristics特定サービスの characteristic 一覧(hspble.dll)

サンプル逆引き (1)

sample_ble.hsp

情報

プラグイン / モジュールhspble.dll
バージョン1.0
作成日2026-04-15
著作者IronHSP / hspble
URLhttps://github.com/inovia/IronHSP
備考hspble.dll は Windows 10 以降に搭載された Windows.Devices.Bluetooth
(WinRT) を使って、BLE セントラル機能 (GATT クライアント) を
HSP3 に提供します。

提供機能:
- BluetoothLEAdvertisementWatcher によるアドバタイズスキャン
- BluetoothLEDevice::FromBluetoothAddressAsync による接続
- GATT サービス / キャラクタリスティックの列挙
- Read / Write / Notify

非同期 WinRT API は内部で .get() による同期待ちにしているので、
HSP 側からは通常の同期命令として扱えます。ただし接続や Read は
数百 ms ブロックすることがあるので、リアルタイム描画ループと
併用する場合は注意してください。

スキャン結果と Notify はバックグラウンドスレッドで内部キュー
に蓄積され、ble_scan_poll / ble_notify_poll で 1 件ずつ取り
出す方式です (STA 不要)。
タイプ拡張命令
グループhspble ― GATT
対応環境
  • その他 : Win32 / Win64 (Windows 10 以降、BLE 対応アダプタ必須)
hs ファイルhsphelp\hspble.hs