!!! Pb fonction !!!

Signaler
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
-
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
-
J'ai un problème avec une fonction que j'ai faite :

http://www.cppfrance.com/code.aspx?ID=28353

Cette fonction permet d'insérer un bitmap dans un richedit.
Le problème est que je ne peux pas insérer 2 fois le même HBITMAP (donc 2 appels de cette fonction en envoyant le même HBITMAP) en une exécution du programme.

C'est sûrement un problème de libération de ressources ou de mémoire.
J'attends votre avis et vos propositions avec impatiences.

Merci d'avance.

YOYO, @+.
:big) YOYO ;)

11 réponses

Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
3
il faut faire un copie du HBITMAP
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Salut JCDjcd,

Comment ferais-tu une copie du HBITMAP ?
hBitmapcopie = hbitmaporigine; ?
avant l'appel de la fonction ou dans la fonction ?

Si tu as réussi à faire fonctionner cela, précise moi ta technique je serai impatient de l'avoir.

YOYO, @+.
:big) YOYO ;)
Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
3
tu la sort d'ou ta bitmap, il suffit de faire un LoadBitmap pour chaque fenetre. (A moins que tu veuilles directement faire un copie a partir d'un HBITMAP).
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Excuse-moi JCDjcd,

mais c'est à ce demandé si t'as regardé la source que j'ai mis en lien.
Parce que la fonction reçoit un HWND du richedit où inclure le HBITMAP, ainsi que le HBITMAP en question.

YOYO, @+.
:big) YOYO ;)
Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
3
oui j'ai regarde ta source.

l'appelant fait :

*******************************************
hbmp = LoadBitmap(...);
InsertBitmap(hwnd,hBmp);
hbmp = LoadBitmap(...); // avec les mem arguments
InsertBitmap(hwnd,hBmp);
*******************************************

au lieu de :

*******************************************
hbmp = LoadBitmap(...);
InsertBitmap(hwnd,hBmp);
InsertBitmap(hwnd,hBmp); // ici on utilise le meme hBmp
*******************************************
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
JCDjcd,

je viens d'essayer ce que tu m'as dit, et malheureusement ça fonctionne pas.
Pourtant j'ai croisé les doigts à fond, mais visiblement ça voulait pas.

Si t'as une autre idée vas-y, sinon je crois que je vais envoyer un mail à Brunews.

YOYO, @+.
:big) YOYO ;)
Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
3
si ca ca marche :
*********************************************
hbmp = LoadBitmap(...); // toto1.bmp
InsertBitmap(hwnd,hBmp);
hbmp = LoadBitmap(...); // toto2.bmp
InsertBitmap(hwnd,hBmp);
*********************************************

alors cela devrait a priori marcher de la meme maniere :
*********************************************
hbmp = LoadBitmap(...); // toto1.bmp
InsertBitmap(hwnd,hBmp);
hbmp = LoadBitmap(...); // toto1.bmp (meme nom)
InsertBitmap(hwnd,hBmp);
*********************************************
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Et bien non malheureusement ça fonctionne pas.
J'ai testé.

Merci de ta persévérance.
Je pense que je vais écrire à Brunews.

YOYO, @+.
:big) YOYO ;)
Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
3
tu sais a quelle ligne de ta fonction ca ne fonctionne pas ?
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Ben non,

c'est ça le pire.
Et en plus je peux pas vraiment savoir parce que si je shunte un truc la fonction ne fonctionnera pas à moi que tu ais une idée à laquelle j'ai pas pensé.

YOYO, @+.
:big) YOYO ;)
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Eureka, j'ai trouvé.
Si yen a qui veulent des infos, qu'ils se manifestent.

YOYO, @+.
YOYO