function dsk: THandle;
var
P: PChar;
begin
Result := FindWindow('ProgMan', nil);
Result := GetWindow(Result, GW_CHILD);
Result := GetWindow(Result, GW_CHILD);
getmem(p, 14);
GetClassName(Result, P, 14);
if P <> 'SysListView32' then Result := 0;
freemem(P);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
h: THandle;
begin
h := dsk;
sendMessage(h, LVM_SETBKCOLOR, 0, clBlack);
sendmessage(h, LVM_SETTEXTCOLOR, 0, clWhite);
sendmessage(h, LVM_SETTEXTBKCOLOR, 0, clBlue);
invalidaterect(windowfromdc(0), nil, false);
end;