Below is a code that can be used to merefresh desktop without having to press F5.
procedure TForm1.Button2Click(Sender: TObject); begin
1. SendMessage(FindWindow('Progman','Program Manager'),WM_COMMAND,$A065,0);
2. winexec(Pchar('rundll32 user,repaintscreen'),sw_Show);
3. end;