Ver Mensaje Individual
  #9  
Antiguo 03-07-2005
tiel tiel is offline
Miembro
 
Registrado: jul 2003
Ubicación: México, D.F.
Posts: 29
Reputación: 0
tiel Va por buen camino
Listo

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
__________________
“Daría todo lo que sé por la mitad de lo que ignoro”
Responder Con Cita