Systray et info bulle

gamemonde Messages postés 336 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 9 juillet 2011 - 24 mars 2006 à 20:14
gamemonde Messages postés 336 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 9 juillet 2011 - 27 mars 2006 à 15:04
oui bonjour je voudrais mettre un info bulle dans un systray j'utilise le code de msnd soit :

#define ARRAYSIZE(a) (
sizeof(a)/
sizeof(a[0]))


NOTIFYICONDATA IconData = {0};


IconData.cbSize =
sizeof(IconData);


IconData.hWnd = GetHWND();


HRESULT hr = StringCchCopy(IconData.szInfo, ARRAYSIZE(IconData.szInfo), TEXT("Your message text goes here."));


if(FAILED(hr))


{


// TODO: Write an error handler in case the call to StringCchCopy fails.


}


IconData.uTimeout = 15000;
// in milliseconds


Shell_NotifyIcon(NIM_MODIFY, &IconData);

mais la compilation me dit :
c:\Documents and Settings\ROULEAAJ\Bureau\Chat\SysTray.cpp(272): error C2039: 'szInfo' : n'est pas membre de '_NOTIFYICONDATAA'

doit-on inclure autre chose que windows.h
merci de me repondre.

4 réponses

cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
24 mars 2006 à 23:13
BOOL AddNotifyIcon(HWND hWnd, UINT uiId, LPCTSTR lpIcon, char *szInfoBulle)
{
NOTIFYICONDATA nid;

nid.cbSize = sizeof(NOTIFYICONDATA);
nid.hWnd = hWnd;
nid.uID = uiId;
nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
nid.uCallbackMessage = WM_TRAY_ICON;
nid.hIcon = LoadIcon(hInst, lpIcon);

strcpy(nid.szTip, szInfoBulle);

return Shell_NotifyIcon(NIM_ADD, &nid);
}

if(!Meilleur("Joky")) return ERREUR;<
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
24 mars 2006 à 23:14
Au faite rendons à césar ce qui est à césar, ce bout de code provient de la derniere source de LordBob
Donc voilà ;)
J'ai appris comment mettre une icon dans le systray grâce à lui lol.
if(!Meilleur("Joky")) return ERREUR;<
0
Taron31 Messages postés 199 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 28 février 2008
25 mars 2006 à 22:54
Gamemonde >> Ajoute #include <shellapi.h> dans ton code...

___________________
MVS - Most Valuable Student ( Microsoft)
0
gamemonde Messages postés 336 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 9 juillet 2011 2
27 mars 2006 à 15:04
Joky : je sais comment mettre une icone l'enlever......
je voulais un info bulle comme quand on descend msn et qui dit ce programme est toujours en executions....

mon probleme est que j'avais pas la bonne version d'explorer su j'en crois le fichier shellapi.h qui est inclus avec windows.h dans vs2003.net

alors j'ai tricher en enlevant les #if mais ca change rien car meme si j'ai access maintenant au donnée membres de la classe NOTIFYICONDATA si je lui rentre une valeur et un timeout, mon info bulle n'apparait même pas. ma solution est de trouver ce que je n'est pas ce qui sera dificile car il etias ecrit #Variable (je me souvient plus laquelle) > 0x0500 .....

donc et bien je vais continuer a chercher, si vous avez une idée dite le moi s-v-p toute les idées seront les bienvenue.
Ps : j'ai windows professionnelle services pack 2.
0
Rejoignez-nous