![]() |
Konsolenausgabe Umleitung Zeilenumbuch Problem
Ich verwende folgenden Tipp um die Ausgaben einer Funktion im DOS-Fenster ins eigene Programm zu übernehmen.
![]() Um auch Umlaute, Sonderzeichen usw. richtig anzuzeigen habe ich zusätzlich eine ASCI-ANSI Konvertierung der Funktion hinzugefügt.
Delphi-Quellcode:
Soweit funktioniert alles wie gewünscht.
OemToCharBuff(Stream.Memory, Stream.Memory, Stream.Size);
Ein Problem habe ich jetzt mit der Umleitung von z.B. ipconfig /all Angezeigt werden jetzt zusätzliche Leerzeilen (Memo). Manche Befehle geben anscheinend im DOS-Fenster für einen Carrige Return mit Line Feed Hex 0D 0D 0A anstatt 0D 0A aus. Notepad ignoriert's "bessere" Editoren meckern das Format an und konvertieren nach Rückfrage ins DOS-Format. Gibt's im Delphi eine entsprechende Funktion, oder muss ich dass manuell korrigieren??? |
Re: Konsolenausgabe Umleitung Zeilenumbuch Problem
Nimm
![]() |
Re: Konsolenausgabe Umleitung Zeilenumbuch Problem
AdjustLineBreaks sollte aus CR/CR/LF ein CR/LF/CR/LF machen. :gruebel:
Und zweimaliges Aufrufen wird daran wohl nichts ändern? Bei CR/CR/LF nach CR/LF wird wohl nur ein StringReplace hilfreich sein :) |
Re: Konsolenausgabe Umleitung Zeilenumbuch Problem
Auszug aus der Online-Hilfe:
Zitat:
Aber du hast Recht: StringReplace(#13#13, #13, ...) sollte reichen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05: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