Announcement

Collapse
No announcement yet.

Hexwert eines Programmes ändern

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hexwert eines Programmes ändern

    Hallo!
    Ich möchte mit meinem Programm andere Programme patchen (nichts illegales !).
    Dazu muss ich wissen, wie ich Delphi die Kommandos gebe, an bestimmten Hexwerten der zu patchenden Datei etwas zu verändern.
    Herzlichen Dank!
    Zuletzt editiert von Gast_1; 31.03.2010, 13:29.

  • #2
    Willst du die Programme auf der Platte ändern oder laufende Programme im Speicher ?
    Beim ersten brauchst du nur mir normalen Dateioperationen arbeiten.
    Beim zweiten musst du mit DebugProcess arbeiten. Ich kenn aber noch keine Schnittstelle für Delphi. Ist ein haufen Arbeit:
    Zuerst musst du die ProcessID des Programmes herausfinden, dann kannst du mit ReadProcessMemory und WriteProcessMemory den Speicher des Programms verändern.

    Jürgen Kort

    Comment


    • #3
      Danke für die Antwort, Jürgen Kortt !
      Ich möchte einfach nur Programme auf der Platte verändern. Den Speicher lass ich erstmal noch unberührt !
      Schönen Tag noch!
      Zuletzt editiert von Gast_1; 31.03.2010, 13:29.

      Comment


      • #4
        Hi,

        Die Hex-Adresse ist im Prinzip nichts anderes als die Position in der Datei in einen Hexwert umgerechnet. Also brauchst du im Prinzip nur den Hexwert in eine Integer umrechnen und den Zeiger in der Datei auf diese Position setzen. <BR>
        <BR>
        zb:<BR>
        HexAddresse: String = '1F'; //=> Integer: 31<BR>
        Datei := TFileStream.Create('Test.txt', fmOpenReadWrite);<BR>
        Datei.Position := StrToInt('$'+HexAdresse); //Setzt den Zeiger in der Datei auf das 31. Zeichen<BR>
        ....<BR>
        <BR>
        Möglicherweise musst du die Position mit +/- 1 noch korrigieren, aber das wirst du ja selbst merken.<BR>
        Wenn du was hineinschreibst werden die vorhandenen Zeichen automatisch ersetzt.<BR>
        <BR>
        Viel Glück, Motz

        Comment


        • #5
          Alles klar,danke schön, Manuel Pöter !
          Werde es ausprobieren!
          Schönen Tag noch!
          Zuletzt editiert von Gast_1; 31.03.2010, 13:29.

          Comment


          • #6
            Ach, ähh...
            Könntest Du mir ein Beispiel schicken ? Stell mich manchmal etwas ungeschick an, ;-)
            Wäre echt klasse von dir !
            Zuletzt editiert von Gast_1; 31.03.2010, 13:29.

            Comment


            • #7
              Hi,

              wie schaut's aus? Hat mit dem Prog alles funktioniert? Code durchschaut?
              Falls du noch irgendwelche Fragen hast schick mir am besten ein Mail.. ([email protected])

              Viel Glück, Motz

              Comment


              • #8
                Danke für Deine Hilfe, es hat nur zum Teil funktioniert, aber ich habe jetzt mein gewünschtes Programm erstellen können !
                Also nochmals herzlichen Dank
                Nice Greetz
                Zuletzt editiert von Gast_1; 31.03.2010, 13:29.

                Comment

                Working...
                X