Bueno, respecto al mensaje anterior, ya encontré la manera, lo saqué de una página con un ejemplo en C++ usando la API para simular la tecla 'F5'.
http://www.codeproject.com/system/co...sh_desktop.asp
Y lo implementé de la siguiente manera:
Código:
var
Desktop_handle: THandle;
res: Cardinal;
reg: TRegistry;
icon_size: String;
begin
Desktop_handle := FindWindow('Shell_traywnd', nil);
SendMessage(desktop_handle, WM_SETREDRAW, 0, 0);
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CURRENT_USER;
Reg.OpenKey('Control Panel\Desktop\WindowMetrics', false);
icon_size := Reg.ReadString('Shell Icon Size');
Reg.WriteString('Shell Icon Size', IntToStr( StrToInt(icon_size)+1 ) );
SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE,SPI_SETNONCLIENTMETRICS, 0,SMTO_ABORTIFHUNG, 100000, res);
Reg.WriteString('Shell Icon Size', icon_size);
Reg.closekey;
Reg.Free;
SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE,SPI_SETNONCLIENTMETRICS, 0,SMTO_ABORTIFHUNG, 100000, res);
SendMessage(desktop_handle, WM_SETREDRAW, 1, 0);
end;
Muchas gracias a todos