JALEO WAHRANI
Messages postés17Date d'inscriptionmercredi 20 juin 2007StatutMembreDernière intervention14 février 2008
-
13 févr. 2008 à 20:21
victorcoasne
Messages postés1101Date d'inscriptionjeudi 24 avril 2003StatutMembreDernière intervention23 juillet 2023
-
14 févr. 2008 à 13:45
Bonsoir à vous tous,
j'essaye de faire un installateur pour une application et j'ai le problème suivant: comment "inclure" les fichiers à copier dans mon exe d'installation.
Je m'explique j'ai 4 fichiers à copier: le prog, 3 dlls et 1 ini. J'aimerais admettons crer un zip et l'inclure dans l'exe. Au moment de l'installation: copie du zip dans un dossier temporaire puis extraction dans le dossier d'installation et suppression du zip.
A la limite, si je peux pas le zipper (ça risque de faire gros quand-même) ça serait déjà ça.
Voilà bon, je pense pas que ce soit super dur puisque c'est ce que font tous les setups (dont inno setup par exemple); mais pour moi ça l'est ...
mogwai93
Messages postés362Date d'inscriptionmardi 31 décembre 2002StatutMembreDernière intervention 4 novembre 2023 13 févr. 2008 à 21:40
2 possibilités :
- les ressources (updateresource sur msdn)
- soit tu concatenes ton fichier à la fin de ton exe; comme tu connais la taille de ton exe, tu en déduis la taille du fichier à extraire (fonctionnement de winrar, winzip, installshield...)
victorcoasne
Messages postés1101Date d'inscriptionjeudi 24 avril 2003StatutMembreDernière intervention23 juillet 20237 14 févr. 2008 à 00:10
Bonjour,
Je te conseille pour t'éviter de t'embetter avec les zip de faire un executable auto-extracteur avec plusieurs fichier à la suite (ces fichiers seront placés à la fin de l'éxecutable via un autre programme).
JALEO WAHRANI
Messages postés17Date d'inscriptionmercredi 20 juin 2007StatutMembreDernière intervention14 février 2008 14 févr. 2008 à 12:05
@victorcoasne: si je comprends bien, ta proposition correspond à la 2ème solution de mogwai93 ???
Je trouve vos propositions super, mais sans non plus taper le code à ma place, j'aimerais bien quelques petites explications en plus sur comment mettre ça en oeuvre.
victorcoasne
Messages postés1101Date d'inscriptionjeudi 24 avril 2003StatutMembreDernière intervention23 juillet 20237 14 févr. 2008 à 13:45
Bonjour,
J'apporte en plus l'idée de ne pas passer par un zip ce qui t'évite encore des choses en plus.
Après tu utilises quoi pour écrire sur des fichiers ?
Sinon le schéma que je te propose est le suivant :
EXECUTABLE
FICHIER4
TAILLEFICHIER4
NOMFICHIER4
TAILLENOMFICHIER4
[...]
FICHIER1
TAILLEFICHIER1
NOMFICHIER1
TAILLENOMFICHIER1Dans ce schéma tu commence à lire la fin sur 4octets (soit un entier 32bit).
Puis tu recules de 4 (l'entier que tu viens de lire) + le nombre que t'as lu (TAILLENOMFICHIER).
Tu lis le NOMFICHIER1 que tu stocke dans une chaine de caractère.
Tu recules de TAILLENOMFICHIER + 4 (c'est la taille du fichier).
Tu lis les 32bits du long TAILLEFICHIER1.
Tu recules de 4 (l'entier) + TAILLEFICHIER1.
Tu lis le fichiers en l'enregistrant.
Puis tu recule de TAILLEFICHIER1.
Et tu recommence par reculer de 4 pour lire TAILLENOMFICHIER2 puis de 4+TAILLENOMFICHIER2 pour lire le nom.........
Pour faire cela tous les fichiers en lecture et en écriture doivent être ouverts de façon binary.