Windows Vista または Windows Server 2008 を実行しているコンピューターで、電源オプション内で設定されている時間を経過してもスリープ状態に切り替わらない場合がある

現象

Windows Vista または Windows Server 2008 を実行しているコンピューターで、電源オプション内で設定されている時間の間 PC を操作しなくても、スリープ状態に切り替わらない場合があります。

原因

Windows Vista および Windows Server 2008 では、システムがアイドル状態の際に、システムの稼動状況が 15 秒間隔で計算され、既定では、アイドル状態が 80% 以上の状態が、電源オプション内で設定されている時間の間継続した場合、スリープ状態に遷移します。このため、PC を操作していなくても、CPU 使用率が高い場合、電源オプション内で設定されている時間が経過してもスリープ状態に切り替わりません。

回避策

この現象を回避するには、以下の手順を実行してください。
  1. [コマンド プロンプト] を管理者権限で起動します。
  2. 設定されている電源プランのスリープ設定を確認するために以下のコマンドを実行します。

    powercfg -qh <SCHEME_GUID> <SUB_GUID>

    ここでは例として AC 電源の現在設定されている電源プランのスリープに関する設定を確認します。

    powercfg -qh scheme_current sub_sleep

    コマンドの実行結果の例 :

    電源設定の GUID : 381b4222-f694-41f0-9685-ff5bb260df2e (バランス)

    補足 : SHCEME_GUID に相当します。

    サブグループの GUID : 238c9fa8-0aad-41ed-83f4-97be242c8f20 (スリープ)

    補足 : SUB_GUID に相当します。

    電源設定の GUID : 81cd32e0-7833-44f3-8737-7081f38d1f70 (スリープ状態になる前に必要なアイドル状態)

    補足 : 後述の SETTING_GUID に相当します。

       利用可能な設定の最小値 : 0x00000000
       利用可能な設定の最大値 : 0x00000064
       利用可能な設定の増分 : 0x00000001
       利用可能な設定の単位 : %
    現在の AC 電源設定のインデックス : 0x00000050 (10 進数では 80% であることを示しています)

    現在の DC 電源設定のインデックス : 0x00000050

    注 :
    scheme_current や sub_sleep はエリアスと呼ばれ、それぞれ、現在使用している電源プランの SHCEME_GUID、スリープ設定のSUB_GUID を表します。以下のGUID を使用したコマンドを実行しても上記と同じ結果となります。

    powercfg -qh 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20

  3. 以下のコマンドを用いて、[スリープ状態になる前に必要なアイドル状態] の閾値を変更します。

    AC 電源の設定値を変更するコマンド :

    powercfg -setacvalueindex <SCHEME_GUID> <SUB_GUID> <SETTING_GUID> <SettingIndex>

    DC 電源の設定値を変更するコマンド :

    powercfg -setdcvalueindex <SCHEME_GUID> <SUB_GUID> <SETTING_GUID> <SettingIndex>

    ここでは例として AC 電源の 現在設定されている電源プランに対して [スリープ状態になる前に必要なアイドル状態] の閾値を 30% に変更します。

    注 : 閾値の最適値は利用しているシステム構成により異なるため、適宜設定してください。



    powercfg -setacvalueindex scheme_current sub_sleep 81cd32e0-7833-44f3-8737-7081f38d1f70 30

    補足 : 同様に他の電源プラン、およびバッテリの電源プランに対しても設定を行う場合には、それぞれの SCHEME_GUID の値と setdcvalueindex オプションを用いて変更します。別の電源プランの GUID (上記コマンドの "SCHEME_GUID" に相当する部分) は、以下のコマンドで取得可能です。

    powercfg /l


    例 :
    既存の電源設定 (* アクティブ)
    電源設定の GUID : 381b4222-f694-41f0-9685-ff5bb260df2e (バランス)

    電源設定の GUID : 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c (高パフォーマンス) *

    電源設定の GUID : a1841308-3541-4fab-bc81-f71556f20b4a (省電力)

  4. 手順 3 の設定値が反映されたかを確認するため、再度以下のコマンドを実行し、現在の電源プランのスリープの設定を表示します。

    powercfg -qh scheme_current sub_sleep

    コマンドの実行結果の例 :

    電源設定の GUID : 81cd32e0-7833-44f3-8737-7081f38d1f70 (スリープ状態になる前に必要なアイドル状態)

       利用可能な設定の最小値 : 0x00000000
       利用可能な設定の最大値 : 0x00000064 
       利用可能な設定の増分 : 0x00000001
       利用可能な設定の単位 : %
    現在の AC 電源設定のインデックス : 0x0000001e (10 進数で 30% であることを示しています)

    現在の DC 電源設定のインデックス : 0x00000050

  5. 設定を有効にするために、コンピューターを再起動、または以下のコマンドを実行します。

    powercfg -setactive scheme_current

状況

この動作は仕様です。

詳細

問題の再現手順

  1. [コントロール パネル] を開きます。
  2. [ハードウェアとサウンド] をクリックします。
  3. [コンピュータをスリープ状態にする時間の変更] をクリックします。
  4. [コンピューターをスリープ状態にする] で、スリープ状態にするまでの時間を設定します。

結果

手順 4 で設定した時間 PC を操作しなくてもスリープ状態に切り替わらない場合があります。

関連情報

電源ポリシーについての詳細は、次のマイクロソフト Web サイトを参照してください。

Windows における電源ポリシーの構成および展開
http://www.microsoft.com/japan/whdc/system/pnppwr/powermgmt/PMpolicy_Windows.mspx
エネルギー効率のための Windows Vista プラットフォームの最適化http://www.microsoft.com/japan/whdc/system/pnppwr/powermgmt/Optimize_Power.mspx
プロパティ

文書番号:2436244 - 最終更新日: 2016/10/04 - リビジョン: 1

フィードバック