![]() |
Strings kommen nicht richtig an..
Ich sende einen String den ich vorher in ein byte Array konvertiert habe.
Der String sieht als BEispiel vorher so aus. "C:\Programme" Wenn ich nun diesen in VB mit meinen Tracer entgegennehme sieht er so aus. "C : \ P R O G R " usw... Den string konvertiere ich auf diese weise..
Delphi-Quellcode:
warum kommt nun so ein verkrüppelter String dabei raus ?
var
IntI: Integer; begin IntI := Length(_string); SetLength(_binary, IntI); CopyMemory(@_binary[0], @_string[1], IntI); gruss |
AW: Strings kommen nicht richtig an..
Welche Delphi-Version?
Riecht ein wenig nach Unicode (2 Byte) |
AW: Strings kommen nicht richtig an..
Zitat:
gruss |
AW: Strings kommen nicht richtig an..
Jupp, Unicode.
Wenn
Delphi-Quellcode:
, dann
_string: String
Delphi-Quellcode:
Aber Achtung: Beim Datentransfer NIE dynamische Typen verwenden.
begin
IntI := Length(_string) * SizeOf(Char); SetLength(_binary, IntI); CopyMemory(@_binary[0], @_string[1], IntI); Besser direkt generische Typen, wie AnsiString oder UnicodeString/WideString, bzw. AnsiChar oder WideChar verwenden, damit das Datenformat nicht Compilerabhängig ist. |
AW: Strings kommen nicht richtig an..
Zitat:
Obwohl ich bei WideString genau das gleiche ergebnis bekomme.. Hier meine Widestring function
Delphi-Quellcode:
gruss
var
IntI: Integer; begin IntI := Length(_WString) * SizeOf(WideChar); SetLength(_binary, IntI); CopyMemory(@_binary[0], @_WString[1], IntI); |
AW: Strings kommen nicht richtig an..
Logisch, ist ja definitiv Unicode :mrgreen:
|
AW: Strings kommen nicht richtig an..
Zitat:
Auch nach der geänderten Fassung. Muss nochmal prüfen ob ich das gleiche ergebnis auch von VB nach VB habe .. Wenn ich so überlege scheint es doch richtig zu sein denn ich setze es ja selbst ins Unicode Format wenn es in VB ankommt :shock: Der Übeltäter könnte dann auch #9 = vbTab sein oder aber es wird der Delemiter "," nicht mit übergeben. EDIT: Nop ist nicht richtig wie es ankommt Von VB to VB sieht es aus wie auf Bild 2 (mist2.jpg) gruss |
AW: Strings kommen nicht richtig an..
VB ist Ansi
Wenn du Unicode versendest, dann empfängt man auch Unicode. Willst du ANSI empfangen, dann mußt du natürlich ANSI versenden. :wink: |
AW: Strings kommen nicht richtig an..
Zitat:
Danke ! Hoffe es funktioniert jetzt. EDIT:Jetzt kommt alles korrekt an und wird richtig ausgegeben. gruss |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:42 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