yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 2009
-
14 janv. 2007 à 11:56
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 2009
-
15 janv. 2007 à 10:45
Bonjour à toutes et à tous.
Voilà mon souci. Attention soyez attentifs !
Je souhaite mettre un fichier en ressource d'un exécutable. Facile me direz-vous !
Sauf qu'il y a un hic. A la compilation je sais le faire sans souci.
Le souci est que je souhaite ajouté un fichier en ressource d'un exécutable qui est déjà compilé.
Donc première question, est-ce possible ?
Si oui, comment dois-je m'y prendre ?
Merci d'avance pour votre aide.
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 14 janv. 2007 à 12:49
Salut,
Tu peux mettre en ressource n'importe quel type de fichier. Personnellement, j'éris le fichier rc manuellement en précisant l'identificateur de la ressource, son type et son chemin. Comme on peut le voir, c'est ultra simple:
ID_001 BINAIRE "appli.exe"
Je pense que c'est un standard pour tous les compilateurs de ressources sous Windows et Linux.
Sous Windows on fait FindResource(0,<var>"ID_001"</var>,<var>"BINAIRE"</var>); pour trouver la ressource.
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 14 janv. 2007 à 13:00
Salut !
24Karas > merci pur les liens j'y regarde de suite.
racpp > comme je l'ai précisé je ne veux pas mettre en resource à la compilation mais dans un exécutable déjà compilé.
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 14 janv. 2007 à 13:17
Merci racpp, c'est pour un exe externe donc aucun souci de ce côté là !
Merci beaucoup 24Karas, tes liens sont très intéressants et semblent me convenir parfaitement.
Je vous tiens au courant de l'évolution.
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 14 janv. 2007 à 14:05
Il y a un souci que je n'arrive pas à régler pour l'instant.
Dans les exemples que j'ai, on passe une ressource d'un exécutable à un autre exécutable.
Sauf que moi, je veux incorporer un fichier quelconque (binaire) dans un exécutable.
En fait il semblerait qu'il faille que je transforme le fichier à ajouter en une ressource mais je ne sais absolument pas comment faire.
Quelqu'un a une idée ?
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 14 janv. 2007 à 14:23
Tu dois mettre le contenu de ton fichier EXE dans un buffer avec
ReadFile(). La fonction UpdateResource() permet de préciser le nom et le
type de la ressource à ajouter. Son 5ème paramètre est le pointeur
(buffer) sur la zone contenant les octets à mettre en ressource. Le
dernier paramètre précise sa taille.
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 14 janv. 2007 à 15:30
Ok merci pour l'info racpp !
Ya juste un souci, ce qu'il y a à mettre en ressouce peux faire plusieurs centaines de Mo voir quelques Go.
En fait c'est un fichier complètement quelconque.
C'est pour cela que si je mets tout dans un buffer je vais exploser la mémoire ! lol
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 15 janv. 2007 à 09:10
J'ai peut-être une autre idée.
Si je rajoute moi-même en écrivant tout simplement dans le fichier exécutable pour y rajouter un fichier quelconque après les données binaires. Est-ce que cela ne gênera pas l'exécution ?
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 15 janv. 2007 à 10:21
Ah parfait ! Merci BruNews, je pense que je vais donc adopté cette technique.
Y a t'il un moyen de savoir par le code, la taille de données de l'exécutable, une fois que j'aurais ajouté un autre fichier à la suite ?
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 15 janv. 2007 à 10:45
Lol ! J'avais même pas pensé à mettre la longueur à la fin !
C'était tout bête pourtant.
J'ai tout ce qu'il me faut maintenant.
Merci à vous tous de m'avoir aidé.
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"