begin process at 2012 05 27 19:36:58
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichier / Disque

 > PATCHEUR DE FICHIER

PATCHEUR DE FICHIER


 Information sur la source

Note :
Aucune note
Catégorie :Fichier / Disque Source .NET ( DotNet ) Classé sous :patch, fichier, console, hexadecimal, commande Niveau :Débutant Date de création :11/11/2011 Date de mise à jour :14/11/2011 07:20:09 Vu / téléchargé :2 493 / 170

Auteur : tototh

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Code permettant d'appliquer un patch a une position définie sur un fichier quelconque (Exe, Dll, txt, ETC...)
Le tout en mode console, avec paramètres en ligne de commande.

Source

  • Imports System.IO
  • Module Patch
  • Dim ERREUR As Integer
  • Dim NombrePositionPatch
  • Dim ParametrePositionPatch
  • Dim BitPatch() As Byte
  • Dim Arguments() As String
  • Dim Octet As Byte
  • Sub Main()
  • ERREUR = 0
  • GetCommandLineArgs()
  • If Arguments.Count > 3 Then
  • If Arguments(3) = "S" Or Arguments(3) = "s" Then
  • CreationCopieSecurité()
  • End If
  • End If
  • If ERREUR <> 0 Then
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.White
  • Console.WriteLine("** Une erreur ne permet pas la poursuite du programme ***")
  • Console.BackgroundColor = ConsoleColor.Black
  • Else
  • Patch()
  • End If
  • If Arguments.Count > 3 Then
  • If Arguments(3) = "A" Or Arguments(3) = "a" Then
  • End
  • End If
  • If Arguments.Count > 4 Then
  • If Arguments(4) = "A" Or Arguments(4) = "a" Then
  • End
  • End If
  • End If
  • End If
  • Console.Read()
  • End Sub
  • Sub GestErr(ByVal CodeErr As Integer)
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.White
  • Select Case CodeErr
  • Case 1
  • Console.WriteLine("Err sur les parametres")
  • Console.BackgroundColor = ConsoleColor.Black
  • Aide()
  • Case 2
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine()
  • Console.Write(" &#9474; &#9492;&#9472;")
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.WriteLine("Verifier la presence du fichier a patcher")
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.Yellow
  • Console.WriteLine(" STOP ")
  • Console.WriteLine()
  • Case 3
  • Console.WriteLine("La position du debut du patch ajouté à la longeur du pach en lui meme")
  • Console.WriteLine("depassent la taille du fichier")
  • Console.WriteLine("verifier la position de depart")
  • Console.WriteLine("et la longeur du patch")
  • Case 4
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.Write(" &#9474; &#9492;&#9472;")
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.WriteLine("La longeur du patch doit etre codé sur 2 caracteres (00->FF)")
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.Yellow
  • Console.WriteLine(" STOP ")
  • Console.WriteLine()
  • Case 5
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.Yellow
  • Console.WriteLine(" STOP ")
  • Console.WriteLine()
  • Case 6
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.WriteLine("Le parametre doit etre une valeur DECIMALE")
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.Yellow
  • Console.WriteLine(" STOP ")
  • Console.WriteLine()
  • End Select
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.Read()
  • End
  • End Sub
  • Sub Aide()
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine("&#9484;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9488;")
  • Console.Write("&#9474;")
  • Console.ForegroundColor = ConsoleColor.Yellow
  • Console.Write(" AIDE ")
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine("&#9474; Patch V1.0 By Tototh09")
  • Console.WriteLine("&#9492;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9496;")
  • Console.WriteLine()
  • Console.WriteLine(" OBLIGATOIRES OPTIONNELS")
  • Console.WriteLine(" &#9484;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9524;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9488; &#9484;&#9472;&#9472;&#9472;&#9524;&#9472;&#9472;&#9488;")
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write(" patch.exe ")
  • Console.ForegroundColor = ConsoleColor.Green
  • Console.Write(" toto.bin ")
  • Console.ForegroundColor = ConsoleColor.Cyan
  • Console.Write(" 3025 ")
  • Console.ForegroundColor = ConsoleColor.Magenta
  • Console.Write(" F5C630F7 ")
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.Write(" S ")
  • Console.ForegroundColor = ConsoleColor.Magenta
  • Console.WriteLine(" A ")
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9474; &#9474; &#9474;")
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9474; &#9474; &#9474;")
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9474; &#9474; &#9492; Auto (quitte l'appli des que")
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9474; &#9474; (le patch est appliqué")
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9474; &#9474;")
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9474; &#9492; Sauvegarde de l'ancien fichier")
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9474;")
  • Console.WriteLine(" &#9474; &#9474; &#9474; &#9492; Patch à appliquer")
  • Console.WriteLine(" &#9474; &#9474; &#9474; Caracteres hexadecimal, sans espaces")
  • Console.WriteLine(" &#9474; &#9474; &#9474;")
  • Console.WriteLine(" &#9474; &#9474; &#9492; Postion de depart (Decimal)")
  • Console.WriteLine(" &#9474; &#9474;")
  • Console.WriteLine(" &#9474; &#9492; Fichier à patcher")
  • Console.WriteLine(" &#9474;")
  • Console.WriteLine(" &#9492; Logiciel")
  • End Sub
  • Sub GetCommandLineArgs()
  • ' Declare variables.
  • Dim PatchEspace As String
  • Dim separators As String = " "
  • Dim commands As String = Microsoft.VisualBasic.Interaction.Command()
  • Dim MonFichierAPatcher As FileInfo
  • Dim Taille As String
  • Arguments = commands.Split(separators.ToCharArray)
  • Dim NbreParams As Integer
  • NbreParams = Arguments.Count
  • If NbreParams < 3 Then ' err dans les parametres
  • GestErr(1)
  • End If
  • PatchEspace = ""
  • For T = 1 To Len(Arguments(2)) + 1 Step 2
  • PatchEspace = PatchEspace & Mid(Arguments(2), T, 2)
  • PatchEspace = PatchEspace & " "
  • Next
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.ForegroundColor = ConsoleColor.Yellow
  • Console.Write(" Parametres ")
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine(" Patch V1.0 By Tototh09")
  • Console.WriteLine(" &#9474;")
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.Write(" &#9500;&#9472;Fichier : ")
  • Console.ForegroundColor = ConsoleColor.Cyan
  • Console.Write(Arguments(0))
  • Console.ForegroundColor = ConsoleColor.Gray
  • Try
  • MonFichierAPatcher = New FileInfo(Arguments(0))
  • Taille = MonFichierAPatcher.Length.ToString
  • Catch
  • GestErr(2)
  • Exit Sub
  • End Try
  • Console.WriteLine()
  • Console.Write(" &#9474; &#9500;&#9472;Taille ")
  • Console.ForegroundColor = ConsoleColor.Cyan
  • Console.Write(Taille)
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine(" Octets)")
  • Console.Write(" &#9474; &#9492;&#9472;Check ")
  • If System.IO.File.Exists(Arguments(0)) Then
  • Console.ForegroundColor = ConsoleColor.Black
  • Console.BackgroundColor = ConsoleColor.Green
  • Console.WriteLine(" Fichier OK ")
  • Else
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.White
  • Console.WriteLine(" Fichier Inexistant ")
  • GestErr(2)
  • End If
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.Write(" &#9500;&#9472;Position : ")
  • Console.ForegroundColor = ConsoleColor.Cyan
  • Console.WriteLine(Arguments(1))
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.Write(" &#9474; &#9492;&#9472;Check ")
  • Try
  • If (Arguments(1) / 2) + Len(Arguments(2)) > Taille Then
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.White
  • Console.WriteLine(" Err (la longeur du patch dépasse celle du fichier)")
  • GestErr(3)
  • Else
  • Console.ForegroundColor = ConsoleColor.Black
  • Console.BackgroundColor = ConsoleColor.Green
  • Console.WriteLine(" OK ")
  • End If
  • Catch
  • GestErr(6)
  • Exit Sub
  • End Try
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.Write(" &#9500;&#9472;Patch : ")
  • Console.ForegroundColor = ConsoleColor.Cyan
  • Console.WriteLine(PatchEspace)
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.Write(" &#9474; &#9500;&#9472;Taille ")
  • If Len(Arguments(2)) Mod 2 <> 0 Then
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.BackgroundColor = ConsoleColor.White
  • Console.WriteLine(" Taille impaire ")
  • GestErr(4)
  • Else
  • Console.ForegroundColor = ConsoleColor.Black
  • Console.BackgroundColor = ConsoleColor.Green
  • Console.WriteLine(" Taille OK ")
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • 'Console.Write(" (" & Len(Arguments(2)) / 2)
  • 'Console.WriteLine(" Octets)")
  • End If
  • Console.Write(" &#9474; &#9492;&#9472;Check ")
  • For T = 1 To Len(Arguments(2)) / 2 + 1 Step 2
  • Try
  • Octet = Convert.ToInt32(Mid(Arguments(2), T, 2), 16)
  • Catch
  • Console.WriteLine("Conversion impossible (valeur Hexa erronée).")
  • Console.Write(" &#9474; [")
  • Console.BackgroundColor = ConsoleColor.Red
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write(Mid(Arguments(2), T, 2))
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine("] n'est pas une valeur HEXADECIMALE.")
  • GestErr(5)
  • Exit Sub
  • End Try
  • Next
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.Write(" &#9492;&#9472;Longeur : ")
  • Console.ForegroundColor = ConsoleColor.Cyan
  • Console.Write(Len(Arguments(2)) / 2)
  • Console.ForegroundColor = ConsoleColor.Gray
  • Console.WriteLine(" Octets")
  • Console.ForegroundColor = ConsoleColor.Yellow
  • Console.WriteLine()
  • Console.ForegroundColor = ConsoleColor.Gray
  • End Sub
  • Private Sub Patch()
  • If Arguments(2) <> "" Then
  • If Arguments(1) <> "" Then
  • Dim PosDebutPatch As Long = Arguments(1)
  • Dim LongeurPatch As Integer = Len(Arguments(2))
  • ' ----------- Lecture du fichier ------------------------------
  • Dim FluxLecture As New BinaryReader(File.OpenRead(Arguments(0))) 'on defini l'objet de lecture de fichier
  • Dim TableauFichier(FileLen(Arguments(0)) - 1) As Byte 'on defini les deux tableaux de bytes de la taille du fichier selectionné
  • FluxLecture.BaseStream.Seek(0, SeekOrigin.Begin) 'on defini le pointeur en debut de fichier
  • FluxLecture.Read(TableauFichier, 0, FileLen(Arguments(0))) 'on lit le fichier entier dans le tableau 1
  • FluxLecture.BaseStream.Flush() 'on libere le buffer
  • FluxLecture.Close() 'on ferme l'objet
  • ' ----------- Modification -------------------------------------
  • ' = CBPatch.Text
  • Dim Ptr As Integer
  • Dim PosAffiche As Long
  • Dim CurseurAffiche As Integer
  • Dim PosDeci As Long
  • Dim PosHexa As String
  • Dim ChaineAscii As String
  • Ptr = 1 '--------------------- Affichage des anciennes valeurs
  • Console.BackgroundColor = ConsoleColor.Blue
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.Write("Avant patch")
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write("&#9474;")
  • Console.ForegroundColor = ConsoleColor.Yellow
  • Console.Write("00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F")
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.Write(" ")
  • Console.BackgroundColor = ConsoleColor.Blue
  • Console.WriteLine("0123456789ABCDEF")
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • PosAffiche = Arguments(1)
  • Do While (PosAffiche > 16)
  • PosAffiche = PosAffiche - 16
  • Loop
  • PosDeci = Arguments(1) - PosAffiche
  • PosHexa = Hex(PosDeci)
  • If Len(PosHexa) Mod 2 <> 0 Then ' longeur impaire
  • PosHexa = "0" & PosHexa
  • End If
  • Console.Write(" Ox" & PosHexa)
  • For T = Len(PosHexa) + 3 To 10
  • Console.Write(" ")
  • Next
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write("&#9474;")
  • Console.ForegroundColor = ConsoleColor.Gray
  • CurseurAffiche = 0
  • ChaineAscii = ""
  • For T = 1 To PosAffiche
  • Console.Write(" ")
  • ChaineAscii = ChaineAscii & " "
  • CurseurAffiche = CurseurAffiche + 1
  • Next
  • CurseurAffiche = PosAffiche
  • For T = 0 To ((Len(Arguments(2)) / 2) - 1)
  • If Len(Hex(TableauFichier(PosDebutPatch + T))) Mod 2 <> 0 Then ' longeur impaire
  • Console.Write("0")
  • End If
  • Console.Write(Hex(TableauFichier(PosDebutPatch + T)) & " ")
  • ' affichage des car ascii
  • If TableauFichier(PosDebutPatch + T) < 32 Then
  • ChaineAscii = ChaineAscii & "."
  • Else
  • ChaineAscii = ChaineAscii & Chr(TableauFichier(PosDebutPatch + T))
  • End If
  • CurseurAffiche = CurseurAffiche + 1
  • If CurseurAffiche > 15 Then
  • CurseurAffiche = 0
  • Console.Write(ChaineAscii)
  • ChaineAscii = ""
  • Console.WriteLine()
  • PosDeci = PosDeci + 16
  • PosHexa = Hex(PosDeci)
  • If Len(PosHexa) Mod 2 <> 0 Then ' longeur impaire
  • PosHexa = "0" & PosHexa
  • End If
  • Console.Write(" Ox" & PosHexa)
  • For TT = Len(PosHexa) + 3 To 10
  • Console.Write(" ")
  • Next
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write("&#9474;")
  • Console.ForegroundColor = ConsoleColor.Gray
  • End If
  • Next T
  • If CurseurAffiche < 15 Then
  • For T = CurseurAffiche To 15
  • ChaineAscii = " " & ChaineAscii
  • Next T
  • End If
  • Console.Write(ChaineAscii)
  • '--------------------- Affichage des NOUVELLES valeurs
  • Console.WriteLine()
  • Console.WriteLine()
  • Console.BackgroundColor = ConsoleColor.Green
  • Console.ForegroundColor = ConsoleColor.Red
  • Console.Write("Apres patch")
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write("&#9474;")
  • Console.ForegroundColor = ConsoleColor.Black
  • Console.Write("00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F")
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.Write(" ")
  • Console.BackgroundColor = ConsoleColor.Green
  • Console.WriteLine("0123456789ABCDEF")
  • Console.BackgroundColor = ConsoleColor.Black
  • Console.ForegroundColor = ConsoleColor.Gray
  • PosAffiche = Arguments(1)
  • Do While (PosAffiche > 16)
  • PosAffiche = PosAffiche - 16
  • Loop
  • PosDeci = Arguments(1) - PosAffiche
  • PosHexa = Hex(PosDeci)
  • If Len(PosHexa) Mod 2 <> 0 Then ' longeur impaire
  • PosHexa = "0" & PosHexa
  • End If
  • Console.Write(" Ox" & PosHexa)
  • For T = Len(PosHexa) + 3 To 10
  • Console.Write(" ")
  • Next
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write("&#9474;")
  • Console.ForegroundColor = ConsoleColor.Gray
  • CurseurAffiche = 0
  • ChaineAscii = ""
  • For T = 1 To PosAffiche
  • Console.Write(" ")
  • ChaineAscii = ChaineAscii & " "
  • CurseurAffiche = CurseurAffiche + 1
  • Next
  • For T = 0 To ((Len(Arguments(2)) / 2) - 1)
  • Console.Write(Mid(Arguments(2), Ptr, 2) & " ")
  • Octet = Convert.ToInt32(Mid(Arguments(2), Ptr, 2), 16)
  • ' affichage des car ascii
  • If Octet < 32 Then
  • ChaineAscii = ChaineAscii & "."
  • Else
  • ChaineAscii = ChaineAscii & Chr(Octet)
  • End If
  • TableauFichier(PosDebutPatch + T) = Octet
  • Ptr = Ptr + 2
  • CurseurAffiche = CurseurAffiche + 1
  • If CurseurAffiche > 15 Then
  • CurseurAffiche = 0
  • '- affiche texte en ascii
  • Console.Write(ChaineAscii)
  • ChaineAscii = ""
  • Console.WriteLine()
  • PosDeci = PosDeci + 16
  • PosHexa = Hex(PosDeci)
  • If Len(PosHexa) Mod 2 <> 0 Then ' longeur impaire
  • PosHexa = "0" & PosHexa
  • End If
  • Console.Write(" Ox" & PosHexa)
  • For TT = Len(PosHexa) + 3 To 10
  • Console.Write(" ")
  • Next
  • Console.ForegroundColor = ConsoleColor.White
  • Console.Write("&#9474;")
  • Console.ForegroundColor = ConsoleColor.Gray
  • End If
  • Next T
  • If CurseurAffiche < 15 Then
  • For T = CurseurAffiche To 15
  • ChaineAscii = " " & ChaineAscii
  • Next T
  • End If
  • Console.Write(ChaineAscii)
  • ' ----------- Ecriture du fichier ------------------------------
  • Dim FluxEcriture As New IO.FileStream(Arguments(0), IO.FileMode.OpenOrCreate)
  • Try
  • FluxEcriture.Write(TableauFichier, 0, TableauFichier.Length)
  • Catch ex As Exception
  • Finally 'pour vb.net 2008 seulement, sinon débrouillez vous pour fermer le fichier! :p
  • FluxEcriture.Close()
  • End Try
  • Else
  • MsgBox("Aucun patch n'est défini")
  • Exit Sub
  • End If
  • Else
  • MsgBox("Il faut indiquer une position de debut pour le patch")
  • Exit Sub
  • End If
  • Console.WriteLine()
  • Console.WriteLine()
  • Console.ForegroundColor = ConsoleColor.White
  • Console.WriteLine("Operation terminée")
  • End Sub
  • Sub CreationCopieSecurité()
  • Dim DateHeure As String
  • DateHeure = My.Computer.Clock.LocalTime.ToString
  • Dim ExtentionSecours As String = Replace(DateHeure, "/", "_")
  • ExtentionSecours = Replace(ExtentionSecours, ":", "_")
  • ExtentionSecours = Replace(ExtentionSecours, " ", "_")
  • Dim x As FileInfo = New FileInfo(Arguments(0))
  • x.CopyTo(Arguments(0) & "." & ExtentionSecours)
  • Console.WriteLine("Sauvegarde du fichier sous " & Arguments(0) & "." & ExtentionSecours)
  • Console.WriteLine()
  • End Sub
  • End Module
Imports System.IO

Module Patch
    Dim ERREUR As Integer
    Dim NombrePositionPatch
    Dim ParametrePositionPatch
    Dim BitPatch() As Byte
    Dim Arguments() As String
    Dim Octet As Byte

    Sub Main()
        ERREUR = 0
        GetCommandLineArgs()

        If Arguments.Count > 3 Then
            If Arguments(3) = "S" Or Arguments(3) = "s" Then
                CreationCopieSecurité()
            End If
        End If
        If ERREUR <> 0 Then
            Console.ForegroundColor = ConsoleColor.Red
            Console.BackgroundColor = ConsoleColor.White
            Console.WriteLine("** Une erreur ne permet pas la poursuite du programme ***")
            Console.BackgroundColor = ConsoleColor.Black
        Else
            Patch()
        End If
        If Arguments.Count > 3 Then
            If Arguments(3) = "A" Or Arguments(3) = "a" Then
                End
            End If
            If Arguments.Count > 4 Then
                If Arguments(4) = "A" Or Arguments(4) = "a" Then
                    End
                End If
            End If
        End If
        Console.Read()
    End Sub

    Sub GestErr(ByVal CodeErr As Integer)
        Console.ForegroundColor = ConsoleColor.Red
        Console.BackgroundColor = ConsoleColor.White

        Select Case CodeErr
            Case 1
                Console.WriteLine("Err sur les parametres")
                Console.BackgroundColor = ConsoleColor.Black
                Aide()
            Case 2
                Console.BackgroundColor = ConsoleColor.Black
                Console.ForegroundColor = ConsoleColor.Gray
                Console.WriteLine()
                Console.Write("  &#9474;            &#9492;&#9472;")
                Console.ForegroundColor = ConsoleColor.Red
                Console.WriteLine("Verifier la presence du fichier a patcher")
                Console.ForegroundColor = ConsoleColor.Red
                Console.BackgroundColor = ConsoleColor.Yellow
                Console.WriteLine(" STOP ")
                Console.WriteLine()
            Case 3
                Console.WriteLine("La position du debut du patch ajouté à la longeur du pach en lui meme")
                Console.WriteLine("depassent la taille du fichier")
                Console.WriteLine("verifier la position de depart")
                Console.WriteLine("et la longeur du patch")
            Case 4
                Console.BackgroundColor = ConsoleColor.Black
                Console.ForegroundColor = ConsoleColor.Gray
                Console.Write("  &#9474;            &#9492;&#9472;")
                Console.ForegroundColor = ConsoleColor.Red
                Console.WriteLine("La longeur du patch doit etre codé sur 2 caracteres (00->FF)")
                Console.ForegroundColor = ConsoleColor.Red
                Console.BackgroundColor = ConsoleColor.Yellow
                Console.WriteLine(" STOP ")
                Console.WriteLine()
            Case 5
                Console.ForegroundColor = ConsoleColor.Red
                Console.BackgroundColor = ConsoleColor.Yellow
                Console.WriteLine(" STOP ")
                Console.WriteLine()
            Case 6
                Console.BackgroundColor = ConsoleColor.Black
                Console.ForegroundColor = ConsoleColor.Red
                Console.WriteLine("Le parametre doit etre une valeur DECIMALE")
                Console.ForegroundColor = ConsoleColor.Red
                Console.BackgroundColor = ConsoleColor.Yellow
                Console.WriteLine(" STOP ")
                Console.WriteLine()
        End Select
        Console.BackgroundColor = ConsoleColor.Black
        Console.Read()
        End
    End Sub

    Sub Aide()
        Console.ForegroundColor = ConsoleColor.Gray
        Console.WriteLine("&#9484;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9488;")
        Console.Write("&#9474;")
        Console.ForegroundColor = ConsoleColor.Yellow
        Console.Write("    AIDE     ")
        Console.ForegroundColor = ConsoleColor.Gray
        Console.WriteLine("&#9474;                                       Patch V1.0 By Tototh09")
        Console.WriteLine("&#9492;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9496;")
        Console.WriteLine()
        Console.WriteLine("                     OBLIGATOIRES        OPTIONNELS")
        Console.WriteLine("            &#9484;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9524;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9488; &#9484;&#9472;&#9472;&#9472;&#9524;&#9472;&#9472;&#9488;")
        Console.ForegroundColor = ConsoleColor.White
        Console.Write(" patch.exe  ")
        Console.ForegroundColor = ConsoleColor.Green
        Console.Write(" toto.bin  ")
        Console.ForegroundColor = ConsoleColor.Cyan
        Console.Write(" 3025  ")
        Console.ForegroundColor = ConsoleColor.Magenta
        Console.Write(" F5C630F7  ")
        Console.ForegroundColor = ConsoleColor.Red
        Console.Write(" S ")
        Console.ForegroundColor = ConsoleColor.Magenta
        Console.WriteLine("   A ")
        Console.ForegroundColor = ConsoleColor.Gray
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9474;       &#9474;    &#9474;")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9474;       &#9474;    &#9474;")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9474;       &#9474;    &#9492; Auto (quitte l'appli des que")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9474;       &#9474;           (le patch est appliqué")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9474;       &#9474;")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9474;       &#9492; Sauvegarde de l'ancien fichier")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9474;")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;        &#9492; Patch à appliquer")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;          Caracteres hexadecimal, sans espaces")
        Console.WriteLine("       &#9474;        &#9474;        &#9474;")
        Console.WriteLine("       &#9474;        &#9474;        &#9492; Postion de depart (Decimal)")
        Console.WriteLine("       &#9474;        &#9474;")
        Console.WriteLine("       &#9474;        &#9492; Fichier à patcher")
        Console.WriteLine("       &#9474;")
        Console.WriteLine("       &#9492; Logiciel")
    End Sub
    Sub GetCommandLineArgs()
        ' Declare variables.
        Dim PatchEspace As String
        Dim separators As String = " "
        Dim commands As String = Microsoft.VisualBasic.Interaction.Command()
        Dim MonFichierAPatcher As FileInfo
        Dim Taille As String
        Arguments = commands.Split(separators.ToCharArray)
        Dim NbreParams As Integer
        NbreParams = Arguments.Count
        If NbreParams < 3 Then ' err dans les parametres
            GestErr(1)
        End If

        PatchEspace = ""
        For T = 1 To Len(Arguments(2)) + 1 Step 2
            PatchEspace = PatchEspace & Mid(Arguments(2), T, 2)
            PatchEspace = PatchEspace & " "
        Next
        Console.ForegroundColor = ConsoleColor.Gray
        Console.ForegroundColor = ConsoleColor.Yellow
        Console.Write(" Parametres  ")
        Console.ForegroundColor = ConsoleColor.Gray
        Console.WriteLine("                                          Patch V1.0 By Tototh09")
        Console.WriteLine("  &#9474;")
        Console.ForegroundColor = ConsoleColor.Gray
        Console.Write("  &#9500;&#9472;Fichier  : ")
        Console.ForegroundColor = ConsoleColor.Cyan
        Console.Write(Arguments(0))
        Console.ForegroundColor = ConsoleColor.Gray
        Try
            MonFichierAPatcher = New FileInfo(Arguments(0))
            Taille = MonFichierAPatcher.Length.ToString
        Catch
            GestErr(2)
            Exit Sub
        End Try
        Console.WriteLine()
        Console.Write("  &#9474;            &#9500;&#9472;Taille ")
        Console.ForegroundColor = ConsoleColor.Cyan
        Console.Write(Taille)
        Console.ForegroundColor = ConsoleColor.Gray
        Console.WriteLine(" Octets)")
        Console.Write("  &#9474;            &#9492;&#9472;Check ")
        If System.IO.File.Exists(Arguments(0)) Then
            Console.ForegroundColor = ConsoleColor.Black
            Console.BackgroundColor = ConsoleColor.Green
            Console.WriteLine(" Fichier OK ")
        Else
            Console.ForegroundColor = ConsoleColor.Red
            Console.BackgroundColor = ConsoleColor.White
            Console.WriteLine(" Fichier Inexistant ")
            GestErr(2)
        End If
        Console.BackgroundColor = ConsoleColor.Black
        Console.ForegroundColor = ConsoleColor.Gray
        Console.Write("  &#9500;&#9472;Position : ")
        Console.ForegroundColor = ConsoleColor.Cyan
        Console.WriteLine(Arguments(1))
        Console.ForegroundColor = ConsoleColor.Gray
        Console.Write("  &#9474;            &#9492;&#9472;Check ")
        Try
            If (Arguments(1) / 2) + Len(Arguments(2)) > Taille Then
                Console.ForegroundColor = ConsoleColor.Red
                Console.BackgroundColor = ConsoleColor.White
                Console.WriteLine(" Err (la longeur du patch dépasse celle du fichier)")
                GestErr(3)
            Else
                Console.ForegroundColor = ConsoleColor.Black
                Console.BackgroundColor = ConsoleColor.Green
                Console.WriteLine(" OK ")
            End If
        Catch
            GestErr(6)
            Exit Sub
        End Try
        Console.BackgroundColor = ConsoleColor.Black
        Console.ForegroundColor = ConsoleColor.Gray
        Console.Write("  &#9500;&#9472;Patch    : ")
        Console.ForegroundColor = ConsoleColor.Cyan
        Console.WriteLine(PatchEspace)
        Console.ForegroundColor = ConsoleColor.Gray
        Console.Write("  &#9474;            &#9500;&#9472;Taille ")
        If Len(Arguments(2)) Mod 2 <> 0 Then
            Console.ForegroundColor = ConsoleColor.Red
            Console.BackgroundColor = ConsoleColor.White
            Console.WriteLine(" Taille impaire ")
            GestErr(4)
        Else
            Console.ForegroundColor = ConsoleColor.Black
            Console.BackgroundColor = ConsoleColor.Green
            Console.WriteLine(" Taille OK ")
            Console.BackgroundColor = ConsoleColor.Black
            Console.ForegroundColor = ConsoleColor.Gray
            'Console.Write(" (" & Len(Arguments(2)) / 2)
            'Console.WriteLine(" Octets)")
        End If
        Console.Write("  &#9474;            &#9492;&#9472;Check ")
        For T = 1 To Len(Arguments(2)) / 2 + 1 Step 2
            Try
                Octet = Convert.ToInt32(Mid(Arguments(2), T, 2), 16)
            Catch
                Console.WriteLine("Conversion impossible (valeur Hexa erronée).")
                Console.Write("  &#9474;                    [")
                Console.BackgroundColor = ConsoleColor.Red
                Console.ForegroundColor = ConsoleColor.White
                Console.Write(Mid(Arguments(2), T, 2))
                Console.BackgroundColor = ConsoleColor.Black
                Console.ForegroundColor = ConsoleColor.Gray
                Console.WriteLine("] n'est pas une valeur HEXADECIMALE.")
                GestErr(5)
                Exit Sub
            End Try
        Next
        Console.BackgroundColor = ConsoleColor.Black
        Console.ForegroundColor = ConsoleColor.Gray
        Console.Write("  &#9492;&#9472;Longeur  : ")
        Console.ForegroundColor = ConsoleColor.Cyan
        Console.Write(Len(Arguments(2)) / 2)
        Console.ForegroundColor = ConsoleColor.Gray
        Console.WriteLine(" Octets")
        Console.ForegroundColor = ConsoleColor.Yellow
        Console.WriteLine()
        Console.ForegroundColor = ConsoleColor.Gray
    End Sub


    Private Sub Patch()
        If Arguments(2) <> "" Then
            If Arguments(1) <> "" Then
                Dim PosDebutPatch As Long = Arguments(1)
                Dim LongeurPatch As Integer = Len(Arguments(2))

                ' -----------  Lecture du fichier  ------------------------------
                Dim FluxLecture As New BinaryReader(File.OpenRead(Arguments(0)))    'on defini l'objet de lecture de fichier
                Dim TableauFichier(FileLen(Arguments(0)) - 1) As Byte               'on defini les deux tableaux de bytes de la taille du fichier selectionné
                FluxLecture.BaseStream.Seek(0, SeekOrigin.Begin)                    'on defini le pointeur en debut de fichier
                FluxLecture.Read(TableauFichier, 0, FileLen(Arguments(0)))          'on lit le fichier entier dans le tableau 1
                FluxLecture.BaseStream.Flush()                                      'on libere le buffer
                FluxLecture.Close()                                                 'on ferme l'objet

                ' -----------  Modification  -------------------------------------
                '  = CBPatch.Text
                Dim Ptr As Integer
                Dim PosAffiche As Long
                Dim CurseurAffiche As Integer
                Dim PosDeci As Long
                Dim PosHexa As String
                Dim ChaineAscii As String

                Ptr = 1                             '---------------------  Affichage des anciennes valeurs
                Console.BackgroundColor = ConsoleColor.Blue
                Console.ForegroundColor = ConsoleColor.Red
                Console.Write("Avant patch")
                Console.ForegroundColor = ConsoleColor.White
                Console.Write("&#9474;")
                Console.ForegroundColor = ConsoleColor.Yellow
                Console.Write("00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F")
                Console.BackgroundColor = ConsoleColor.Black
                Console.Write(" ")
                Console.BackgroundColor = ConsoleColor.Blue
                Console.WriteLine("0123456789ABCDEF")
                Console.BackgroundColor = ConsoleColor.Black
                Console.ForegroundColor = ConsoleColor.Gray

                PosAffiche = Arguments(1)
                Do While (PosAffiche > 16)
                    PosAffiche = PosAffiche - 16
                Loop

                PosDeci = Arguments(1) - PosAffiche
                PosHexa = Hex(PosDeci)

                If Len(PosHexa) Mod 2 <> 0 Then  ' longeur impaire
                    PosHexa = "0" & PosHexa
                End If
                Console.Write(" Ox" & PosHexa)
                For T = Len(PosHexa) + 3 To 10
                    Console.Write(" ")
                Next
                Console.ForegroundColor = ConsoleColor.White
                Console.Write("&#9474;")
                Console.ForegroundColor = ConsoleColor.Gray
                CurseurAffiche = 0

                ChaineAscii = ""
                For T = 1 To PosAffiche
                    Console.Write("   ")
                    ChaineAscii = ChaineAscii & " "
                    CurseurAffiche = CurseurAffiche + 1
                Next
                CurseurAffiche = PosAffiche
                For T = 0 To ((Len(Arguments(2)) / 2) - 1)
                    If Len(Hex(TableauFichier(PosDebutPatch + T))) Mod 2 <> 0 Then  ' longeur impaire
                        Console.Write("0")
                    End If
                    Console.Write(Hex(TableauFichier(PosDebutPatch + T)) & " ")

                    ' affichage des car ascii
                    If TableauFichier(PosDebutPatch + T) < 32 Then
                        ChaineAscii = ChaineAscii & "."
                    Else
                        ChaineAscii = ChaineAscii & Chr(TableauFichier(PosDebutPatch + T))
                    End If

                    CurseurAffiche = CurseurAffiche + 1
                    If CurseurAffiche > 15 Then
                        CurseurAffiche = 0
                        Console.Write(ChaineAscii)
                        ChaineAscii = ""
                        Console.WriteLine()
                        PosDeci = PosDeci + 16
                        PosHexa = Hex(PosDeci)
                        If Len(PosHexa) Mod 2 <> 0 Then  ' longeur impaire
                            PosHexa = "0" & PosHexa
                        End If
                        Console.Write(" Ox" & PosHexa)
                        For TT = Len(PosHexa) + 3 To 10
                            Console.Write(" ")
                        Next
                        Console.ForegroundColor = ConsoleColor.White
                        Console.Write("&#9474;")
                        Console.ForegroundColor = ConsoleColor.Gray
                    End If
                Next T
                If CurseurAffiche < 15 Then
                    For T = CurseurAffiche To 15
                        ChaineAscii = "   " & ChaineAscii
                    Next T
                End If
                Console.Write(ChaineAscii)
                '---------------------  Affichage des NOUVELLES valeurs
                Console.WriteLine()
                Console.WriteLine()
                Console.BackgroundColor = ConsoleColor.Green
                Console.ForegroundColor = ConsoleColor.Red
                Console.Write("Apres patch")
                Console.ForegroundColor = ConsoleColor.White
                Console.Write("&#9474;")
                Console.ForegroundColor = ConsoleColor.Black
                Console.Write("00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F")
                Console.BackgroundColor = ConsoleColor.Black
                Console.Write(" ")
                Console.BackgroundColor = ConsoleColor.Green
                Console.WriteLine("0123456789ABCDEF")
                Console.BackgroundColor = ConsoleColor.Black
                Console.ForegroundColor = ConsoleColor.Gray

                PosAffiche = Arguments(1)
                Do While (PosAffiche > 16)
                    PosAffiche = PosAffiche - 16
                Loop

                PosDeci = Arguments(1) - PosAffiche
                PosHexa = Hex(PosDeci)


                If Len(PosHexa) Mod 2 <> 0 Then  ' longeur impaire
                    PosHexa = "0" & PosHexa
                End If
                Console.Write(" Ox" & PosHexa)
                For T = Len(PosHexa) + 3 To 10
                    Console.Write(" ")
                Next
                Console.ForegroundColor = ConsoleColor.White
                Console.Write("&#9474;")
                Console.ForegroundColor = ConsoleColor.Gray
                CurseurAffiche = 0
                ChaineAscii = ""
                For T = 1 To PosAffiche
                    Console.Write("   ")
                    ChaineAscii = ChaineAscii & " "
                    CurseurAffiche = CurseurAffiche + 1
                Next
                For T = 0 To ((Len(Arguments(2)) / 2) - 1)

                    Console.Write(Mid(Arguments(2), Ptr, 2) & " ")
                    Octet = Convert.ToInt32(Mid(Arguments(2), Ptr, 2), 16)

                    ' affichage des car ascii
                    If Octet < 32 Then
                        ChaineAscii = ChaineAscii & "."
                    Else
                        ChaineAscii = ChaineAscii & Chr(Octet)
                    End If

                    TableauFichier(PosDebutPatch + T) = Octet
                    Ptr = Ptr + 2
                    CurseurAffiche = CurseurAffiche + 1
                    If CurseurAffiche > 15 Then
                        CurseurAffiche = 0
                        '- affiche texte en ascii
                        Console.Write(ChaineAscii)
                        ChaineAscii = ""
                        Console.WriteLine()
                        PosDeci = PosDeci + 16
                        PosHexa = Hex(PosDeci)
                        If Len(PosHexa) Mod 2 <> 0 Then  ' longeur impaire
                            PosHexa = "0" & PosHexa
                        End If
                        Console.Write(" Ox" & PosHexa)
                        For TT = Len(PosHexa) + 3 To 10
                            Console.Write(" ")
                        Next
                        Console.ForegroundColor = ConsoleColor.White
                        Console.Write("&#9474;")
                        Console.ForegroundColor = ConsoleColor.Gray
                    End If
                Next T
                If CurseurAffiche < 15 Then
                    For T = CurseurAffiche To 15
                        ChaineAscii = "   " & ChaineAscii
                    Next T
                End If
                Console.Write(ChaineAscii)
                ' -----------  Ecriture du fichier  ------------------------------
                Dim FluxEcriture As New IO.FileStream(Arguments(0), IO.FileMode.OpenOrCreate)
                Try
                    FluxEcriture.Write(TableauFichier, 0, TableauFichier.Length)
                Catch ex As Exception
                Finally 'pour vb.net 2008 seulement, sinon débrouillez vous pour fermer le fichier! :p
                    FluxEcriture.Close()
                End Try
            Else
                MsgBox("Aucun patch n'est défini")
                Exit Sub
            End If
        Else
            MsgBox("Il faut indiquer une position de debut pour le patch")
            Exit Sub
        End If
        Console.WriteLine()
        Console.WriteLine()
        Console.ForegroundColor = ConsoleColor.White
        Console.WriteLine("Operation terminée")
    End Sub

    Sub CreationCopieSecurité()
        Dim DateHeure As String
        DateHeure = My.Computer.Clock.LocalTime.ToString
        Dim ExtentionSecours As String = Replace(DateHeure, "/", "_")
        ExtentionSecours = Replace(ExtentionSecours, ":", "_")
        ExtentionSecours = Replace(ExtentionSecours, " ", "_")
        Dim x As FileInfo = New FileInfo(Arguments(0))
        x.CopyTo(Arguments(0) & "." & ExtentionSecours)
        Console.WriteLine("Sauvegarde du fichier sous " & Arguments(0) & "." & ExtentionSecours)
        Console.WriteLine()
    End Sub
