Inclure un exe dans une ressource

ssmint Messages postés 43 Date d'inscription mercredi 30 novembre 2005 Statut Membre Dernière intervention 5 décembre 2008 - 18 févr. 2007 à 05:44
ssmint Messages postés 43 Date d'inscription mercredi 30 novembre 2005 Statut Membre Dernière intervention 5 décembre 2008 - 18 févr. 2007 à 18:02
Bonjour, ce que j'aimerais, c'est inclure un exe (déjà compilé...) comme une ressource puis pouvoir l'exécuter à partir de mon programme sans avoir à le recopier préalablement sur le disque. En effet, l'exécutable inclu fait au minimum 50Mo ce qui met trop de temps à ce recopier sur le disque. En outre, je n'ai pas accès au code source de l'exécutable à inclure. Pour résumer, je veux inclure un exe binaire dans mon prog, récupérer une adresse et l'exécuter. Le problème vient egalement du fait que les commandes comme ShellExecute ou CreateProcess requierent un nom de fichier en argument ce qu'on ne peut obtenir dans ce cas étant donné qu'il y a 2 prog un. Sinon j'utilise VC++.
Merci d'avance
 

7 réponses

mogwai93 Messages postés 362 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 4 novembre 2023
18 févr. 2007 à 05:47
Pour inclure une ressource :
regarde sur msdn (ou ici, car on trouve des exemples dans certains codes) : UpdateResource
0
ssmint Messages postés 43 Date d'inscription mercredi 30 novembre 2005 Statut Membre Dernière intervention 5 décembre 2008
18 févr. 2007 à 05:57
Je suis d'accord mais ici, c'est un cas particulier, il ne s'agit pas d'un menu ou d'une image...

 
0
mogwai93 Messages postés 362 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 4 novembre 2023
18 févr. 2007 à 06:06
updateresource met à jour une ressource quel que soit le type de fichier (pour lui, c'est un flux de données...)

par contre de ce qui est de l'exécution d'un executable en tant que ressource ???
0
yoyo269 Messages postés 1403 Date d'inscription lundi 23 février 2004 Statut Membre Dernière intervention 11 janvier 2009 2
18 févr. 2007 à 11:00
Salut ssmint !

Tu peux inclure n'importe quel type de ressource.
Il faut juste que tu donnes un nom de type de ressource perso.
Par exemple à la place de BITMAP, tu peux mettre DATA ou encore EXEC.
Bref ce que tu veux.
Ensuite pour récupérer cette ressource inclue dans un exécutable : FindResource(...); LoadResource(...); et FreeResource(...);

YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
____________________________________________
[Site officiel de YoyoCut, découpe fichiers open source]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
18 févr. 2007 à 12:31
Salut,
Je ne pense pas que ce soit possible d'exécuter un EXE en ressource binaire directement à partir de son emplacement mémoire. Normalement le système charge un EXE, depuis le disque, toujours à la même adresse virtuelle et sans possibilité de le reloger.
0
yoyo269 Messages postés 1403 Date d'inscription lundi 23 février 2004 Statut Membre Dernière intervention 11 janvier 2009 2
18 févr. 2007 à 12:58
Entièrement d'accord avec racpp.
Pour ce qui est de mettre l'exe en ressource, aucun souci.
Par contre l'exécution d'un exécutable uniquement en mémoire sans qu'aucun fichier n'existe...à mon avis tu peux faire une croix dessus.
Tu devras donc créer le fichier exe.
50 Mo ça devrait pas mettre trop de temps, 3-4 sec.

YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
____________________________________________
[Site officiel de YoyoCut, découpe fichiers open source]
0
ssmint Messages postés 43 Date d'inscription mercredi 30 novembre 2005 Statut Membre Dernière intervention 5 décembre 2008
18 févr. 2007 à 18:02
Ok, merci pour vos réponses, le post reste ouvert aux propositions, s'il en existe...

 
0
Rejoignez-nous