Ecriture dans un fichier binaire

Bonjour à tous,

J'ai un problème avec l'instruction Put. J'ai un code qui me permet de créer un fichier binaire et d'écrire certaines données dessus dont des adresses hexa (sur 32 bits), en faisant des essais je me suis rendu compte que l'adresse FFFF_FFFF ne passait pas étant donné qu'il était déclaré en long.

 adresse_val = CLng(hex_string_to_uint(Replace(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), "_", "")))
                    Put #1, , adresse_val

Donc j'ai essayé de découper mon adresse en plusieurs morceaux afin de les faire rentrer dans un integer.

Voici mon bout de code

adresse_val1 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 1, 2))
                    Debug.Print ("adresse valeur1 :" & adresse_val1)
                    adresse_val2 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 3, 2))
                    Debug.Print ("adresse valeur2 :" & adresse_val2)
                    adresse_val3 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 6, 2))
                    Debug.Print ("adresse valeur3 :" & adresse_val3)
                    adresse_val4 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 8, 2))
                    Debug.Print ("adresse valeur4 :" & adresse_val4)

                    Put #1, , adresse_val1
                    Put #1, , adresse_val2
                    Put #1, , adresse_val3
                    Put #1, , adresse_val4

Ca ne fonctionne pas, au moment de l'écriture en binaire il écrit, je ne comprends pas pq j'ai 00 à l'adresse 1

vba

Difficile de répondre avec un bout de code incomplet. Si vous ne souhaitez pas présenter le fichier complet, pourriez-vous isoler le code qui donne ce résultat dans une macro et nous la proposer ? Si on ne peut pas reproduire l'erreur, il est difficile de vous aider.

Rechercher des sujets similaires à "ecriture fichier binaire"