Datenübergabe an STDIN eines neuen Prozesses

Code-Stücke können hier veröffentlicht werden.
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Dass keine Fehler kommen liegt schlicht und ergreifend daran dass Du keine Daten transferierst die möglicherweise durch die Uminterpretierung von \n -> \r\n -> \n kaputt gehen. Nimm -u.

--- Heiko.
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Noch eine Möglichkeit, direkt aus dem MoinMoin Quellcode geklaut (nach dezentem Hinweis im IRC) und in test1.py einzubauen:

Code: Alles auswählen

# force input/output to binary
if sys.platform == "win32":
    import msvcrt
    msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY)
    msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
Ist in gewisser Weise noch "portabler", weil ich ehrlich gesagt nicht weiß inwiefern unter Unix python das "-u" Flag mag. Es sagt zwar nix wenn man es angibt, aber ich weiß nicht inwiefern das andere Dinge verändert.

--- Heiko.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hi Heiko!

:D Das wars. Es funktioniert perfekt, wenn man den Code (msvcrt) in "test1.py" einbaut.

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten