begin process at 2012 05 29 09:35:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

API

 > 

image jpg dans ressource


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

image jpg dans ressource

vendredi 7 octobre 2005 à 09:16:03 | image jpg dans ressource

mogwai93

bonjour

j'aimerais afficher sur une fenetre une image jpg contenu dans une ressource.

pour le moment, je sais afficher une image jpg à l'exterieur de l'executable  (style fichier / ouvrir)
je sais afficher une image bmp contenue dans une ressource

mais faire la meme chose avec un jpg me pose probleme, car le code que j'ai, contient un "fopen"...
donc j'aimerais savoir comment lui dire que le jpg est dans l'exe

merci

PS: je programme avec Devcpp
vendredi 7 octobre 2005 à 19:31:26 | Re : image jpg dans ressource

racpp

Administrateur CodeS-SourceS
Salut,
Si tu utilises l'interface IPicture pour afficher ton image, je peux te donner un exemple.


vendredi 7 octobre 2005 à 22:11:23 | Re : image jpg dans ressource

mogwai93

c'est bien l'interface IPicture que j'utilise
donc appel aux methodes CreateStreamOnHGlobal, OleLoadPicture, ...

voila le code que j'ai  (j'ai enlevé tous les tests d'existence et de memoire....)

-------------------------------
    ...
    fp = fopen(FileName,"rb");
    fseek(fp,0,SEEK_END);
    int fs = ftell(fp);
    fseek(fp,0,SEEK_SET);
    hG = GlobalAlloc(GPTR,fs);
    pp = (void*)hG;
    fread(pp,1,fs,fp);
    fclose(fp);
   
    CreateStreamOnHGlobal(hG,false,&s);
    ....
--------------------

je pense que c'est à cet endroit qu'il faut modifier le code
mais je ne sais pas quoi mettre

merci

samedi 8 octobre 2005 à 04:24:18 | Re : image jpg dans ressource

racpp

Administrateur CodeS-SourceS
Réponse acceptée !
Voici un exemple:
HINSTANCE hinst=GetModuleHandle(0);
HRSRC ressource = FindResource(hinst,"ID_JPG","RT_RCDATA");
HGLOBAL mem = LoadResource(hinst, ressource);
LPVOID data = LockResource(mem);
DWORD taille = SizeofResource(hinst, ressource);
HGLOBAL hGlobal = GlobalAlloc(GMEM_FIXED, taille);
CopyMemory(hGlobal,data,taille);
FreeResource(mem);
LPSTREAM pstm = 0;
HRESULT hr = CreateStreamOnHGlobal(hGlobal, 1, &pstm);
IPicture *Ipic;
hr=OleLoadPicture(pstm, taille, 0, IID_IPicture, (LPVOID *)&Ipic);
Tu afficheras ensuite l'image gâce au pointeur Ipic obtenu.
Le fichier script de ressource contient la ligne suivante:

ID_JPG     RT_RCDATA     "image.jpg"
Voilà, j'espère n'avoir rien oublié. Bonne programmation.

samedi 8 octobre 2005 à 06:09:29 | Re : image jpg dans ressource

mogwai93

merci,
je pense que c'est bon

il faut que je trouve maintenant pourquoi FindResource me retourne NULL...
pourtant tes parametres sont ok
et l'image jpg est bien dans l'executable  (testé avec reshacker)


samedi 8 octobre 2005 à 06:17:42 | Re : image jpg dans ressource

mogwai93

enfin j'ai trouvé

voici le code qu'il faut mettre :
HRSRC ressource = FindResource(hinst,(LPCTSTR)ID_JPG,"RT_RCDATA");

et ca fonctionne !!

encore merci



Cette discussion est classée dans : ressource, afficher, image, jpg


Répondre à ce message

Sujets en rapport avec ce message

comment afficher jpg en ressource binaire (MFC) [ par gege1024 ] tout est dans le titre URGENT comment afficher un ".jpg" avec Visual C++ [ par sleepyallow ] Je dois afficher une image jpeg dans une fenetre (l'image changera au cours de l'execution du prog).Je dois faire ca avec visual c++.suis complètement afficher jpg [ par maxpog23 ] Salut a tous, Je developpe actuellement une appli win32 et jaimerais afficher une image au format jpg pour rendre tous ca un peu plus chatoyant. J'arr Afficher une image provenant d'une ressource [ par Spartan03 ] Je voudrais insérer une image provenant d'une ressource dans mon application, le problème est que, avec la fonction LoadImage() le premier argument  d Afficher une image Jpg contenu dans les ressources sans DLL [ par Blackhorn ] Voila je voudrais savoir si il est possible d'Afficher une image Jpg contenu dans les ressources sans DLL ...et si quelqu"un a le code de mer le passe Comment afficher une image jpg dans un picturebox [ par myckie ] Bonjour voila tout est dans le sujet j'aimerai afficher une image jpg se trouvant sur mon disque dur dans un picturebox, j'ai essayé du code mais aucu Afficher une image jpg depuis un serveur web [ par dinosormp ] Salut tous le monde, Je veux afficher une image jpg depuis un serveur web(apache par exemple) en utilisant le c++ natif(win32). J'ai utilisé la mét Image jpg fond ecran [ par PADYVEN ] Bonjour,voila je travil en cj'ai une form windowset un fichier de resource contenant une jpgje voudrais mettre cette image en fond de ma fenetre pour [C++ Builder] Comment charger un JPG puis le gérer ensuite comme un BMP ? [ par MikeGyver ] Bonjour à tous !Je suis en train de concevoir un petit soft qui permettrait de redimensionner, recadrer, etc...des photos issues d'un APN afin de les creation d'un tableau et fonction image [ par zaz0u ] Alors voila je voudrai faire un tableau qui permet d'afficher des images avec la lib SDL!je sais faire un tableau et je sais afficher une image mais m


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,983 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales