AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Konsolenanwendung - crt.pas - Console Library
Thema durchsuchen
Ansicht
Themen-Optionen

Konsolenanwendung - crt.pas - Console Library

Ein Thema von arcticwolf · begonnen am 26. Jun 2023 · letzter Beitrag vom 27. Jul 2023
Antwort Antwort
Seite 1 von 5  1 23     Letzte »    
Benutzerbild von arcticwolf
arcticwolf

Registriert seit: 3. Aug 2021
Ort: Erfurt
41 Beiträge
 
Delphi 11 Alexandria
 
#1

Konsolenanwendung - crt.pas - Console Library

  Alt 26. Jun 2023, 14:51
Vielleicht kennen noch einige von Euch die Problematik, dass die gute alte crt.pas von Borland irgendwann in den neueren Delphi-Versionen einfach nicht mehr da war. Ich hatte diese Herausforderung vor etlichen Jahren zu meistern. Dazu kam dann noch die Thematik, dass die ERP-Software (Warenwirtschaft) für die ich als Programmierer verantwortlich war/bin, bis Mitte der 2010er-Jahre gleichzeitig unter MS-DOS und Windows laufen sollte. Also habe ich über die Jahre viel Zeit investiert um Code zu schreiben, der mir dies ermöglichte.

Ich habe diesen Code, der über die Jahre zusammengekommen ist, in den letzten Wochen etwas strukturiert und so zusammengefasst, dass er möglichst einfach von jedem eingesetzt werden kann.

Ich möchte den Code der Community als Open Source Projekt zur Verfügung stellen und habe ihn heute auf GitHub hochgeladen.

https://github.com/playcom-de/Console

Die Bibliothek umfasst heute natürlich einen deutlich größeren Funktionsumfang, als nur die crt.pas zu ersetzen. Zum Beispiel hat man die Möglichkeit dem Konsolenfenster eine beliebige Größe (nicht nur 80 x 25) zu geben, die Farben beliebig zu manipulieren, Unicode-Zeichen zu verarbeiten und sogar underline und outline von Text ist möglich. Die Schriftart und Schriftgröße des Konsolenfensters kann genauso geändert werden, wie die Position auf dem Desktop. Um nur einige Features zu nennen.

Ich habe zur Bibliothek auch einige Demos hinzugefügt, um die Anwendungsmöglichkeiten einiger Features zu zeigen.

Ich würde mich freuen, wenn ihr Euch das mal anschaut und mir ein Feedback gebt.
Wolfgang
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 26. Jun 2023, 15:28
Vergiss es gleich wieder.

Diese API ist am sterben.
Es wird zukünftig nur noch die neuen Streammingfunktionen geben.

Vielleicht hättest du vorher mal die Dokumentation lesen sollen?
Sie strotzt hier nur noch so vor Warnhinweisen ,
ala
Zitat:
Important

This document describes console platform functionality that is no longer a part of our ecosystem roadmap. We do not recommend using this content in new products, but we will continue to support existing usages for the indefinite future. Our preferred modern solution focuses on virtual terminal sequences for maximum compatibility in cross-platform scenarios. You can find more information about this design decision in our classic console vs. virtual terminal document.
Zitat:
Tip

This API does not have a virtual terminal equivalent. Its use may still be required for applications that are attempting to draw columns, grids, or fill the display to retrieve the window size. This window state is managed by the TTY/PTY/Pseudoconsole outside of the normal stream flow and is generally considered a user privilege not adjustable by the client application. Updates can be received on ReadConsoleInput.
uvm.



Abgesehn davon, dass in aktuellen Windows 11 nun das neue Terminal standardmäßig genutzt wird, und nicht mehr die "veraltete" CMD.exe.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (26. Jun 2023 um 15:34 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 26. Jun 2023, 15:35
Also wenn ich sehe wie oft Microsoft schon etwas als "preferred modern solution" angepriesen hat und wie schnell es danach wieder von der Bildfläche verschwand...

Ich finds toll und werde es mir demnächst mal anschauen, auch wenn ich spontan noch keinen Anwendungsfall habe. Daumen hoch für anschauliche Bildchen auf der Github-Startseite, damit bekommt man direkt ein Feeling für das, was es ist. Ich finde das nehmen viele nicht wichtig genug.
  Mit Zitat antworten Zitat
Benutzerbild von arcticwolf
arcticwolf

Registriert seit: 3. Aug 2021
Ort: Erfurt
41 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 26. Jun 2023, 15:54
@himitsu:
Zitat:
Vielleicht hättest du vorher mal die Dokumentation lesen sollen?
Wie kommst Du zu der Annahme, dass ich das nicht gemacht habe? Denkst Du ich habe den Delphi-Code einfach so geschrieben ohne in die MSDN zu schauen?

Ich gehe nicht davon aus, dass die API in den nächsten Jahre streben wird, Microsoft im übrigen auch nicht.
Zitat:
but we will continue to support existing usages for the indefinite future.
Es geht/ging mir ja auch nicht darum, mit der Bibliothek dem neusten Trend von Mircrosoft hinterher zu laufen.

@Der schöne Günther:
Vielen Dank!
Wolfgang
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.295 Beiträge
 
Delphi 12 Athens
 
#5

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 27. Jun 2023, 10:00
So eine CRT-Unit wünsche ich mir für die Linux-Console.

Auf meine Linux-Server im RZ melde ich mich über Putty auf die Console an. Nutze z.B. dort den Midnight-Commander (mc). Würde mir gerne ein paar Tools schreiben, die sich wie der MC bedienen lassen. Kennt sich jemand damit aus?
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
655 Beiträge
 
Delphi 12 Athens
 
#6

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 27. Jun 2023, 10:15
Auf meine Linux-Server im RZ melde ich mich über Putty auf die Console an. Nutze z.B. dort den Midnight-Commander (mc). Würde mir gerne ein paar Tools schreiben, die sich wie der MC bedienen lassen. Kennt sich jemand damit aus?
"Auskennen" wäre etwas übertrieben formuliert, weil es auch schon lange her ist, dass ich das mal gebraucht hatte. Aber das Stichwort, um so etwas unter Linux zu erreichen ohne alles neu zu erfinden, ist "ncurses". Emba liefert für ncurses leider offenbar standardmäßig keine passende Bibliothek mit, aber hier hat sich offenbar schon mal jemand die Mühe gemacht, einen passenden Wrapper zu schreiben. Wäre ja zumindest mal ein erster Ansatz, das zu testen.

Und: Respekt an die Arbeit für die crt.pas! Müsste mal gucken, ob mein Vokabeltrainer aus Schulzeiten noch funktioniert.
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
719 Beiträge
 
Delphi XE5 Professional
 
#7

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 27. Jun 2023, 10:26
Hallo Wolfgang,
zunächst vielen Dank für Deine Mühe & die Console Library!
Bei mir beschwert sich allerdings mein etwas betagter XE5-Compiler:
Zeile 254:
class operator Equal(Lhs, Rhs: TCoord) : Boolean;
[dcc32 Fehler] Ply.Types.pas(254): E2123 PROCEDURE, FUNCTION, PROPERTY oder VAR erwartet

Ab welcher Delphi-Version ist die Console Library verwendbar?
Grüße, Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher. (John C. Cornelius)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 27. Jun 2023, 11:12
"class operator" eigentich schon seit D2006.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.604 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 27. Jun 2023, 12:40
So eine CRT-Unit wünsche ich mir für die Linux-Console.

Auf meine Linux-Server im RZ melde ich mich über Putty auf die Console an. Nutze z.B. dort den Midnight-Commander (mc). Würde mir gerne ein paar Tools schreiben, die sich wie der MC bedienen lassen. Kennt sich jemand damit aus?
Es gab sowas mal für Perl (bzw. gibt es vermutlich noch). Aber ich vermute, das ist nicht die Programmiersprache, für die Du das suchst.
Thomas Mueller
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.295 Beiträge
 
Delphi 12 Athens
 
#10

AW: Konsolenanwendung - crt.pas - Console Library

  Alt 27. Jun 2023, 12:51
Wäre ja zumindest mal ein erster Ansatz, das zu testen.
Ja cool. Danke!
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 5  1 23     Letzte »    


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 03:25 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