@GetHexDump
Syntax
@GetHexDump(VAR);
@GetHexDump(VAR;FNOPTIONS1);
@GetHexDump(VAR;FNOPTIONS1;TEXTRETTYPE2);
Beschreibung
@GetHexDump gibt den Inhalt der Varibale VAR als Hex-Dump zurück.
VAR darf jeden Typs sein, mit Ausnahme von HUGE-Datentypen*.
*HUGE-Datentypen (siehe @GetDataType):
VHUGEHUGEITEM HI
VHUGERTCOMPONENTS RC
VHUGEHUGERT HR
VHUGEVIEWMAPLAYOUT VML
VHUGEVIEWFORMAT VF
VHUGEVIEWMAPDATATYP VMD
VHUGEIDLIST IL
VHUGEUNIDLIST HUL
VHUGETEXTLIST HTL
VHUGEIIDLIST IIL
VHUGERFC822 HRF8
VHUGEMIMEPART HMP
FN FNOPTIONS1:
Option Hex Dec Kommentar
HEXDUMP_OPT_ADDRESS 0001* 00001* Gibt in jeder Zeile vor den Hex-Werten die relative Addresse an.
HEXDUMP_OPT_ASCII 0002* 00002* Gibt in jeder Zeile nach den Hex-Werten die anzeigbaren Zeichen aus.
HEXDUMP_OPT_STREAM 0004 00004 Stream-Modus. Im Stream-Modus werden die Hex-Werte nicht Zeilenweise, sondern alle hintereinander ausgegeben. Die Optionen 1 & 2 werden im Stream-Modus ignoriert!
HEXDUMP_OPT_STREAM_COMPRESS 0008 00008 Diese Stream-Modus-Option (ist im Zeilenweisen Modus nicht verfügbar) lässt die Spaces zwischen den Hex-Werten weg.
*=default
Bitvektor, um mehrere Optionen zu kombinieren, müssen die Werte addiert werden.
TEXT TEXTRETTYPE2:
A = TEXT
B = BINBUFFER (default)
Return:
Einen Handle auf den allokierten Binär-Puffer vom Datentyp BINBUFFER, ein TEXT oder @Error.
Wird ein BINBUFFER zurück gegeben, liegt die aktuelle Position in diesem BINBUFFER hinter dem eigentlich Ausgabe-Text.
Der BINBUFFER wird gundsätzlich einige Bytes größer angelegt, als der eigentliche Text erfordern würde.
Beispiel: @GetHexDump(VAR)
Var:="123456789012345678";
HexDumpBinBuffer:=@GetHexDump(Var);
HexDumpBinBuffer:=@DestroyBuffer(HexDumpBinBuffer);
Es wid die TEXT Variable Var in einen BINBUFFER HexDumpBinBuffer als Dump ausgegeben.
Der BINBUFFER wird anschließend wieder freigegeben.
Beispiel: @GetHexDump(VAR;FNOPTIONS1)
Var:="123456789012345678";
Options:=4;
HexDumpBinBuffer:=@GetHexDump(Var;Options);
@LogReport(HexDumpBinBuffer;3);
HexDumpBinBuffer:=@DestroyBuffer(HexDumpBinBuffer);
Es wid die TEXT Variable Var in einen BINBUFFER HexDumpBinBuffer als Stream-Dump ausgegeben.
Der Inhalt des BINBUFFER HexDumpBinBuffer wird ins APILOG ausgegeben und anschließend wird der BINBUFFER HexDumpBinBuffer wieder freigegeben.
Beispiel-Ausgabe im APILOG:
Buffer:000002A59E1C242C Position:00000035 AllocSize:86 UsedSize:53
00000000 33 31 20 33 32 20 33 33 20 33 34 20 33 35 20 33 36 20 33 37 31 32 33 34 35 36 37
00000014 20 33 38 20 33 39 20 33 30 20 33 31 20 33 32 20 33 33 20 33 38 39 30 31 32 33 3
00000028 34 20 33 35 20 33 36 20 33 37 20 33 38 4 35 36 37 38
Beispiel: @GetHexDump(VAR;FNOPTIONS1;TEXTRETTYPE2)
Var:="123456789012345678";
Options:=12;
RetType:="A";
RetHexText:=@GetHexDump(Var;Options;RetType);
@LogReport(RetHexText;3);
Es wid die TEXT Variable Var als Stream-Dump ohne Leerzeichen der TEXT Variable RetHexText zugewiesen.
Der TEXT RetHexText wird im APILOG ausgegeben.
Beispiel-Ausgabe im APILOG:
313233343536373839303132333435363738
