{
An application sends the WM_WININICHANGE message to all top-level windows
after making a change to the WIN.INI file.
The SystemParametersInfo function sends this message after an application uses the
function to change a setting in WIN.INI.
}
type
TForm1 = class(TForm)
private
{ Private declarations }
procedure WMWinIniChange(var Message: TMessage); message WM_WININICHANGE;
// or WM_SETTINGCHANGE
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.WMWinIniChange(var Message: TMessage);
var
status: Bool;
Area: TRect;
begin
inherited;
case Message.wParam of
// Example: Detect when the screen saver is enabled/disabled
SPI_SETSCREENSAVEACTIVE:
begin
SystemParametersInfo(SPI_GETSCREENSAVEACTIVE, 0, @status, 0);
if Status = True then
ShowMessage('Screensaver has been enabled.')
else
ShowMessage('Screensaver has been disabled.');
end;
end;
end;