End Module

 Conclusion

Oblige d'utiliser un éditeur hexadécimal pour modifier un fichier de façon répétitive,
j'ai développé (vite fait) un bout ce code.

Ce programme en mode console, tout simple peut être appelé à partir d'un fichier bat.

exemple de fichier bat pour lancer 4 patch sur le même fichier
------------------------------------------ -----------------------------
echo patch
d:\tools\patch D:\Save.adf 25548 007F S a
d:\tools\patch D:\Save.adf 25550 007F a
d:\tools\patch D:\Save.adf 25578 FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F a
d:\tools\patch D:\Save.adf 25642 0A0A0A0A0A0A0A0A0A0A a
------------------------------------------------ -----------------------

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) EDITEUR DE TEXTE MULTI DOC AVEC COLORATION SYNTAXIQUE ETC......
Source avec Zip Source avec une capture EDITEUR DEBUGEUR WSH/VBS
Source avec Zip Source avec une capture ANNUAIRE AVEC NUMEROTEUR VOCAL DTMF
Source avec Zip Source avec une capture AFFECTER UN TEXTE A UNE TOUCHE DE FONCTION.
Source avec Zip Source avec une capture CALCULATRICE DEC/HEXA AVEC PAPIER VIRTUEL

 Sources de la même categorie

