Zitat:
Aber es würde mich schon interessieren wie du das umsetzen würdest..
So schwer zwei/drei genannte Befehle in einen Code zu schreiben und die Parameter zu füllen?
Delphi-Quellcode:
var
S: string;
B: TBytes;
U: UnicodeString; //WideString
i: Integer;
begin
S := '0056006F007200730063006800610075';
SetLength(B, Length(S) div 2);
HexToBin(PChar(S), B[0], Length(B));
S := TEncoding.BigEndianUnicode.GetString(B);
ShowMessage(S);
S := '0056006F007200730063006800610075';
SetLength(U, Length(S) div 4);
HexToBin(PChar(S), U[Low(U)], Length(U) * 2);
for i := High(U) downto Low(U) do
Word(U[i]) := Swap(Word(U[i]));
ShowMessage(U);
Zitat:
Delphi-Quellcode:
Edit2.Text := '';
For i := 0 to (length(Edit1.Text) div 4)-1 do begin
Edit2.Text := Edit2.Text + WideChar(StrToInt('$' + Copy(Edit1.Text,1 + (i*4),4)));
PS: Vom Speichermanagement her sind die vielen Stringoperationen ein Graus, vor allem im alten Delphi-Memory-Manager.
Massenhaft Speicher reservieren und wieder freigeben ... 4 Mal pro Char, zuzüglich nochmal der Behandlungen im EDIT.
Dank FastMM mag sich da seit Delphi 6 so Einiges gebessert haben, aber schön ist es dennoch nicht.
Gut, bei diesem einen String, innerhalb eines Button-OnClick, mag es niemand wirklich bemerken.