概要
Windowsにてパラメーターシートに載せるため、接続されている物理デバイスの一覧をPowershellで取得しようと頑張った話です。
結論
ダメでした。
環境
- オンプレサーバ
- WorkGroup
- Windows Server 2022 Standard
調べたもの
-
Get-PnpDeviceコマンド
- Win32_PnPEntity
- デバイスツリー
まとめたもの
-
Get-PnpDeviceはいくつかのオプションがあるけど、物理デバイスのみをだすオプションはない- オンラインのデバイスを出すオプション
- ClassやInstanceIdでフィルタするオプション
- ステータスでフィルタするオプション
- Windowsがデバイスを参照するときに見てるのはデバイスそのものではない
- Windowsはdevnodeってのに入れて管理している
- 参照するときはdevnodeから見てる
- devnodeに物理デバイスも仮想デバイスを分けて考える属性がない
- 明言はされてないけど、実際コマンドの結果そう見える
以上のため、物理デバイスと仮想デバイスはWindowsの公式機能では分けられないみたいです。