Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Datei im Hex Format laden und speichern (https://www.delphipraxis.net/56530-datei-im-hex-format-laden-und-speichern.html)

maximus Caesar 7. Nov 2005 13:30


Datei im Hex Format laden und speichern
 
Hallo!
Ich lade eine Datei im Hex Format, so wie hier beschrieben in ein Memo.
Nun tue ich diese Hexwerte verändern und möchte das ganze wieder als richtige Datei abspeichern.
Wie mache ich das?
(also, ich möchte keine Datei in der jetzt z.B. $49 $44 $33 $03 $00 $00 $00 $00 $23 $76 $54 steht!)

Khabarakh 7. Nov 2005 17:35

Re: Datei im Hex Format laden und speichern
 
Drehe den Code von dort doch einfach wieder um. Wenn du ihn verstanden hast, sollte das kein großes Problem sein.

[add] Oder (wahrscheinlich etwas einfacher): Zerteile den String mit ExplodeExplode in de einzelnen Bytes, rechne sie mit StrToInt um (unterstützt auch hexadezimale Zahlen) und füge sie einzeln in den Stream ein. [/add]

shmia 7. Nov 2005 18:20

Re: Datei im Hex Format laden und speichern
 
Schau mal in der Code-Library:
http://www.delphipraxis.net/internal...ct.php?t=46356
Dort gibt es Funktionen für beide Richtungen.
Der Rest ist dann nur etwas Fleissarbeit. Dir schwebt wohl so eine Art Hex-Editor vor.
Dann mal kurz das Grundprinzip:
Die Datei wird in Häppchen à 16 Bytes auf einen String eingelesen und dann in Hex-Darstellung
gewandelt (mit StrToHexString()) und an ein Memo angehängt: Memo1.Lines.Add(StrToHexString(daten)).
Bei Speichern wird umgekehrt verfahren.

maximus Caesar 7. Nov 2005 18:28

Re: Datei im Hex Format laden und speichern
 
Danke!
Ich arbeite an einem Verschlüsselungsprogramm, das als dll in einem anderen Programm verwendet werden soll....

maximus Caesar 14. Nov 2005 12:27

Re: Datei im Hex Format laden und speichern
 
Zitat:

Zitat von Khabarakh
Drehe den Code von dort doch einfach wieder um. Wenn du ihn verstanden hast, sollte das kein großes Problem sein.

[add] Oder (wahrscheinlich etwas einfacher): Zerteile den String mit ExplodeExplode in de einzelnen Bytes, rechne sie mit StrToInt um (unterstützt auch hexadezimale Zahlen) und füge sie einzeln in den Stream ein. [/add]

Also, ich hab jetzt die Daten mit der genannten Funktion geladen. Wie bekomme ich Sie jetzt wieder in eine Datei (bitte mit Code-Beispiel)?
Ich bekomms einfach net hin.

Khabarakh 14. Nov 2005 12:41

Re: Datei im Hex Format laden und speichern
 
Wenn du an einer Stelle festhängst, helfe ich dir gerne. Code brauchst du von mir aber nicht zu erwarten (es sei denn, ich hätte solch eine Funktion schon einmal geschrieben). Wenn du Code willst, kannst du ja die Funktion aus der Code-Lib nehmen.

maximus Caesar 14. Nov 2005 15:01

Re: Datei im Hex Format laden und speichern
 
Ich bräuschte ne Erklärung zu der Prozedur oben, da ich se nicht blicke, samit ich mir ein entsprechendes gegenstück schreiben kann.
Hab bisher noch nicht mit TFileStream gearbeitet, weiß also nicht so ganz was ich machen muss, und die Suche hat mir auch nicht geholfen.

maximus Caesar 16. Nov 2005 17:12

Re: Datei im Hex Format laden und speichern
 
Kann mir jemand bitte die Prozedure erklären?
Danke!


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz