AW: Probleme mit RtlRunEncodeUnicodeString
Zitat:
Delphi-Quellcode:
var
Source: WideString; UnicodeString: UNICODE_STRING; Hash: UCHAR; begin Source := 'TestString'; RtlInitUnicodeString(@UnicodeString, PWideChar(Source)); Hash := 0; RtlRunEncodeUnicodeString(@Hash, @UnicodeString); RtlRunDecodeUniCodeString(Hash, @UnicodeString); end. |
AW: Probleme mit RtlRunEncodeUnicodeString
Zitat:
Edit: Zumindest bei neueren Delphi Versionen stehen auf den ersten Blick tatsächlich zwei Nullbytes hinter dem String. Zitat:
Code:
Unit1.pas.63: RtlInitUnicodeString(@UnicodeString, @Source[1]);
005C7383 8B45F8 mov eax,[ebp-$08] 005C7386 E8252DE4FF call @WStrToPWChar 005C738B 50 push eax 005C738C 8D45F0 lea eax,[ebp-$10] 005C738F 50 push eax 005C7390 E8B7FFFFFF call RtlInitUnicodeString Unit1.pas.64: RtlInitUnicodeString(@UnicodeString, PWideChar(Source)); 005C7395 8B45F8 mov eax,[ebp-$08] 005C7398 E8132DE4FF call @WStrToPWChar 005C739D 50 push eax 005C739E 8D45F0 lea eax,[ebp-$10] 005C73A1 50 push eax 005C73A2 E8A5FFFFFF call RtlInitUnicodeString |
AW: Probleme mit RtlRunEncodeUnicodeString
Zitat:
Zitat:
|
AW: Probleme mit RtlRunEncodeUnicodeString
Zitat:
Delphi-Strings haben auch schon seit Delphi 2 kein vorangestelltes Längenbyte mehr, sondern einen 32 Bit Integer. Der String mit Längenbyte ist der alte ShortString. Aktuell steht vor Ansi/UnicodeStrings eine ganze Menge mehr, insgesamt 12 Bytes. |
AW: Probleme mit RtlRunEncodeUnicodeString
Zitat:
Zitat:
Zitat:
Glaube aber wir bewegen uns grade etwas vom Thema weg. |
AW: Probleme mit RtlRunEncodeUnicodeString
Zitat:
|
AW: Probleme mit RtlRunEncodeUnicodeString
Hallo zusammen,
da habe ich ja was los getreten ;-) *** Vielen Dank an alle, die geholfen haben :thumb::thumb::thumb::thumb:..! *** Inzwischen habe ich das ganze integriert und es funktioniert alles wie es soll. Auch über Pointer, CopyMemory, etc. habe ich einiges gelernt - ich hoffe, ich vergesse es nicht wieder so schnell ;-) Grüße & schönen Sonntag, Sebastian |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:09 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