Rafraichir le bureau

Résolu
kor6k Messages postés 13 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 4 février 2008 - 24 avril 2006 à 09:02
kor6k Messages postés 13 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 4 février 2008 - 24 avril 2006 à 11:41
Je cherche désesperement un moyen de rafraichir le bureau par du code pour faire apparaitre une icône créée avec installshield mais qui n'apparait qu'apres un F5.
J'ai essayé plusieurs techniques:
tout d'abord avec SystemParametersInfo, j'arrive à changer le Wallpaper mais l'icône n'apparait toujours pas...
J'ai ensuite essayé de récupérer le handle du bureau (FindWindow(NULL, "Program Manager") marche mais pas GetDesktopWindow...) et de faire un sendmessage(hDesk, WM_KEYDOWN, VK_F5, 0) et là encore, pas d'icône...
Alors, est ce que quelqu'un a une autre idée???
Merci d'avance !!!

2 réponses

kor6k Messages postés 13 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 4 février 2008
24 avril 2006 à 11:41
En fait, j'avais aussi essayé avec UpdateWindow (mais pas redrawWindow) et ce ne marchait pas non plus.
Pour ce qui est du HWND_DESKTOP, je n'ai pas essayé non plus. En fait, j'ai trouvé la solution tout seul comme un grand:
Pour le handle, il ne faut pas celui du bureau mais celui du "Program Manager".
Donc on le trouve en fesant un FindWindow(NULL, "Program Manager") ou FindWindow("Progman", NULL). Ensuite, il faut utiliser un postmessage et pas un sendmessage. Et dans ce cas, ca marche !!
3
yoyo269 Messages postés 1403 Date d'inscription lundi 23 février 2004 Statut Membre Dernière intervention 11 janvier 2009 2
24 avril 2006 à 10:30
Tu as essayé avec un UpdateWindaw ou RedrawWindow?
Et HWND_DESKTOP c'est pas le handle du bureau? Si oui pas besoin de le chercher.

YOYO, @+.
[font= Comic Sans MS][size=3] [green][:D] YOYO [;)]/green =3Sans MS
0
Rejoignez-nous