Bonjour,
Est-ce possible de r�aliser un ex�cutable qui cr�� un ex�cutable ? (la r�ponse est bien s�r oui, mais comment ? une piste ? une id�e? ou un d�bat?)
Comme par exemple un cr�ateur d'installateur qui cr�� un installateur .
Merci
Bonjour,
Est-ce possible de r�aliser un ex�cutable qui cr�� un ex�cutable ? (la r�ponse est bien s�r oui, mais comment ? une piste ? une id�e? ou un d�bat?)
Comme par exemple un cr�ateur d'installateur qui cr�� un installateur .
Merci
pour cr�er un executable il te fo deja un compilateur
a moins qu'il ne veuille faire un compilateur...
Dans ce cas la, bon courage!!!Envoy� par damienlann
Salut !
Esque qu'il ne veux pas plutot faire un fichier archive SFX comme le fait WinRar par example !?![]()
++
Comment �a il me faut un compilateur??
Prenons l'exemple de Nullsoft qui cr�� un installateur..
comment il fait pour cr�er un exe ?
Ne me dis pas que que Nullsoft joins un compilateur C++ avec
il doit y avoir 1 astuce !
a on avis , l executable doit etre deja cr�er et toi tu ne fais que rajouter des parametre dans des autres fichier , je pense , sinon il dispose vraiment d un compilateur (pas forcement du c++)
Salut !
Je croi qu'il y a diff�rentes solutions pour faire un installeur !
La plus simple � mon avis,c'est de faire un �xecutable qui est capable d'executer certain commandes qui lui seront pass� en utilisant un fichier text par example !
Et lors de la c�ation ou la configuration de l'installeur(les fichiers � inclure pour �tre install�s apr�s,leur d�stination lors de l'installation,message � afficher....),un fichier sera cr�� qui r�sume tout ces manip,et en plus les fichiers qui vont �tre install�es,seront ajout�s � l'executable lui m�me comme �tant des ressources(comme le fait l'outil "ResHaker" par example)...
Comme r�sultat ,on aura un seul fichier(l'executable) qui contient tout les fichier � installer + un fichier text qui contient les informations de ces fichiers et les commandes � �xecuter,donc l'executable (ou l'installeur) n'as qu'� tout �xtraire dans dossier tomporaire,et lire ce qu'il doit faire depuis le ficher text,et commancer l'installation...
Autres fonction qui devrai faire comme Compression,personnalisation,mise � jours...
Conclusion: �a d�pond de ce que tu veux,et de ce que tu peu faire![]()
a+
si tu veu un installeur
http://jeg.developpez.com/jinstaller/
Votre question est tr�s g�n�rale. On peut toujours charger dans un TMemoryStream un ex�cutable type et le modifier par programme pour obtenir un autre ex�cutable. Par exemple, imaginons Project1.exe qui contienne simplement un bouton affichant "Bonjour" sur clic d'un bouton, on peut cr�er un programme qui lise ce Project1.exe et change Bonjour en Bonsoir et cr�e Project2.exe sur clic d'un bouton.Envoy� par echap2000
� partir de l�, m�me si c'est tr�s rudimentaire (on n'a fait que changer une cha�ne en une autre de m�me longueur), tous les d�lires sont possibles.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 void __fastcall TForm1::Button1Click(TObject *Sender) { int L; char *F; TMemoryStream *MS; MS=new TMemoryStream(); MS->LoadFromFile("Project1.exe"); L=MS->Size; F=new char[L]; MS->Read(F,L); Change(F,L,"Bonjour","Bonsoir"); MS->Position=0; MS->Write(F,L); MS->SaveToFile("Project2.exe"); delete MS; delete[] F; Close(); } //--------------------------------------------------------------------------- void __fastcall TForm1::Change(char* P, int L, char* a, char* n) { int NbC,i,j,k; bool ok; NbC=strlen(a); i=0; do { ok=(Egal(P,i,a)); if(ok) for(k=0;k<NbC;k++) P[i+k]=n[k]; if(!ok) ok=(i++==L-NbC-1); } while(!ok); } //--------------------------------------------------------------------------- bool __fastcall TForm1::Egal(char* P, int i, char* a) { int NbC,j; NbC=strlen(a); for(j=0;j<NbC;j++) if(P[i++]!=a[j]) return false; return true; }
� bient�t
Gilles
c'est juste ! je viens d'analyser un logiciel qui cr�ait sois-disant un fichier exe mais non ! il renommait un fichier .dll (qui � la base est un Exe) en .exe. Mais il ajoute un fichier � cet exe, (ou modifie cet exe)
Savez-vous comment ajouter un fichier � un exe ?
j'ai �cris un mail au cr�ateur d'un logiciel qui fait exactement ce que je veux que �a fasse. et il l'a expliqu� :
[/FONT][FONT=Tahoma]Salut,
C'est une technique assez sp�ciale, en fait les .exe ou .dll sous windows peuvent contenir des ressources et windows permet facilement d'en rajouter via les API de gestion des ressources fichiers. donc dans un premier temps je creer un objet ZipArchiver et j'ajoute tout les fichier qui m'interesse, ensuite je creer un fichier texte qui indique a quel endroit doit s'installer chaque fichier, enfin je demande (via une API windows) a les mettre dans les ressource d'un programme deja creer. Ce programme ce charge d'extraire les ressource qu'il contient. J'ai developp� sa en Delphi voila les API que j'ai utilis� pour acceder au ressources :
Dans le "compilateur" :
BeginUpdateResource();
UpdateResource(); EndUpdateResource();
Dans l'extracteur :
FindResource(); LockResource();
UnlockResource();
FreeResource();
Partager