Program Visual C++
Screen Saver를 동작 못하게 함.
HisPark
2007. 3. 22. 09:58
XP환경에서 작업 중이었습니다.
PreTranslateMessage() 내에서
//Screen Saver를 동작 못하게 함.
VERIFY(SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, FALSE, 0, 0));
//Screen Saver를 동작하게 함.
VERIFY(SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, TRUE, 0, 0));
이 방법 외에 다른 방법.
SystemParametersInfo(SPI_GETSCREENSAVETIMEOUT,0,m_uScrSaveTime,0);
SystemParametersInfo(SPI_SETSCREENSAVETIMEOUT, 0, NULL, 0);
//Screen Saver를 다시 초기화 함.
SystemParametersInfo(SPI_SETSCREENSAVETIMEOUT,m_uScrSaveTime,NULL, 0);
위와 같은 함수를 사용하니 금방 해결되는군요.
WM_SYSCOMMAND, wParam == SC_SCREENSAVE 인 경우 화면보호기가 작동하는 것은 맞습니다만. 여기에 먼저 소개된 방법을 사용해선 화면보호기 종료 처리가 안되었습니다. (XP, Window 2000모두에서)
그럼 즐프하세요.
PreTranslateMessage() 내에서
//Screen Saver를 동작 못하게 함.
VERIFY(SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, FALSE, 0, 0));
//Screen Saver를 동작하게 함.
VERIFY(SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, TRUE, 0, 0));
이 방법 외에 다른 방법.
SystemParametersInfo(SPI_GETSCREENSAVETIMEOUT,0,m_uScrSaveTime,0);
SystemParametersInfo(SPI_SETSCREENSAVETIMEOUT, 0, NULL, 0);
//Screen Saver를 다시 초기화 함.
SystemParametersInfo(SPI_SETSCREENSAVETIMEOUT,m_uScrSaveTime,NULL, 0);
위와 같은 함수를 사용하니 금방 해결되는군요.
WM_SYSCOMMAND, wParam == SC_SCREENSAVE 인 경우 화면보호기가 작동하는 것은 맞습니다만. 여기에 먼저 소개된 방법을 사용해선 화면보호기 종료 처리가 안되었습니다. (XP, Window 2000모두에서)
그럼 즐프하세요.