![]() |
asyncpro + delphi + apdcom1.putstring(chr(128))
hallo,
ich versuche mit asyncpro per .putstring den chr(128) zu senden. also eigentlich will ich in hex 80 senden. ich benutze einen comport listener, ausserdem läuft das asyncpro logging. nun zum problem: ich sende mit dem befehl ApdComPort1.PutString(chr(128)); was auf dem comport ankommt ist $3f also 63 was einem "?" entspricht anstelle von $80(128)(€). sende ich chr(127) oder chr(129) kommt auch das richtige an also $7f bzw $81. sende ich ApdComPort1.PutString('€'); kommt auf dem comport $80 an. vielen dank für eure bemühungen. mfg maddy |
AW: asyncpro + delphi + apdcom1.putstring(chr(128))
D2009 oder neuer. Stimmts?
Im Unicode ist $0080 nicht das €-Zeichen. Dieses liegt an der Position $20AC. Die Funktion Chr(128) liefert ab D2009 eine Widechar zurück welche wenn es als 1-Byte Character Interpretiert werden soll mit der aktuellen Codepage gewandelt werden muss. Da es keine passenden Platz im 8-Bit Ansi-Bereich gibt wird korrekter weise ein $3F (= ?) zurückgeliefert. |
AW: asyncpro + delphi + apdcom1.putstring(chr(128))
ja genau, delphi 2010. das hatte ich wohl vergessen.
und nun? :-) |
AW: asyncpro + delphi + apdcom1.putstring(chr(128))
wenn Deine Gegenstelle Unicode verdaut wirst Du 2 Bytes schicken müssen, oder schauen ob das Protokoll etwas anderes vorsieht...seriell werden eigentlich nur Bytes übertragen ...
Delphi-Quellcode:
var
C:Char; ast:AnsiString; i:Integer; begin c :='€'; i := 0; SetLength(ast,SizeOf(c)); Move(c,ast[1],SizeOf(c)); Move(c,i,SizeOf(c)); Showmessage(IntToHex(i,8)); |
AW: asyncpro + delphi + apdcom1.putstring(chr(128))
durch einen tippfehler, sind wir auf die idee gekommen, ansichar(128) zu senden anstelle von chr(128).
und das scheint bis jetzt gut zu klappen. |
AW: asyncpro + delphi + apdcom1.putstring(chr(128))
Zitat:
Zitat:
PS: Deine Tastatur sollte eine [Shift]-Taste besitzen, welche man eventuell ebenfalls verwenden könnte. :wink: (nja, wenigstens sind . und , noch vorhanden) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:00 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-2025 by Thomas Breitkreuz