Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

MANIPULATION FICHIER EXECUTABLE


Description

Cliquez pour voir la capture en taille normale
Comment ajouter des données de plus dans un fichier exécutable ?
c'est comme winzip, il le fait avec le self extracting qui est composé des données du programme et des données à extraire.

voila notre but est d'ajouter simplement du "texte" à la fin d'un fichier exécutable. ensuite on affiche les données ajoutées.

Très utile pour ceux qui veulent faire des logiciels avec des mot de passes ou compteur pour les versions d'évalutaion. souvent les gens stockent les mot de passe dans un fichier externe, que les gens retrouvent facilement.

maintenant au lieu de le faire, il suffit juste d'ajouter les données dans le fichier exécutable lui même et on peut le lire à notre guise.
 

Conclusion

vous trouverez mes travaux sur www.mbodjsystem.com

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de EBArtSoft le 02/12/2007 13:47:09 administrateur CS

Le module bas ne sert a rien de plus le "print #" ya pas mieu pour flingué un fichier binaire.

@+

signaler à un administrateur
Commentaire de EBArtSoft le 02/12/2007 13:49:04 administrateur CS

Bon je me suis relu et je me suis aperçu que ma remarque n'etait pas tres constructive alors pour pas que l'on m'accuse de je ne sais quoi voila mes propositions :

