IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Remplacer plusieurs lignes de code hexadécimal dans un fichier


Sujet :

VB.NET

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2019
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2019
    Messages : 24
    Points : 14
    Points
    14
    Par défaut Remplacer plusieurs lignes de code hexadécimal dans un fichier
    Bonjour, je suis entrain de créer un logiciel du type SkinChanger pour le jeu Fortnite battle royale. Je voudrais que quand nous cliquons sur un certain bouton, le programme remplace une ligne précise contre une autres dans un fichiers .pak.
    Exemple de ligne :
    Chercher ça :
    50 6C 61 79 65 72 2F 4D 61 6C 65 2F 4D 65 64 69 75 6D 2F 42 6F 64 69 65 73 2F 4D 5F 4D 65 64 5F 53 6F 6C 64 69 65 72 5F 30 34 2F 53 6B 69 6E 73 2F 42 52 5F 54 61 63 74 69 63 61 6C 4A 75 6E 67 6C 65 2F 4D 61 74 65 72 69 61 6C 73 2F 4D 5F 4D 65 64 5F 53 6F 6C 64 69 65 72 5F 54 61 63 74 69 63 61 6C 4A 75 6E 67 6C 65 5F 30 31 2E 4D 5F 4D 65 64 5F 53 6F 6C 64 69 65 72 5F 54 61 63 74 69 63 61 6C 4A 75 6E 67 6C 65 5F 30 31

    Remplacer par ça :
    50 6C 61 79 65 72 2F 4D 61 6C 65 2F 4D 65 64 69 75 6D 2F 42 6F 64 69 65 73 2F 4D 5F 4D 65 64 5F 53 6F 6C 64 69 65 72 5F 30 34 2F 53 6B 69 6E 73 2F 48 57 30 31 5F 52 65 64 2F 4D 5F 4D 65 64 5F 53 6F 6C 64 69 65 72 5F 30 34 5F 48 57 30 31 5F 52 65 64 2E 4D 5F 4D 65 64 5F 53 6F 6C 64 69 65 72 5F 30 34 5F 48 57 30 31 5F 52 65 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


    Généralement pour faire se remplacement il faut le logiciel HxD. Je tiens a préciser que je ne suis pas très fort en tout se qui est technique niveau VB, je sais un petit peu programmer avec Microsoft Visual Basic 2010.

    Merci à ceux qui m'aideront.

  2. #2
    Membre émérite Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Points : 2 865
    Points
    2 865
    Par défaut
    Bonsoir,

    Le fichier .pak peut-il être lisible avec Notepad, peut-on y lire la chaine hex "en clair", c-à-d comme ça : 50 6C 61 79 65 72 2F 4D ... ou bien comme ça : 506C617965722F4D .... ?
    ou bien au contraire c'est du "binaire", comme ça : 8HD$XH‰ËH‰T$XL‰D ...


    ....

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2019
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2019
    Messages : 24
    Points : 14
    Points
    14
    Par défaut
    Tout d'abord bonjour, Phil Rob, merci de m'aider.

    Le fichier .pak est trop lourd pour être ouvert avec notepad ( 4,07 GB (4*370*878*770 bytes)).

  4. #4
    Membre émérite Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Points : 2 865
    Points
    2 865
    Par défaut
    Bonjour,

    Je n'ai pas le moyen de répondre à ton problème pour 2 raisons.

    Nul ne peut chercher ce que tu ne sembles pas pouvoir définir. Des codes Hexa séparés par des espaces, ou non séparés, ou bien des caractères Ascii à convertir en Hexa pour faire les comparaisons. Mais comment peux-tu donner des exemples de contenu si tu ne peux "voir" l'intérieur du fichier ?

    Mais pis, la taille du fichier empêche de le lire entier en mémoire. Il faut donc le lire par blocs de tailles acceptables (pour une simple copie "manuelle" du fichier, je choisirais un buffer de quelques dizaines de Mo., voire quelques centaines ...) Dés lors qu'on lit le fichier par morceau, la recherche d'une suite de valeurs (qu'elle soit Ascii ou autre) relève d'un algorithme un peu complexe parce la suite cherchée peut se trouver "à cheval" sur deux morceaux de fichiers.
    Par exemple, ma 1ère phrase ci-dessus : 'Je n'ai pas le moyen de répondre à ton problème pour 2 raisons.'
    Aucune difficulté pour trouver le mot 'Problème' dans la phrase entière mais si la phrase est lue par buffer de 20 caractères, le mot 'Problème' n'est présent dans aucun bloc de lecture, il est 'à cheval' sur les 2ème et 3ème blocs lus :


    Je n'ai pas le moyen
    de répondre à ton p
    roblème pour 2 raiso
    ns.

    J'espère que d'autres sur le forum ont déjà été confrontés à ce type de problème ...

  5. #5
    Membre régulier
    Homme Profil pro
    Trader / Formateur / Développeur Options CBOE
    Inscrit en
    Septembre 2018
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afrique Du Sud

    Informations professionnelles :
    Activité : Trader / Formateur / Développeur Options CBOE
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2018
    Messages : 86
    Points : 70
    Points
    70
    Par défaut
    Bonsoir
    J'avais hésité à répondre avant même de lire que la taille pourrait être un obstacle, encore que pas forcément sur une plateforme 64 bits. Ça vaut le coup de tenter avec un StreamReader.
    HxD est un des outils de base que tout "hacker" a dans sa panoplie mais le problème que j'anticipe est que la chaîne à identifier n'est a priori pas exactement de la même taille que celle de substitution.
    Or si le programme est en hexadecimal donc en format exécutable, il est peu probable qu'il fonctionnera si sa taille est modifiée, sans même présager de l'efficacité du "patch".
    Il faut alors réfléchir à faire du "padding" généralement avec des 00 ou FF.
    Bonne chance !

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 274
    Points : 237
    Points
    237
    Par défaut
    Bonjour,

    si vous voulez remplacer le code hexadécimal par rapport a votre code à vous. il faut faire avec BinaryReader et BinaryWriter.
    voici un exemple dans ce lien :
    https://www.developpez.net/forums/d1...tomatiquement/

    tous les réponses sont dans ce lien.

    Cordialement,

  7. #7
    Membre chevronné
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Points : 2 209
    Points
    2 209
    Par défaut
    Quelques recherches simples amènent vite à se rendre compte que le but de la manoeuvre est d'obtenir gratuitement des skins pour perso qui normalement sont payants.
    Par conséquent, il y a fort à parier que c'est contre les CGU du jeu (flemme de vérifier) et donc est illégal.
    Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
    À quelle heure dormez-vous ?
    Censément, quelqu'un de sensé est censé s'exprimer sensément.

  8. #8
    Membre émérite Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Points : 2 865
    Points
    2 865
    Par défaut
    La lecture du fichier en binaire (BinaryReader) et l'enregistrement de sa copie (BinaryWriter) avec les remplacements nécessaires en cours de copie est bien évidemment la meilleure solution car elle dispense de lire l'entièreté du fichier (ce qui ne peut être possible si notre PC à 4 Go. de Ram, par exemple) et permet l'écriture d'une chaine de remplacement plus longue ou plus courte que la chaine cherchée (sous réserve de la validité future du fichier produit, comme le signalait Bruno).
    Simplement, sauf à lire octet par octet (bonjour la durée), les lectures et écritures se font par lots (on lit et on écrit un vecteur, d'une taille donnée, de bytes). On en revient ainsi à la difficulté que je soulignais précédemment, de trouver la chaine cherchée lorsqu'elle est "à cheval" sur 2 vecteurs lus. C'est la principale difficulté de l'algorithme de Recherche-Remplace lorsqu'on ne dispose pas du fichier en seul lot d'octets en mémoire.

    Enfin, dans le cas précis de la question posée, nul ne pourra y répondre tant qu'un ne sait pas comment sont stockés les octets cherchés ni sous quelle forme il faut écrire ceux de remplacement ...

    Bon week-end à tous


  9. #9
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Citation Envoyé par Sehnsucht Voir le message
    Quelques recherches simples amènent vite à se rendre compte que le but de la manoeuvre est d'obtenir gratuitement des skins pour perso qui normalement sont payants.
    Par conséquent, il y a fort à parier que c'est contre les CGU du jeu (flemme de vérifier) et donc est illégal.
    Je me fais exactement la même réflexion. Et puis, même si l'opération était légale, il n'en demeure pas moins, qu'un pirate, ou un bandit quelconque, pourrait utiliser les réponses obtenues pour perpétrer des geste illégaux. Et les règles du forum interdisent les questions qui pourraient porter sur le piratage.

    Mais comme je ne connais rien à Fortnite, ni à ses skins, je ne sais pas si l'opération est légale ou non. Mais je peux dire que je n'aime pas tellement ce sujet; parce que la frontière entre la légalité et l'illégalité reste floue.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  10. #10
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2019
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2019
    Messages : 24
    Points : 14
    Points
    14
    Par défaut
    Pour vous répondre, changez les codes du jeu ce n'est pas illégal, un exemple clair dans un autre jeu.... Minecraft, c'est comme un texture pack directement dans les fichiers du jeu. Tu remplace la texture d'un skin pour en avoir un autres. C'est autorisé, ce qui n'est pas légal par contre c'est d'utilisé un hack de visée ( Aimbot ), pouvoir voir a travers les murs ( WallHack ) ,etc. Pour revenir a la question de base, les lignes a remplacé sont d'exactement de la même taille ou le jeu risquerais de ne pas démarrer car le système de mise a jour de leur jeu marche sur la taille du fichier, si il y'a trop ou moins de données que sur leurs serveurs, le jeu lance la mise a jours. Les données sont Hexadécimal et peuvent être remplacé que par des héxadécimal. Il faudrais juste automatiser le remplacer avec juste un bouton sur une application en VB. Souvent, l'héxadécimal est remplacé grâce a HxD ( voir sur le screen )Nom : Screenshot (56).png
Affichages : 746
Taille : 1,31 Mo.

  11. #11
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 274
    Points : 237
    Points
    237
    Par défaut
    Bonsoir,

    voici un exemple comment charger le code hexadécimal avec un buttons.
    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
    Imports System.IO
     
    Public Class Form1
        Dim parcourir As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments '& /..le chemin du fichier .bak
        Dim codeorginale As String = "506C617965722F4D616C652F4D656469756D2F426F646965732F4D5F4D65645F536F6C646965725F30342F536B696E732F42525F546163746963616C4A756E676C652F4D6174657269616C732F4D5F4D65645F536F6C646965725F546163746963616C4A756E676C655F30312E4D5F4D65645F536F6C646965725F546163746963616C4A756E676C655F3031"
        Dim coderemplacer As String = "06C617965722F4D616C652F4D656469756D2F426F646965732F4D5F4D65645F536F6C646965725F30342F536B696E732F485730315F5265642F4D5F4D65645F536F6C646965725F30345F485730315F5265642E4D5F4D65645F536F6C646965725F30345F485730315F52656400000000000000000000000000000000000000000000000000000000000000"
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            If File.Exists(parcourir) Then
                Dim fs As New FileStream(parcourir, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite)
                Dim writer As New BinaryWriter(fs)
                Dim Search As String = HexSearch(codeorginale, fs)
                If Search Then
                    writer.BaseStream.Position = "&H" & Conversion.Hex(Search)
                    For i = 0 To coderemplacer.Length - 1 Step 2
                        Dim c As Integer = Integer.Parse(coderemplacer.Substring(i, 2), System.Globalization.NumberStyles.HexNumber)
                        writer.Write(Convert.ToByte(c))
                    Next
                    fs.Close()
                    writer.Close()
                    MsgBox("Fichier remplacer avec succés !")
                Else
                    MessageBox.Show("Non Trouver le Hexadécimal du fichier !", "Erreur Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Error)
                End If
            End If
        End Sub
     
        Private Function HexSearch(ByVal str As String, ByVal fs As FileStream) As Long
            Dim position As Integer = 0
            Dim reader As New BinaryReader(fs)
            For i As Long = 0 To reader.BaseStream.Length - 1
                fs.Seek(i, SeekOrigin.Begin)
                If BitConverter.ToString(reader.ReadBytes(str.Length / 2)).Replace("-", "") = str Then
                    position = i
                    Exit For
                End If
            Next i
            Return position
        End Function
    End Class
    vous pouvez faire aussi un backup avant enregistrer votre fichier.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    If File.Exists(parcourir) Then
                backups(parcourir)
    ...etc
    Private Sub backups(ByVal parcourir As String)
            If Not Directory.Exists(destination(parcourir) & "\BackupSkins") Then
                Directory.CreateDirectory(destination(parcourir) & "\BackupSkins")
            End If
            My.Computer.FileSystem.CopyFile(parcourir, destination(parcourir) & "\BackupSkins\" & Path.GetFileName(parcourir) & ".bak")
        End Sub
     
        Private Function destination(ByVal parcourir As String) As String
            Return Path.GetDirectoryName(parcourir)
        End Function
    le code fonctionne très bien.
    cordialement,

  12. #12
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    @Miska59 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      MsgBox("Fichier remplacer avec succés !")
    MsgBox("Fichier remplacé avec succès !")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MessageBox.Show("Non Trouver le Hexadécimal du fichier !", "Erreur Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Error)
    MessageBox.Show("Occurence non trouvée dans le fichier !", "Erreur enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Error)

  13. #13
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2019
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2019
    Messages : 24
    Points : 14
    Points
    14
    Par défaut
    @Miska59

    Merci pour votre message très bien construit mais quand je clique sur le bouton ( j'ai activer le déboguage progressif ). Mais au moment de "If Search Then" ligne 12, le logiciel ne fait plus rien, si vous avez une solution a ceci.

    Merci et bonne soirée

  14. #14
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 152
    Points : 7 402
    Points
    7 402
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Je vous invite à lire cet ancien message (jusqu'au bout).

    La problématique ici c'est de pouvoir traiter un fichier volumineux, et y retrouver une série de codes sans devoir tout charger en mémoire.

    https://www.developpez.net/forums/d1...xt-volumineux/

    Vous trouverez ici (certes, pour un fichier texte, mais en binaire ça devrait être plus simple).

    Concentrez votre lecture sur la fonction "SimpleBlockReader".
    Il s'agit de lire des blocs de quelques Ko, et de retrouver le pattern recherché y compris s'il est à cheval entre deux blocs.
    On ne jouit bien que de ce qu’on partage.

  15. #15
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 274
    Points : 237
    Points
    237
    Par défaut
    Bonjour,

    je voudrais savoir si votre fichier est-il dynamique ou statique. si il y est statique et vous connaissez offset du code orignal ( exemple : &H15894). vous pouvez essayer ce code .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Using br As New BinaryWriter(File.Open(parcourir, FileMode.Open, FileAccess.ReadWrite))
                br.Seek(&H1693B0, SeekOrigin.Begin) '&H offset ...position du code original
                For i = 0 To remplace.Length - 1 Step 2 'lire par 2 nombre hexadecimale
                    Dim c As Integer = Integer.Parse(remplace.Substring(i, 2), System.Globalization.NumberStyles.HexNumber)
                    br.Write(Convert.ToByte(c)) 'Remplacer le code original
                Next
            End Using
            MsgBox("Fichier remplacé avec succès !")
    au sinon, vous pouvez faire ceci :
    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
    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
            patch(parcourir2, "&H1693B0", New Byte() {&H1, &H0, &H0, &H0, &HB9, &H2, &H0, &H17, &H5A, &H57, &H3, &H0, &H3, &H0, &H0, &H1})
            'Parcourir => chemin du fichier
            '&H1693B0 => offset du fichier
            'new byte => remplacement du hexadecimal 
        End Sub
     
        Private Sub patch(ByVal Files As String, ByVal Offset As Integer, ByVal newvalue As Byte())
            Using bw As New BinaryWriter(File.Open(Files, FileMode.Open, FileAccess.ReadWrite))
                bw.Seek(Offset, SeekOrigin.Begin)
                For Each byteA In newvalue
                    bw.Write(byteA)
                Next
            End Using
        End Sub
    vous pouvez essayer ceci ça fonctionne aussi très bien.
    Cordialement,

  16. #16
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 152
    Points : 7 402
    Points
    7 402
    Billets dans le blog
    1
    Par défaut
    Pourquoi parcourir les lignes du byte[] alors que BinaryWriter supporter une méthode Write(byte[]) ?

    C'est quand même con d'avoir besoin d'un supercalculateur de la NASA pour faire quelque chose qu'un Goupil savait faire dans les années 80...
    On ne jouit bien que de ce qu’on partage.

Discussions similaires

  1. [XL-2010] Sélection de plusieurs ligne avec condition (Problème dans le code)
    Par yassine0077 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/02/2015, 10h18
  2. [Batch] Remplacer une ligne par une autre dans un fichier txt
    Par tinwul dans le forum Scripts/Batch
    Réponses: 9
    Dernier message: 03/07/2009, 13h58
  3. Réponses: 5
    Dernier message: 27/09/2007, 13h39
  4. Réponses: 34
    Dernier message: 08/03/2007, 14h51
  5. Réponses: 9
    Dernier message: 22/05/2006, 12h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo