Ver Mensaje Individual
  #33  
Antiguo 09-10-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Reputación: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Me gustaría resucitar este hilo para aportar un detalle útil en este tema, al menos para mi.

Código:
SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0);
Que propuso cHackAll funciona muy bien, pero al actualizar el explorador, borra los ListView y los reescribe, con lo que el efecto visual de "apagón" o "parpadeo" no es muy elegante en máquinas lentas, aunque muy efectivo.

He traceado los mensajes del explorador y he visto dos cosas interesantes:
1º Al pulsar F5 se genera un mensaje WM_COMMAND LPARAM 0x1A220 LPARAM 0

2º Al elegir la opción de menú ver \ actualizar, se genera un mensaje WM_COMMAND LPARAM 0x0A220 LPARAM 0

Así que:
Código:
  PostMessage(HWND_BROADCAST, WM_COMMAND, 0x0A220, 0);
Actualiza inmediatamente el explorador de archivos sin parpadeo, como si lo hiciésemos desde menú o pulsando F5

La pega está en que este sistema es muy dependiente del software del explorador actual y si Microsoft lo cambia dejará de funcionar, así como no funcionará, muy posiblemente, en otros exploradores.

Como curiosidad, me ha parecido interesante publicarlo.

Saludos.
Responder Con Cita