AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Sonderzeichen übermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

Sonderzeichen übermitteln

Ein Thema von codenoob · begonnen am 28. Jun 2017 · letzter Beitrag vom 2. Jul 2017
Antwort Antwort
Seite 2 von 2     12   
nahpets
(Gast)

n/a Beiträge
 
#11

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 17:59
Ja, die Konsole hat' nen anderen Zeichnsatz, als z. B. der Editor von Delphi.

Probier' doch mal bitte, ob in Deinem neuen Programm die Ausgabe der Umlaut äöü ... klappt.

Delphi-Quellcode:
program Project1;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils,
  Windows;

function StrOemToAnsi(const S: string): string;
begin
  SetLength(Result, Length(S));
  if S <> 'then OemToAnsiBuff(@S[1], @Result[1], Length(S));
end;

function StrAnsiToOem(const S: string): string;
begin
  SetLength(Result, Length(S));
  if S <> 'then AnsiToOemBuff(@S[1], @Result[1], Length(S));
end;

var
   MyString : String;

begin
  try

   MyString := StrAnsiToOem('Mein String mit Sonderzeichen ૐ');

   writeln(MyString);
   Readln;

    { TODO -oUser -cConsole Main : Code hier einfügen }
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.
Damit besser?

Wobei ich bezweifle, dass die Konsole das von Dir gewählte Sonderzeichen überhaupt ausgeben kann.

Zum Zeichensatz der Konsole (und dessen Änderung) wurde weiter oben schonmal was geschrieben.
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 18:22
Liest Du eigentlich die Antworten?
Die Konsole ist default auf der Codepage des Systems unterwegs

Also erstmal in Deinem Programm vor dem ersten benutzen der Konsole:

SetConsoleOutputCP(CP_UTF8);
oder
SetTextCodePage(Output, CP_UTF8);

und dann ganz wichtig !!!!
Stelle bitte in den Eigenschaften Deiner Konsole auf einen TrueType Font mit UnicodeSupport.
Es werden aber dort nur Fonts mit fester Breite vorgeschlagen, es muss also nicht sein dass alles angezeigt wird.
Aber Anzeige ist nicht gleich Daten.
Und wenn Du auf einer Seite 8 Bit-Strings versendest kannst Du nicht erwarten dass Unicode ankommt, vor allem nicht wenn die Zeichen nicht in eine Codepage passen.
Fritz Westermann
  Mit Zitat antworten Zitat
codenoob
(Gast)

n/a Beiträge
 
#13

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 18:31
Wo ändere ich denn die Eigenschaften Konsole?
Bei den Projekt Einstellungen?

screenshoot_3.jpg
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#14

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 18:49
Mit dem zwei Post höher zitierten Quelltext?
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#15

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 19:19
Aber Anzeige ist nicht gleich Daten.


K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#16

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 19:31
Wo ändere ich denn die Eigenschaften Konsole?
Bei den Projekt Einstellungen?
Nee, in der Konsole, also im Windows.
Wenn eine Konsole offen ist, dann im Kontextmenü "Eigenschaften" ihrer Titelleiste.

Das war zur Anzeige, also der Teil zwischen der Console und dir.


Bezüglich der Schnittstelle zwischen deinem Programm und der Console.
siehe Posts #7, #11 usw.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.344 Beiträge
 
Delphi 11 Alexandria
 
#17

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 20:32
Wie kann ich denn prüffen ob es überhaupt schon in der Konsole Richtig ankommt und vom der Server Form richtig versendet wird ?
Habe ich ja geschrieben...
Zuerst im Debugger prüfen, ob die reine Übertragung funktioniert. (Haltepunkt setzen und Inhalt der Variablen auswerten.)
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#18

AW: Sonderzeichen übermitteln

  Alt 29. Jun 2017, 22:34
Wie kann ich denn prüffen ob es überhaupt schon in der Konsole Richtig ankommt und vom der Server Form richtig versendet wird ?
Gib "Filename" doch als Hexstring aus.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
codenoob
(Gast)

n/a Beiträge
 
#19

AW: Sonderzeichen übermitteln

  Alt 2. Jul 2017, 21:14
Nach langen prüffen meiner Form und meiner Cosole scheint es wohl an dem CreateFile zu liegen das meine Konsole keine Datei mit Sonderzeichen erstellen kann die sie empfängt.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#20

AW: Sonderzeichen übermitteln

  Alt 2. Jul 2017, 22:41
Dann schau mal hier herein:
Zitat:
In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "\\?\" to the path. For more information, see Naming Files, Paths, and Namespaces.

For information on special device names, see Defining an MS-DOS Device Name.

To create a file stream, specify the name of the file, a colon, and then the name of the stream. For more information, see File Streams.

Tip Starting with Windows 10, version 1607, for the unicode version of this function (CreateFileW), you can opt-in to remove the MAX_PATH limitation without prepending "\\?\". See the "Maximum Path Length Limitation" section of Naming Files, Paths, and Namespaces for details
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:38 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