Page 1 sur 2

Inclure ressource

Publié : mer. 23/nov./2005 22:27
par Droopy
J'essaye d'inclure un fichier dans une ressource ( fichier rc )

Le code suivant ne fonctionne pas !

Code : Tout sélectionner

Debug FindResource_(NULL,"REG",#RT_RCDATA)
Voici le contenu du fichier RC
  • REG RC_DATA "C:\\WINDOWS\\REGEDIT.EXE"

Je poste tout de suite 10€, Image

en espérant que c'est pas Chris qui me répondra ( Il prend 15€ par réponse lui )

Publié : jeu. 24/nov./2005 2:01
par Chris
J'aurais bien du mal:

D'abord parce que tu ne m'as toujours pas payé les 15 euros de la réponse précédente, et ensuite, parce que les ressources,j'y connais que dalle
:lol:

Publié : jeu. 24/nov./2005 23:13
par LeCyb

Code : Tout sélectionner

handle = GetModuleHandle_(0)
res = FindResource_(handle,"REG","RT_RCDATA")
If res
  load = LoadResource_  (handle,res)
  size = SizeofResource_(handle,res)
  ptr = LockResource_  (load)
  FreeResource_(res)
EndIf
MSDN: http://msdn.microsoft.com/library/defau ... source.asp

Code : Tout sélectionner

HRSRC FindResource(
    HMODULE hModule,
    LPCTSTR lpName,
    LPCTSTR lpType
);

Publié : ven. 25/nov./2005 9:20
par Droopy
Merci Cyb, mais le problème est que res est toujours égal à 0 :cry:

t'auras pas les 10 euros :lol:

Publié : ven. 25/nov./2005 15:17
par nico
Bon ben puisqu'il y a 10 euros:

change "RT_RCDATA" par #RT_RCDATA

Avec Japbe tu dois charger ta ressource avec le type Raw Data.

Avec cette ligne tu obtiens un pointeur vers tes datas:

Code : Tout sélectionner

ptr = LockResource_  (load) 
Pour faire un essai tu rentres dans un fichier texte "Essai" que tu vas utiliser pour ta ressource.

et puis tu fais:

Code : Tout sélectionner

     ptr = LockResource_  (load) 
     Debug PeekS(ptr,size)
     FreeResource_(res) 

Publié : ven. 25/nov./2005 16:15
par Droopy
Nico j'ai testé en remplaçant "RT_RCDATA" par #RT_RCDATA
et res est toujours égal à 0 :(

Publié : ven. 25/nov./2005 16:21
par nico
T'as chargé une ressource avec pour type Raw Data et pour nom REG ?

Publié : ven. 25/nov./2005 16:38
par Anonyme2
Res est égal à 0 c'est bien.

utilises un debug GetLastError_() après FindResource pour savoir le type d'erreur dont il s'agit pour l'API FindResource

Publié : ven. 25/nov./2005 18:22
par nico
Denis, on a du souci à se faire avec les lib pour les menu car sur le site anglais quelqu'un a sorti une version owner draw et l'autre un wrapper pour la dll coolmenu. :lol:

Publié : ven. 25/nov./2005 18:49
par Anonyme2
Pour moi ce n'est pas grave,

je continue la mienne, ca me permet d'apprendre des choses, je pense avoir résolu les probèmes avec Win98, j'avance sur les menus systèmes etc

Sinon, c'est gratuit ?

Publié : ven. 25/nov./2005 19:07
par nico
A ce qu'il dit , ça serait gratuit!

Publié : ven. 25/nov./2005 19:20
par Droopy
J'ai bien inclus un fichier de type RC_DATA avec comme nom REG

l'erreur renvoyée est :
Le type de ressource spécifié ne peut être trouvé dans le fichier image

Publié : ven. 25/nov./2005 19:29
par nico
Tu utilises Japbe ?

Publié : ven. 25/nov./2005 19:33
par Droopy
trouvé !

en fait dans mon fichier de ressources j'avais :
REG RC_DATA "C:\\WINDOWS\\REGEDIT.EXE"

et ça fonctionne avec
REG RCDATA "C:\WINDOWS\REGEDIT.EXE"

merci encore :D

(j'utilise JAPBE)

Publié : ven. 25/nov./2005 19:44
par nico
Quand tu inclues une ressource tu as 4 colonnes:
-type
-nom
-langue
-fichier

Tu peux me dire ce que tu as dans type et nom, parce que là tu fais de la magie et même pour la V4 Pb ne sera pas le faire!