31. juli 2006 - 19:01Der er
7 kommentarer og 1 løsning
WM_SETTINGCHANGE message
Når der sker en ændring i f.eks. baggrunds billedet så sender windows en WM_SETTINGCHANGE message. Denne besked modtages fint men værdien wParam skulle så indeholde en værdi der fortæller hvad der er ændret men den har altid værdien 0 hvis jeg ændre baggrundsbilletet?
Koden:
type TForm1 = class(TForm) Memo1: TMemo; private { Private declarations } procedure WMSETTINGCHANGE(var Message : TMessage); message WM_SETTINGCHANGE; public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.WMSETTINGCHANGE(var Message : TMessage); begin // if Msg.WParam=SPI_SETDESKWALLPAPER then Memo1.Lines.Add('ændring '+inttostr(Message.WParam)); end;
Har lavet lidt test og fundet ud af at det kan jeg ikke bruge. Det jeg har brug for et et program der holder øje med om baggrunds billedet ændre sig, programmet må ikke kunne afsluttes under processer af en begrænset bruger i windows XP.
Jeg skal bruge WM_SETTINGCHANGE for at kunne få besked i samme øjeblik der sker en ændring af baggrundsbilledet. Men mit problem nu er hvordan jeg forhindre en begrænset bruger i at afslutte mit program i processer.
Ja, hvis det løste din opgave er den jo pingeling :-))
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.