...detect when wini.ini setting have changed?

Author: Thomas Stutz

Category: System

{
  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;

 

printed from
www.swissdelphicenter.ch
developers knowledge base