2012-03-01 10 views

答えて

5

管理コードを使用している場合、これはSystemEvents.PowerModeChangedイベントで公開されています。

SystemEvents.PowerModeChanged += OnPowerModeChanged; 

private void OnPowerModeChanged(object sender, PowerModeChangedEventArgs e) { 
    if (e.Mode == PowerModes.Suspend) { 
    // Going to sleep 
    } 
} 

あなたはネイティブコードを使用しているなら、あなたはあなたのWindowProcハンドラ内WM_POWERBROADCASTメッセージをリッスンします。

LRESULT WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { 
    if (WM_POWERBROADCAST == message && PBT_APMSUSPEND == wParam) { 
    // Going to sleep 
    } 
} 
+0

あなたの編集で私にそれを打つ。私はあなたの最初の答えが管理されたコードに言及した後、これを投稿していました。 :) +1、私の答えを削除します。 –

関連する問題