![]() |
openDialog für Hexeditor
Ich habe folgenden Code aus Luckie's Hexloader.
Ich würde da gerne Irgendwo einen opendialog (VCL) einbauen, anstelle des
Delphi-Quellcode:
fs := TFileStream.Create('G:\MP3s\Beatles\Beatles - Blue Jay Way.mp3',
fmOpenRead); Hier die komplette Prozedur
Delphi-Quellcode:
Danke schonmal
procedure TForm1.Button1Click(Sender: TObject);
var fs: TFileStream; Buffer: TMyByteArray; BytesRead: Longint; s: string; i: Int64; HexLength: Integer; begin i := 0; SetLength(Buffer, BUFFERSIZE); fs := TFileStream.Create('G:\MP3s\Beatles\Beatles - Blue Jay Way.mp3', fmOpenRead); HexLength := Length(HEXPREFIX) + 2 + Length(HEXSUFFIX); SetLength(s, fs.size * HexLength); Progressbar1.Max := fs.Size div BUFFERSIZE; try repeat BytesRead := fs.Read(Buffer[0], BUFFERSIZE); Move(BuffToHex(Buffer)[1], s[i * (HexLength * BUFFERSIZE) + 1], HexLength * BytesRead); Inc(i); Progressbar1.StepIt; Application.ProcessMessages; until BytesRead < BUFFERSIZE; Memo1.Text := s; finally FreeAndNil(fs); end; end; Jab |
Re: openDialog für Hexeditor
wenn ich das richtig verstanden habe sollte es so funktionieren:
Delphi-Quellcode:
if OpenDialog1.Execute then
fs:= TFileStream.Create(OpenDialog1.Filename, fmOpenRead); |
Re: openDialog für Hexeditor
Liste der Anhänge anzeigen (Anzahl: 1)
Danke, das hat funktioniert...
Weiß denn auch einer, wie ich es schaffe, ähnlich wie in einem Hexeditor, den hexadezimalen Block aus der Memo1 Komponente , gleichzeitig im Ansii Zeichensatz (oder wie das heißt) in einer Memo2 Komponente darstellen zu lassen??? (siehe Anhang) Über Codesnippets würde ich mich freuen ;) Jab |
Re: openDialog für Hexeditor
Hallo,
Aus der Delphihilfe zu der Funktion Chr: Zitat:
|
Re: openDialog für Hexeditor
Wobei du aber darauf achten musst, dass das ASCII-Zeichen #13 einen Zeilenumbruch darstellt! D.H. wenn du zufällig als Byte den Wert 13 hast (Dezimal), wird in deinem Memo die Zeile umgebrochen.
( Denke mal das war so richtig, ansonsten gilt das Zitat: [equote="Flomei's Fahrlehrer soll mal gesagt haben:"] Ich hab doch keine Ahnung von dem Sch**** hier... [/equote] ) mfg Daniel |
Re: openDialog für Hexeditor
??? :wiejetzt:
Auch wenn das jetzt n bisschen doof klingt, aber ich hab da mal garkeine Ahnung wie das gehen soll :roll: :oops: :pale: . Gibt's da nicht einfach n Befehl für? sowas wie Intohex() nur umgedreht? |
Re: openDialog für Hexeditor
Wozu brauchst du denn eine Funktion, die Hexadezimalzahlen in Integer umwandelt??
Pass auf: Du liest das erste Byte ein, wandelst das in einen Hexadezimalwert um und schreibst ihn in das erste Memo. Dann nimmst du dir wieder das gerade gelesene Byte, wandelst das mit Chr(Byte) in ein ASCII - Zeichen um schreibst das ins zweite Memo. Na ja, usw... mfg Daniel |
Re: openDialog für Hexeditor
Such dir doch einfach im i-Net eine neue Komponente, die dir dein Hex-Editor anzeigt.
Zum Beispiel ![]() |
Re: openDialog für Hexeditor
man könnte sowas zur Abwechslung aber auch mal selbst machen :roll:
war eins der ersten Programme, was ich geschrieben habe, wenn auch ziemlich rudimentär ;) |
Re: openDialog für Hexeditor
@Kernel32.DLL
Ja genau sowas brauch ich, weiß aber nicht wie ich das programmieren soll... Hast du dein Programm vielleicht zufällig noch ? :roll: :roll: :) Wär echt super, da ich mit Delphi noch nicht so richtig durchblicke... @Quake Danke für den Link, hab mal ein paar runtergeladen, sehen aber alle ziemlich kompliziert aus. Schon mal danke für alles... Jab |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz