Seite 1 von 1

Pipe API

Verfasst: 30.03.2005 12:29
von Der Fleckenzwerg
Hi,

ich will unter Win XP mit Pipes die Eingabe / Ausgabe der cmd.exe mit meinem Programm steuern. Wenn ich die Ausgabe dann mit ReadFile_() in einer Schleife lese, funktioniert das so lange, bis ich alles gelesen habe. Ist die cmd.exe im Leerlauf und liegen keine neuen Daten auf der Pipe freezt mein Programm so bald ich die ReadFile_() Api aufrufe. Kann ich irgendwie überprüfen, ob Daten auf der Pipe bereit liegen ?! Oder wie kann ich das Problem sonst umgehen ?!

Verfasst: 30.03.2005 20:21
von Deeem2031
ich hab bei sowas Readfile_() immer in einen Thread gepackt, aber ich glaub nicht, dass das die beste Lösung ist ;)

Verfasst: 30.03.2005 21:01
von Der Fleckenzwerg
Hab schon 'ne Lösung gefunden, ich kann vorher mit GetFileSize_() Überprüfen, ob Daten auf der Pipe bereitliegen.

Verfasst: 09.04.2005 18:01
von Deeem2031
Kommt vielleicht etwas spät, aber mir ist gestern aufgefallen das bei GetFileSize_() folgendes steht:
"You cannot use the GetFileSize function with a handle of a nonseeking device such as a pipe or a communications device."

Bei mir gibt GetFileSize_() auch nicht immer das richtige zurück...