如何關閉ScreenSave功能, Timeout時間

原始來源: cww

此外希望只有本次使用 Windows 時改變(下次開機時還原原狀), 則
最後參數改為  SPIF_SENDWININICHANGE (沒有SPIF_UPDATEINIFILE)

 Const SPI_SETSCREENSAVEACTIVE = 17
 Const SPI_SETSCREENSAVETIMEOUT = 15
 Const SPIF_SENDWININICHANGE = &H2
 Const SPIF_UPDATEINIFILE = &H1

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

Private Sub SetScreenSaveTimeout(ByVal BySecond As Long)
  Call SystemParametersInfo(SPI_SETSCREENSAVETIMEOUT, BySecond, 0, _
          SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE)
End Sub

Private Sub EnableScreenSave()
  Call SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, 1, 0, _
          SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE)
End Sub
Private Sub DisableScreenSave()
  Call SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, 0, 0, _
          SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE)
End Sub