ECLATER UN CLASSEUR EXCEL EN AUTANT DE FICHIERS QUE DE FEUIL... par GMY
Source avec Zip Source avec une capture Source .NET (Dotnet) MAGIC FILE NAME : RENOMMEZ VOS FICHIERS AUTOMAGIQUEMENT ! par Erudix
Source avec Zip Source .NET (Dotnet) MODIFIER LES EXTENSION DES FICHIERS par okosa
ROUTINE DIR RÉCURSIVE POUR OBTENIR LA LISTE DE TOUS LES FICH... par kerisolde
Source avec Zip Source avec une capture FILE,SECURITY,FICHIER par okosa

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) MAGIC FILE NAME : RENOMMEZ VOS FICHIERS AUTOMAGIQUEMENT ! par Erudix
Source avec Zip Source avec une capture OUTLOOK ATTACHEMENT SAVER par MoiLafouine
Source avec Zip DÉCIMAL TO HEXDECIMAL par loulou27200
Source avec Zip Source avec une capture HEXA/ASCII AVEC POSSIBILITÉ DE FICHIER par XRaph
Source avec Zip Source avec une capture Source .NET (Dotnet) EXÉCUTION DE COMMANDES (DOS) SUR UNE PLAGE IP par eldim

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Patcher msn en hexadecimal et vb [ par AlexPoulard ] Bonjour,j'ai un petit probleme :je voudrais créer un patch pour msn messenger. Je m'explique :Msn messenger récupere sur internet un fichier xml ou so Script VBS = petit pb d'écriture dans un fichier !!! [ par tribipod08 ] Bonjour, voil&#224; un de mes copains m'a &#233;crit un script VBS, je lui aurai bien de mander, mais je ne sait pas communiquer avec les morts !!!&nb je veux executer une commande dos [ par nablimohavb ] Bonjoursj'ai une imprimante(pour etiquette) ,elle recoit un fichier texte.txt contenant les format et les données à imprimer ,la commande d'impression Fichier externe [ par Goth25 ] Bonjour à tous,Par mon application, j'ouvre une batch file a l'aide de cette ligne de commande : System.Diagnostics.Process.Start("C:\WINDOWS\Commande Remplacement de caractere ! [ par Marneus73 ] Bonsoir à tous,J'ai un petit problème avec l'invite de commande: J'enregistre le contenu d'une RichTextBox dans un doc texte avec l'extension .bat, pu Help ligne de commande click droit fichier. [ par nilufacou ] Mon application a une ligne de commande comme ci dessous :app.exe ~file$Je voudrais que cette ligne de commande se lance lors d'1 click roit sur 1 fi Help ligne de commande click droit fichier. [ par nilufacou ] Mon application a une ligne de commande comme ci dessous :app.exe ~file$Je voudrais que cette ligne de commande se lance lors d'1 click roit sur 1 fi commande ftp "stor" avec winsock [ par Kihii ] petite incomprehension de ma part pour l'utilisation de la commande stor. Avec un winsock connecte a un serveur, j'envoie la commande "stor NomduFichi Executer une commande DOs dans un fichier VBS [ par WaReZ_CarTmaN ] Salut @ tous. Je souhaiterais executer une commande DOS de type NET SEND dans un fichier .VBS. J'arrive &#224; executer un fichier comme ceci : Set [macro Access] ouvrir fichier excel [ par rodrigue62 ] Bonjour, j'ai réalisé une macro dans laquelle j'aimerai entre autre ouvrir un fichier excel particulier, j'ai donc utilisé la commande ExécuterApplica


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,546 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales