AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Kommando chcp mit CreateProcess ausführen
Thema durchsuchen
Ansicht
Themen-Optionen

Kommando chcp mit CreateProcess ausführen

Ein Thema von Photoner · begonnen am 4. Apr 2016 · letzter Beitrag vom 4. Apr 2016
 
Photoner

Registriert seit: 6. Dez 2012
Ort: Nürnberg
103 Beiträge
 
Delphi 10.1 Berlin Starter
 
#5

AW: Kommando chcp mit CreateProcess ausführen

  Alt 4. Apr 2016, 15:24

Ja, bei mir enthält die Output StringList wie erwartet den Text "Aktive Codepage: 850.".
Bei mir leider nicht. Außerdem liefert mir GetAcp ein Ergebnis von 1252.

Ich habe mit dem Problem schon zu viel Zeit verbracht...

Ganz blöde Geschichte, die mir ein Vorgänger hinterlassen hat:

Die Intention war mit einem TWriter Objekt X Bytes eines Records zu schreiben.

Anstatt das mit einem Pointer und der Funktion procedure Write(const Buf; Count: Longint); zu erledigen wurde es in einer Schleife mit procedure WriteChar(Value: Char); gemacht (Adresse als PChar casten und in der Schleife einen Char schreiben und den Pointer inkrementieren).

Aus dem Char wird intern entweder ein AnsiString (vor Delphi 2009) oder ein UTF8String. Das zweitere ist aber abhängig von der derzeitigen Codepage und damit für verschiedene Regioneneinstellungen unterschiedlich.

Ich kann die Warnung von MS nur voll unterstützen:

Note The ANSI code pages can be different on different computers, or can be changed for a single computer, leading to data corruption. For the most consistent results, applications should use Unicode, such as UTF-8 or UTF-16, instead of a specific code page, unless legacy standards or data formats prevent the use of Unicode
Chris
  Mit Zitat antworten Zitat
 

 

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 19:37 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