Page 1 sur 1

Integrer du texte dans un fichier autre que ".txt"

Posté : sam. 05 janv. 2019 12:31
par wattexi
Bonjour, je cherche un moyen pour "cacher" du texte (un mot) dans un fichier de n'importe quel type (le fichier sera corrompu et inutilisable... pas grave), mais ensuite je voudrais ouvrir le fichier extraire mon "mot", l'effacer du fichier pour "reconstruire" celui-ci afin qu'il redevienne utilisable.
Je pensais utiliser le mode "$FO_BINARY" de FileOpen mais je ne peux que l’ouvrir!! Il me faudrait des fonctions genre: FileDataRead, FileDataApend, FileDataWrite...
Je bloque..., je ne cherche pas du code tout fais, je me débrouille. Je cherche des conseils, des infos, une piste...
Merci d'avance

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : sam. 05 janv. 2019 17:56
par mdanielm
Salut,
On peut écrire dans un exe, heureusement:
        #include <file.au3>
   
   Global $t, $ch,$f
   _FileReadToArray("console.exe", $t)
      ;[0] contient 1
      ;[1] contient la chaîne "0x4D5A..."
   $ch = StringTrimLeft($t[1], 2) ; ote "0x"
   $t=0
   ; insertion de "A" à la fin (ou autre)
   $ch &= "41"
   $f = FileOpen("console.exe", 16+2)
   FileWrite($f, "0x" & $ch)
   FileClose($f)

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : sam. 05 janv. 2019 20:15
par wattexi
Ok merci pour ta réponse mais comment faire pour extraire cette lettre où ce mot du fichier? Et que le fichier retrouve ses caractéristiques originales?

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : sam. 05 janv. 2019 21:31
par mdanielm
On fait pareil!

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : sam. 05 janv. 2019 21:56
par Tlem
Bonsoir.
Pour faire ce que vous cherchez à faire, je vous conseil une approche spécifique et organisée.

Si à la fin d'un fichier X (qu'il soit binaire ou pas), vous rajoutez un mot ou une lettre, pour pouvoir le récupérer, il faut en connaitre la longueur !
Du coup, je vous conseil de coder la taille du mot ou de la lettre sur le dernier octet, et avec ça vous pourrez gérer l'extraction de votre lettre ou mot comme bon vous semble.

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : sam. 05 janv. 2019 23:13
par wattexi
Merci pour votre aide, je bloque sur la reconstruction du fichier!
comment faire?

Si je le transforme, ajoute et re transforme:
_FileReadToArray($file_path,$array) > _ArrayAdd($array,$text) >_FileWriteFromArray($new_file_path,$array,1)

lors de l'extraction et reconstruction:
_FileReadToArray($new_file_path,$array) > _ArrayPop($array) > _FileWriteFromArray($new_new_file_path,$array,1,3)

je retrouve bien mon texte grâce a _ArrayPop($array), mon tableau semble correcte (tel que avant ajout du texte), mais il est corrompu, une verif avec notepad++ donne les même caractères crypter mais une "lenght" differente (un @crlf en +) ?

Je fais fausse route ?

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : sam. 05 janv. 2019 23:22
par wattexi
mon "exercice" peut se résumer à:
sélectionner un fichier (de type .txt .docx .rar ou autre), le crypter (_Crypt_EncryptFile), intégrer l’extension d'origine dans le fichier crypté.
un autre script li le fichier crypté, extracte l’extension d'origine, décrypte le fichier (_Crypt_DecryptFile), reconstruit le fichier avec son extension d'origine et il redevient utilisable.

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : dim. 06 janv. 2019 10:24
par mikell
Merci de bien vouloir expriquer en détail les raisons et le but d'un tel "exercice" (cacher quelque chose dans un fichier en le rendant inutilisable, et plus tard extraire ce quelque chose pour que le fichier redevienne fonctionnel)
La question a été posée par Melba, modérateur sur le forum US mais est restée sans réponse.


NB: Le double post (forums FR + US) contrevient aux règles du forum.
Vous ne devez pas poser la même question sur plusieurs forums en même temps (que ce soit sur AutoIt Français ou entre AutoIt Français et un forum étranger). Si vous posez votre question sur un forum étranger, attendez au moins 24h avant de la poser sur AutoIt Français. Si le sujet existe déjà sur AutoIt Français et un ou plusieurs autres forums et que vous le remontez, attendez 24h pour le remonter sur AutoIt Français.

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : dim. 06 janv. 2019 11:57
par wattexi
Imaginons une personne crypte un fichier de type .xxx (pour plus de securité et c'est la que tout se gatte, l’extension d'origine n’apparaît pas dans le nom du fichier crypter) et le fais parvenir à une autre personne qui possède la clef de cryptage.
Cette deuxième personne peut le décrypter et le reconstruire si le script extracte l’extension.
Mon "exercice" est déjà opérationnel, c'est le "hide" de l’extension qui m’embête, mais si cela n'est pas possible, je pense faire cela en ajoutant (de façon crypter) le type d’extension originale dans le nom du fichier crypter...

Re: Integrer du texte dans un fichier autre que ".txt"

Posté : dim. 06 janv. 2019 12:04
par wattexi
Mais si quelqu'un modifie le nom du fichier crypter tout est par terre... Bonjour la faille :shock: ...