PowerShell で、デバイス情報を取得する
デバイス情報
PowerShellで、デバイス情報を扱うには PnpDevice Module の利用する。
- Windows ディバイス
- ディバイスマネージャー「devmgmt.msc」
- 設定のデバイス「start ms-settings:connecteddevices」
- コントロールパネルの Bluetooth 設定「bthprops.cpl」※設定に飛ばされる
デバイス一覧
「Get-PnpDevice」コマンドを使う。
ただし、大量のデバイスが表示されるため、Class や FriendlyName などで、目的のものを絞り込む。
- Get-PnpDevice (PnpDevice) | Microsoft Learn
Bluetooth デバイス リスト
プロファイルやサービスを除いた、Bluetooth デバイス
Get-PnpDevice -Class Bluetooth | Where-Object CompatibleID -like "*GENERIC*DEVICE*" | ft -AutoSize
Class が Bluetooth のもの、
USB機器リスト
接続されているUSB機器リスト
Get-PnpDevice -PresentOnly | Where-Object InstanceId -match '^USB' | ft -AutoSize
「-PresentOnly」で接続されているディバイスのみ、InstanceId が USB で始まるもの。
デバイス情報
「Get-PnpDeviceProperty」コマンドを使う。
Get-PnpDeviceProperty -InstanceId <InstanceID>
- Get-PnpDeviceProperty (PnpDevice) | Microsoft Learn
デバイスの接続・切断
「Enable-PnpDevice」「Disable-PnpDevice」で、接続・切断が行える。管理者権限が必要。
Enable-PnpDevice -InstanceId <InstanceID> -Confirm:$false Disable-PnpDevice -InstanceId <InstanceID> -Confirm:$false
デバイス情報
Bluetooth デバイス の接続状態
対象のインスタンスIDは事前に調べておく。「{83DA6326-97A6-4088-9453-A1923F573B29} 15」と言うキーが接続状態。「Data」の値が True なら接続、False なら切断 となる。
Get-PnpDeviceProperty -InstanceId 'BTHLE\DEV_〜' | Where-Object KeyName '{83DA6326-97A6-4088-9453-A1923F573B29} 15'
Get-PnpDeviceProperty で、デバイス情報を取得できるので、接続前後で変数に記録し Compare-Object で比較して、変化を調べる。
最終更新時間:2026年05月16日 12時32分31秒 指摘や意見などあればSandBoxのBBSへ。