Fusion de 2 fichiers .exe

Moderator: Mod

Fusion de 2 fichiers .exe

Postby DENEKAR » Thu Jan 21, 2010 8:00 pm

Bonjour les amis!
Alors c'est mon premier post, et je suis content d'avoir trouvé ce beau forum
Bref, passons aux choses sérieuses :D
Je cherche à fusionner 2 fichiers .exe(exe1.exe et exe2.exe) et écrire le résultat dans un fichier exe(exe3.exe).
J'ai ce code:

[code:1:6bed397b27]int main()
{
FILE *fichierCree, *fichier1, *fichier2;

fichierCree = fopen("exe3.exe", "wb");
fichier1 = fopen("exe1.exe", "rb");
fichier2 = fopen("exe2.exe", "rb");

int car = 0;

while(car != EOF)
{
car = fgetc(fichier1);
fputc((char)car, fichierCree);
}

car = 0;

while(car != EOF)
{
car = fgetc(fichier2);
fputc((char)car, fichierCree);
}

cout << "Appuyez sur Entree pour quitter" << endl;
getchar();
return 0;
}[/code:1:6bed397b27]


Mais quand je clique sur exe3.exe, c'est exe1.exe qui s'exécute alors que je souhaiterais que les 2 s'exécutent en simultané(devinez pourquoi :wink: )
Savez-vous de quelle façon je peux réaliser ce programme?
DENEKAR
Projets
 
Posts: 12
Joined: Fri Jan 15, 2010 7:15 pm

Postby THE-DEATH » Thu Jan 21, 2010 11:44 pm

Il te faut davantage te renseigner sur les binaires, en l'occurence sur le format PE.
Il te faut savoir que la concaténation de 2 fichiers binaires ne permet aucunement de faire executer ces 2 programmes en un unique programme.

Fais un petit tour ici par exemple, des connaissances en bas niveau te seront nécessaire :
http://www.microsoft.com/whdc/system/platform/firmware/PECOFF.mspx
http://msdn.microsoft.com/fr-ca/magazine/cc301805%28en-us%29.aspx
http://msdn.microsoft.com/en-us/library/ms809762.aspx

Une petite docu en plus de te montrer que la programmation est un poil plus complexe que des algorithmes de ce genre (cf: ton code)

PS: essaies de passer par la section présentation a l'occasion ;)
User avatar
THE-DEATH
 
Posts: 971
Joined: Wed Jul 23, 2008 10:49 am
Location: 127.0.0.1

Postby TorTukiTu » Fri Jan 22, 2010 11:23 am

Si tu veux faire ça simplement (et salement), va voir le topic "binder d'exe" du forum.

La tortue.

Ps: c'est normal que tu n'executes que le premier pe. Si tu veux faire comme ça, il va falloir que tu ajoutes en debut de fichier une en-tête capable d'extraire et d'executer tes deux programmes. (exactement ce qui a été fait dans le code que tu trouveras dans la section "binder d'exe".)

Autrement, pour faire la chose correctement (et pas en gorai style comme ci dessus), il te faudra maitriser les bases de l'asm et connaitre un peu le format pe comme te l'a dit slimm.
User avatar
TorTukiTu
Site Admin
 
Posts: 1960
Joined: Thu Feb 07, 2008 10:24 pm
Location: Devant son pc durant la redaction de ce message

Postby Sliim » Fri Jan 22, 2010 1:32 pm

J'ai rien dis moi :lol: Fatigué tortue ? ^^
User avatar
Sliim
Site Admin
 
Posts: 1177
Joined: Fri May 16, 2008 12:53 pm

Postby TorTukiTu » Fri Jan 22, 2010 4:13 pm

Oula effectivement, je suis crevé :oops: Navré Sliim.

La tortue.
User avatar
TorTukiTu
Site Admin
 
Posts: 1960
Joined: Thu Feb 07, 2008 10:24 pm
Location: Devant son pc durant la redaction de ce message

Postby DENEKAR » Fri Jan 22, 2010 4:28 pm

Merci beaucoup, la documentation est très intéressante :D
Je vous laisse, j'ai de la lecture :wink:
DENEKAR
Projets
 
Posts: 12
Joined: Fri Jan 15, 2010 7:15 pm


Return to C/C++

Who is online

Users browsing this forum: No registered users and 1 guest

cron