PDA

View Full Version : Làm Gì với SCREEN SAVER Đây ?



mtmasterpc
27-03-2008, 17:46
Chào các pác. Em đang viết chương trình Player để mở các file AVI, WMV,mp3... nhưng vấp phải tiện ích Screen Saver của WIndows. Vấn đề là em không muốn tiện ích này chạy khi em xem Video và ngược lại cho phép hoạt động khi playing file Audio. Vậy pác nào có cách thì chỉ giúp em. Cảm ơn các pác trước nha!

huytranaz
27-03-2008, 20:39
Chào các pác. Em đang viết chương trình Player để mở các file AVI, WMV,mp3... nhưng vấp phải tiện ích Screen Saver của WIndows. Vấn đề là em không muốn tiện ích này chạy khi em xem Video và ngược lại cho phép hoạt động khi playing file Audio. Vậy pác nào có cách thì chỉ giúp em. Cảm ơn các pác trước nha!
Bạn xem đoạn code sau nhé, có thể đưa vào 1 module:


Option Explicit

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 Const SPI_SETSCREENSAVEACTIVE = 17

Public Function ToggleScreenSaverActive(Active As Boolean) As Boolean
Dim lActiveFlag As Long
Dim retvaL As Long
lActiveFlag = IIf(Active, 1, 0)
retvaL = SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, lActiveFlag, 0, 0)
ToggleScreenSaverActive = retvaL > 0
End Function

Như vậy, khi play video, bạn gọi hàm: ToggleScreenSaverActive 0. Và khi play audio, bạn gọi hàm: ToggleScreenSaverActive 1 là ok.

Chúc thành công,