Thema: Delphi [DOS] Ausgabe abfangen

Einzelnen Beitrag anzeigen

Benutzerbild von Andi1985
Andi1985

Registriert seit: 11. Mai 2007
Ort: NRW
116 Beiträge
 
Delphi 2006 Enterprise
 
#22

Re: [DOS] Ausgabe abfangen

  Alt 14. Aug 2008, 13:35
Zitat von marabu:
Dein Programm erwartet Daten auf STDIN. Wenn diese Daten nicht über eine Pipe angeliefert werden, dann kannst du sie per input redirection "prog < filename" bereit stellen. Oder per command line parameter:

Delphi-Quellcode:
begin
  AssignFile(input, ParamStr(1));
  // ...
end;
Das Ende der Eingabe kannst du über die Tastatur mit Strg+Z signalisieren, wenn du keine Eingabe-Umleitung verwendet hast.
versteh ich nicht ganz ...

entweder hab ich den Aufruf meiner exe mit einem PIPE davor oder nicht...
wenn meine Exe normal aufgerufen wird... soll sie den quellcode (siehe oben) nicht ausführen..

ah das ist aber schlecht, kann man nicht abfragen ob "aufruf mit pipe oder ohne" ?
also

Delphi-Quellcode:
WENN PIPE DANN
AssignFile(input, ''); //stdin
  AssignFile(output, ''); //stdout
  Reset(input);
  Rewrite(output);
  while not Eof do
  begin
    ReadLn(line);
    WriteLn(line);
  end;
  CloseFile(output);
  CloseFile(input);
END
  Mit Zitat antworten Zitat