台灣最大程式設計社群網站
線上人數
793
 
會員總數:245216
討論主題:189089
歡迎您免費加入會員
討論區列表 >> VB6 >> Windows 7如何寫程式進入螢幕省電模式
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
Windows 7如何寫程式進入螢幕省電模式
價值 : 20 QP  點閱數:2393 回應數:0

樓主

kao66
初學者
5 73
952 59
發送站內信

如題,我測試了兩種方法,結果都只能在XP以下系統使用,

第一種方法
Private Declare Function SendMessage Lib "user32" _
Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg _
As Long, ByVal wParam As Long, ByVal lParam As Long) _
As Long
Const WM_SYSCOMMAND = &H112&
Const SC_MONITORPOWER = &HF170&

若要關閉螢幕
SendMessage Me.hWnd, WM_SYSCOMMAND, SC_MONITORPOWER, 1&
若要打開
SendMessage Me.hWnd, WM_SYSCOMMAND, SC_MONITORPOWER, -1&

第二種方法
Const SPI_GETLOWPOWERTIMEOUT As Long = 79
Const SPI_GETPOWEROFFTIMEOUT As Long = 80
Const SPI_SETLOWPOWERTIMEOUT As Long = 81
Const SPI_SETPOWEROFFTIMEOUT As Long = 82

Private Declare Function SystemParametersInfo Lib "user32.dll" Alias "SystemParametersInfoA" ( _
ByVal uAction As Long, _
ByVal uParam As Long, _
ByRef lpvParam As Any, _
ByVal fuWinIni As Long) As Long

' 關閉監視器(秒數後)
Call SystemParametersInfo(SPI_SETLOWPOWERTIMEOUT, 秒數&, 0&, 0)
Call SystemParametersInfo(SPI_SETPOWEROFFTIMEOUT, 秒數&, 0&, 0)

' 開啟監視器
Call SystemParametersInfo(SPI_SETLOWPOWERTIMEOUT, 0, 0&, 0)
Call SystemParametersInfo(SPI_SETPOWEROFFTIMEOUT, 0, 0&, 0)

' 取得關閉監視器的設定秒數
Call SystemParametersInfo(SPI_GETLOWPOWERTIMEOUT, 0, m_nLowpowerTimeout, 0)
Call SystemParametersInfo(SPI_GETPOWEROFFTIMEOUT, 0, m_nPoweroffTimeout, 0)

搜尋相關Tags的文章: [ 螢幕 ] , [ 省電模式 ] ,
本篇文章發表於2010-06-14 09:54
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
目前尚無任何回覆
   

回覆
如要回應,請先登入.