Я знаю, что это не прямой ответ на ваш вопрос, но похоже, что вы пишете что-то поверх Perforce в Perl? Если это так, вы можете найти, что существующая библиотека делает то, что вы уже хотите, и избавить себя от многих головных болей, или, по крайней мере, дать вам пример кода для работы.
Например:
РЕДАКТИРОВАТЬ : Теперь, когда я знаю, что вы делаете, я предполагаю, что вы пытаетесь перенести p42svn на Windows или, по крайней мере, сделать его совместимым с Windows по крайней мере. См. в этой теме для обсуждения этой конкретной проблемы. Рекомендация (не проверенная) состоит в том, чтобы попробовать примеры кода, перечисленные в http://perldoc.perl.org/perlfork.html в разделе " Forking pipe open (), еще не реализованном ", чтобы вместо этого явно создать канал.