• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 269
  • Last Modified:


I need help in two questions:

1. How application can configure or preview screensaver?

2. Why ON_WM_SETTINGCHANGE() message handler can not respond to changing the system settings, concerning screensavers. On other cases it works...

I use MSVC++ 6.0 & MFC...

Beforehand thanked, Sergeyka.
  • 2
1 Solution
1. INFO: Screen Saver Command Line Arguments

2. The system sends the WM_SETTINGCHANGE message to all top-level windows when the SystemParametersInfo function changes a system-wide setting. The system sends this message only if the SystemParametersInfo caller specifies the SPIF_SENDCHANGE flag. A screen saver does not use SystemParametersInfo to change its settings. It is up to the screen saver how to save its settings.

You might want to take a look at my article at CodeGuru.

A Complete Screen Saver Framework Using MFC
SergeykaAuthor Commented:
Thank you chensu.

Beside me revision on the second point:
I had in mind not adjustment concrete screensaver, but adjustment screensaver in general, timeout, for instance.

If I can set or get a system parameter using function SystemParametersInfo(), why I can not learn of change of these system parameters, concerning only screensaver?

Or how can I detect/catch system parameters changes, concerning screen saver
The system sends the WM_SETTINGCHANGE message only if the SystemParametersInfo caller specifies the SPIF_SENDCHANGE flag. You may use Spy++ with a top-level window to see if the message is sent.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now