[C con Clase] El ícono en el system tray no es el que defino

D1e6o! diegogeid en gmail.com
Jue Mar 1 21:40:07 CET 2007


Hola amigos.. bueno... Perdón por molestar de nuevo... pero hay veces que no
se donde buscar... Y en este caso em estoy volviendo loco... Se trata de
íconos:

Probando con íconos intenté llevarlo al system tray, pero cuando lo hago no
tengo el ícono que quiero sino el ícono small que tiene la aplicación:

en winmain...


    wincl.hIcon  = LoadIcon(GetModuleHandle(NULL),
MAKEINTRESOURCE(ID_APICONO));
    wincl.hIconSm  = (HICON)LoadImage(GetModuleHandle(NULL),
MAKEINTRESOURCE(ID_SMICONO), IMAGE_ICON, 16, 16, 0);

y en alguna parte del winmain:

    MyTaskBarAddIcon (hwnd, ID_ICON, LoadIcon(GetModuleHandle(NULL),
MAKEINTRESOURCE(ID_ICONO)), "Prueba de íconos");



Y en las definiciones de funciones:

BOOL MyTaskBarAddIcon (HWND hwnd, UINT uID, HICON hicon, LPSTR lpszTip)
{
   BOOL res;

   /* Cargo la estructura con los datos */
   tnid.cbSize = sizeof (NOTIFYICONDATA);
   tnid.hWnd = hwnd;
   tnid.uID = uID;
   tnid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
   tnid.uCallbackMessage = WM_USER;
   tnid.hIcon = hicon;
   if (lpszTip)
      lstrcpyn (tnid.szTip, lpszTip, sizeof(tnid.szTip));
   else
      tnid.szTip[0] = '\0';

   /* Le pido al EXPLORER que agregue el ícono */
   res = Shell_NotifyIcon (NIM_ADD, &tnid);

   return res;
}


En ids.h:

#define    ID_ICON 1

y en recursos.rc:

ID_ICONO ICON "SRSM.ico"
ID_SMICONO ICON "1.ico"
ID_APICONO ICON "2.ico"

Lo que hace el programa es poner el ícono que defino en wincl.hIconSm en
system tray y no el de LoadIcon(GetModuleHandle(NULL),
MAKEINTRESOURCE(ID_ICONO))

Y si fuera por el tamaño, también probé:
MyTaskBarAddIcon (hwnd, ID_ICON,(HICON)LoadImage(GetModuleHandle(NULL),
MAKEINTRESOURCE(ID_SMICONO), IMAGE_ICON, 16, 16, 0) , "Prueba de íconos");

Y sigue siendo el mismo ícono el que aparece... No entiendo por que sucede
esto... Y por otro lado...
Que es ID_ICON? Que valores puede tomar?
Como puedo hacer para cambiar de íconos (ovbiamente una ves que funcione
esto)

Gracias a todos! (y muchas gracias steven que me sacás muchas dudas a
disrio!!!) Saludos!
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20070301/b3de92af/attachment.html>


Más información sobre la lista de distribución Cconclase