Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-05-2008
Avatar de Negriz
Negriz Negriz is offline
Miembro
 
Registrado: feb 2008
Ubicación: Some were inside Colombia
Posts: 123
Poder: 19
Negriz Va por buen camino
Nop, ya probe y no hace lo que esperaba.... aunque es muy util, ya que si cambio el autorun de la usb para darle un nuevo icono
esta funcion lo acutaliza (aveces) sin necesidad de sacarla y meterla de nuevo.

con respecto al explorer... no pasa nada.

no se si conocen el Desktop.ini
bueno un amigo me pidio que le hiziera algo donde el seleccionara la imagen y el programa le creara el desktop y le actualizara la imagen al salir....

ese es mi objetivo y por eso hize esta pregunta???

de todas maneras muchas gracias.... la verdad com dijo el amigo escafandra la verdad no esperaba averiguar tanto aca....

gracias.
Responder Con Cita
  #2  
Antiguo 09-05-2008
Avatar de Negriz
Negriz Negriz is offline
Miembro
 
Registrado: feb 2008
Ubicación: Some were inside Colombia
Posts: 123
Poder: 19
Negriz Va por buen camino
Este es un exelente foro....
es uno de los emjores.

Grcias.

El Negriz.
Responder Con Cita
  #3  
Antiguo 12-05-2008
Avatar de Negriz
Negriz Negriz is offline
Miembro
 
Registrado: feb 2008
Ubicación: Some were inside Colombia
Posts: 123
Poder: 19
Negriz Va por buen camino
hola...

Alguna otra sugerencia para actualizar el Desktop???

Grcias.
Responder Con Cita
  #4  
Antiguo 26-05-2008
Avatar de Negriz
Negriz Negriz is offline
Miembro
 
Registrado: feb 2008
Ubicación: Some were inside Colombia
Posts: 123
Poder: 19
Negriz Va por buen camino
hola, gracias a todos por la ayuda.

he probado con la funcion SHChangeNotify... ahun si exito, pero creo que la solucion esta alli...

Gracias a todos...
Se acepatan sugerencias...

Saludos. El Negriz
Responder Con Cita
  #5  
Antiguo 09-10-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.211
Poder: 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
  #6  
Antiguo 10-10-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.211
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Bueno, he de hacer una aclaración a mi post anterior.

El sistema funciona tal cual, pero SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0); envía a "todas" las ventanas top-level. He comprobado que algunos elementos del Microsoft Office reaccionan mal a ese mensaje y se cuelgan.

Como la idea me sigue pareciendo buena, he creado un código para enviar el mensaje a todas las ventanas de una determinada clase (ClassName) con lo que el "bug" queda solucionado. Publico el código, considero que puede ser interesante para otras utilidades también.

Código:
// Estructura con los datos del mensaje a enviar y el nombre de la clase de ventana
struct TClassMsg{
   UINT   Msg;
   WPARAM wParam;
   LPARAM lParam;
   char*  ClassName;
};

BOOL CALLBACK EnumWindowsProc(HANDLE Handle, LPARAM lParam)
{
   int SizeBuffer = 256;
   char* Buffer = new char[SizeBuffer+1];
    TClassMsg *ClassMsg =  (TClassMsg*)lParam;
   int S = GetClassName(Handle, Buffer, SizeBuffer);
   if(S)
   if(stricmp(Buffer, ClassMsg->ClassName)==0){
      // Si coincide el ClasName con el deseado, se envía el mensaje
      PostMessage(Handle, ClassMsg->Msg, ClassMsg->wParam, ClassMsg->lParam);
   }

   delete Buffer;
   return true;
}

typedef BOOL (__stdcall *TP)();
void PostMessageToWindowClass(char *ClassName, UINT Msg, WPARAM wParam, LPARAM lParam)
{
  TClassMsg ClassMsg;

  ClassMsg.Msg = Msg;
  ClassMsg.wParam = wParam;
  ClassMsg.lParam = lParam;
  ClassMsg.ClassName = ClassName;
  
  // Enumero las ventanas
  EnumWindows((TP)EnumWindowsProc, LPARAM(&ClassMsg));
}
Y para usarlo con los fines que propongo:
Código:
PostMessageToWindowClass("CabinetWClass", WM_COMMAND, 0x0A220, 0);
Por supuesto que puede ser mejorado y si alguien lo hace incluso lo agradezco.

Saludos.

Última edición por escafandra fecha: 10-10-2008 a las 21:34:20.
Responder Con Cita
  #7  
Antiguo 15-10-2008
Avatar de Negriz
Negriz Negriz is offline
Miembro
 
Registrado: feb 2008
Ubicación: Some were inside Colombia
Posts: 123
Poder: 19
Negriz Va por buen camino
pues la verdad si estab un poco muerto, voy a mirar gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tab en el Explorador de Windows vtdeleon Noticias 2 16-05-2007 00:14:09
FlashMemory no se ve en Explorador Deiv Windows 5 16-02-2007 00:28:58
Ejecutar un PHP sin explorador majaco Internet 1 24-04-2006 17:24:34
Problemas con el Explorador con las PC en Red santi33a Windows 0 20-12-2005 17:16:46
Explorador de directorios. zugazua2001 Varios 1 08-06-2005 17:48:54


La franja horaria es GMT +2. Ahora son las 10:05:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi