(Co-Admin)
Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
Delphi 11 Alexandria
|
10. Sep 2002, 22:53
Moin Otti,
dann stellt sich mir die Frage:
Nur wenig Delphi Erfahrung, oder mit der Programmierung unter Windows im Allgemeinen?
In letzterem Falle könnte das was Du vor hast, vielleicht etwas arg kompliziert werden, so als, mehr oder weniger, Einstieg.
Falls ersteres (funktionsfähig umgesetzt hab' ich's auch noch nicht, aber mir ist das Grundprinzip bekannt):
Ein Konsolenprogramm verwendet, für die Eingabe von Daten StdIn, und für die Ausgabe StdOut und StdError.
Im Kontext mit der CMD.EXE hiesse das:
StdOut ist die "normale" Ausgabe auf den Bildschirm, die sich mit 1> oder > umleiten lässt, StdError die Ausgabe im Fehlerfalle. Letztere liesse sich mit 2> umleiten.
StdIn liesse sich durch Import mit < simulieren, und wäre ansonsten die Eingabe via Tastatur.
Das sind Umleitungs- bzw Ein-/Ausgabemöglichkeiten, die im System so vorgesehen sind.
Diese müssten jetzt auf eigene Kanäle umgebogen werden.
Wird ein Prozess mit CreateProcess gestartet, so ginge dies, indem man in der Struktur STARTUPINFO die Member hStdInput, hStdOutput und hStdError mit entsprechenden Handles versorgt. (Voraussetzung: dwFlags enthält STARTF_USESTDHANDLES, ansonsten würden die angebenen Werte ignoriert werden).
Ich schau mal, ob ich noch ein Beispiel dafür finde.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
|