- Place ton API dans la form
- Remplace "Print" par "Get #1" (mode d'ouverture binary)

Voila comme ça c'est plus clair

signaler à un administrateur
Commentaire de mbodjsystem le 02/12/2007 15:41:41

merci pour les suggestions EBARTSOFT !

au niveau du code source, vous remarquerez qu'on a déclaré une constante Const TailleEXE = 24576

la valeur 24576 est obtenue en faisant un clic droit puis propriété apres la compilation du projet sur le fichier exécutable généré.

cette constante marque la taille exacte du fichier exécutable (la taille des données à instruction machine), ensuite à partir de 24576+1, on peut ajouter tout ce que l'on veut :
- image, fichier son, fichier texte, etc.

donc pour extraire l'information ajouter au fichier exécutable, on va partir de 24576 jusqu'à la taille actuelle du fichier....

signaler à un administrateur
Commentaire de yoman64 le 03/12/2007 16:35:45

Salut ,
Comme disait EBArtSoft, ouvrir et écrire dans un fichier executable avec Input/output/append c'est suicidaire, tu dois utiliser le mode binaire.

Et pour ce qui est de ta constante, c'est pas très pratique ,non? tu devrais récuperé la taille du fichier avec un FileLen ou simplement un LOF.

L'idée n'est pas nouvelle, mais ta source est simple.

Bonne continuation.
a+

signaler à un administrateur
Commentaire de mbodjsystem le 03/12/2007 16:51:06

oooh !!! là je ne suis pas d'accord.

FileLen ou LOF (Len of file) ne vont pas résoudre le problème. il faut abligatoirement connaitre dès le départ la taille réél du fichier exécutable sans aucune autre données, ensuite tu pourras utiliser ton filelen.

supposons X = taille de départ, alors la taille des données (données ajoutées) sera alors :

FileLen - X = Y octets

D'où le X est une constante qu'il faut connaitre.

je suis parfaitement d'accord sur les put et les get des fichiers binaires.

signaler à un administrateur
Commentaire de yoman64 le 03/12/2007 17:20:00

Ben dans ce cas tu dois écrire un marqueur dans le fichier executable pour retrouvé le texte, parce que devoir connaitre sa taille dorigine c'est vraiment pas pratique.

Par exemple en ajoutant un stamp contenant la taille des données(ou de l'executable, ce qui revient au meme) à la fin du fichier tu pourrais retrouvé la position des données sans avoir a changé la constante à chaque fois que tu veux relire un fichier

signaler à un administrateur
Commentaire de mbodjsystem le 03/12/2007 17:27:52

Oui, par exemple tu peux le faire. c'est une bonne idée.

mais il faut que ce marqueur soit unique dans tout le fichier. il faudra alors trouvez une chaine de caractères spéciales qui marque la fin de la données.

voila par exemple une autre solution.

si tu as le temps, essaie de poster quelques choses sur ca.

il serait interessant de faire ici sur vbfrance un programme qui s'auto extracte les données qu'il contient.

:-)

signaler à un administrateur
Commentaire de draluorg le 04/12/2007 16:05:11

Salut a tous,

Il y a l'api UpdateRessources qui est prevu pour ca...
Il te permet d'ajouter ou modifier des ressources de toutes sortes (texte, file, version, images etc..)

Et la relecture depuis l'exe n'en sera que simplifiée...

++

signaler à un administrateur
Commentaire de mbodjsystem le 04/12/2007 17:00:58

peux-tu nous donner une petite module stp DRALUORG sur l'API UpdateRessources.

je ne l'ai jamais utilisé !!! :-(

signaler à un administrateur
Commentaire de draluorg le 04/12/2007 17:11:20

Hum wai, mais ca existe deja sur le site...
Regarde dans les sources de "EB avoir le style Xp" (petit exemple tres simple pour ajouter un fichier)
Sinon dans les sources de ShareVb tu trouvera un exemple pour modifier les ressourves version, bitmap et string

Ce sont les sources qui m'ont servie d'exemple pour un generateur d'auto-extratible et pour un generateur de fix de desinfection...
(voir ici un exemple http://systemzeb.free.fr/MakeFixFr.exe)

++


Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

extraction des donnees à partir d'un fichier texte [ par jar_ahmed ] Salut tout le monde, je suis un etudiant stagiaire et je suis nouveau sur le site, je cherche à extraire des donnees(adresse,tel,email...) à partir d' Extraction d'un champs ole d'une table->fichier indépendant [ par Cramfr ] bonjour,J'aimerais pouvoir extraire un fichier enregistrer dans un champs ole d'une table de access 2002 pour créer un nouveau fichier (quelquesoit le Xml et Base de donnees [ par yvesyves ] Bonjour,Je cherche quelques informations pour ne pas faire un projet inutile.Un fichier Xml qui contient des membres, des mots de passe, et d'autres i extraction Nom de fichier [ par LUSTRUCRU ] Bonjour,j'ouvre un classeur excel comme ceci : Le code :Dim Classeur As StringClasseur = Application.GetOpenFilename(filefilter:="Fichier Excel (*.x extraction données d'un fichier texte [ par TM20 ] Bonjour à tous et toutes,voila, je sollicite l'aide de toute personne qui veut bien sur m'aider,je cherche à lire un fichier csv sans excel, c'est à d VB6 Executable sur un iPAQ [ par JeffC1977 ] Salut tout le monde....Je prend une chance de poser cette question sur le forum...J'aimerais savoir s'il y a quelqu'un qui a réussie à mettre un fichi manipulation de fichiers Excel [ par rico59_59 ] Bonjour à tous,Voila je debut en vba sous excel, je voudrais créer une macro (si je peux) qui permettrait de faire un remplacement de cellule ou d'une modifier l'extraction d'un fichier par VBA [ par loic20h28 ] bonjour @ tous, voila j'ai un formulaire sous access avec un bouton dont j'aimerais qu'il exécute le changement d'extraction de fichier c'est à dire Fichier .xml et .pdb génerés avec l'executable. [ par The Meteorologist ] Bonjour, c'était juste pour savoir a quoi servait les deux fichiers génerés avec l'executable. J'ai remarqué qu'en les suprimant le programme semblait extraction de données depuis un fichier pdf [ par hammadigh ] bonjours;dans mon projet, j'ai besoin d'extraire des données à partir d'un fichier pdf. je veux bien savoir si quelqu'un dispose d'une solution, qu'il


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,499 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.