デコシノニッキ

ホロレンジャーの戦いの記録

HoloLensをUSB機器として検出をしてみる

シャッチョからUSB接続したHoloLensだけを検出できない?というフリがあったのでちょっとやってみた。

バイスの検出はこちらを参考
How to get notifications if devices are added, removed, or changed (XAML) | Microsoft Docs

特定のUSB機器でフィルタする方法はこちらを参考
USB デバイス (UWP アプリ) に接続する方法 | Microsoft Docs

USB機器の条件付にベンダIdとプロダクトIdを使えばフィルタリングできそうです。
1番目のリンクのサンプルから、ベンダIdとプロダクトIdが取得できます。

f:id:haikage1755:20181121004516p:plain:w350

コードでは次のようになります。

UInt32 vid = 0x045E; //ベンダーId
UInt32 pid = 0x0652; //プロダクトId

var aps = UsbDevice.GetDeviceSelector(vid, pid); //クエリを生成する

 //HoloLensのみ検出するように設定
watcher = DeviceInformation.CreateWatcher(aps, null);

サンプルです github.com

[デコシノニッキ]は、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイト宣伝プログラムである、Amazonアソシエイト・プログラムの参加者です。」