none
PowerShellを使用しドライバの”電源の管理”オプションがONになっているドライバを抽出する方法について RRS feed

  • 質問

  • PowerShellを使用し、デバイスマネージャー上でドライバプロパティを見た際、”電源の管理”タブの 『電力の節電のために・・・』の項目のチェックが入っているものを抽出したいと考えています。

    ネットワークドライバ関連でいうと、HKLM¥SYSTEM¥CurrenrControlSet¥Control¥Class¥{4D36E972-E325-11CE-BFC1-08002bE10318}¥DriveNumber  [PnPCapabilities] の値が0であれば、有効、24であれば無効ということがわかったのですが

    ネットワークドライバ以外も含め、電源の管理が有効になっている全ドライバ名を抽出する方法はありますでしょうか。

    ワイルドカード等を使用し、 キーワードにPnPCapabilitiesを入れて検索しようとしたのですが、うまくできませんでした。

    よろしくお願いいたします。

    2018年11月29日 14:37

すべての返信

  • > ネットワークドライバ以外も含め、
    > 電源の管理が有効になっている全ドライバ名を抽出する方法はありますでしょうか。

    レジストリから判別するのは無理。。。というか、厳密には不可能じゃないけど、一律同じ処理で取得するのは無理だし、とっても面倒。
    理由は、接続バスやデバイス タイプに依存して、その設定情報を保持しているキーおよびエントリ名/エントリ値が異なるから。
    例えば、USB 関連デバイスであっても、USB Generic Hub と USB メモリでは保存されるキーの場所はほぼ同じでも、エントリ名が全く異なるし、同じ HDD でも USB 接続と IEEE 接続とでは保存されるキーの場所が異なる。
    だからそーいった違いをあらかじめ全部把握しておけば、一応可能。

    レジストリじゃなくって、WMI ならたぶんできる。
    -------------------------------------------------
    Getting WMI Objects (Get-WmiObject)
    https://docs.microsoft.com/en-us/powershell/scripting/getting-started/cookbooks/getting-wmi-objects--get-wmiobject-?view=powershell-6

    WMI and the Power Management Tab
    https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/wmi-and-the-power-management-tab
    -------------------------------------------------
    2018年11月30日 2:18
  • コメントありがとうございます。

    WMIならできるとのことですが、勉強不足で大変申し訳ないですが、どのようなコマンドを使用すると検出できますでしょうか?

    知識不足の質問で申し訳ないですが教えていただけると幸いです。

    2018年12月3日 12:46