好吧,這裏有一個棘手的問題 - 我捕獲了cmd.exe的輸出就好了,從管道讀取yadda yadda yadda,但是cmd.exe批處理文件中的一行有大膽做:在重定向後繼續捕獲輸出
DIR err.txt> ZZ
..即,它重定向dir命令的輸出,這是內部cmd.exe的一個內部命令。
問題是,這打破了我對輸出的捕獲!此後,我無法從cmd.exe獲取任何內容。
顯然重定向標準輸出,它關閉它,或者以某種方式打破它,並使一個新的標準輸出重定向輸出。它永遠不會恢復舊的stdout句柄。
有關如何跟蹤此輸出的任何想法?
'調用'不會使用單獨的進程。在這種情況下,你需要'cmd/c「dir err.txt> zz」'。 – Joey 2010-10-23 11:31:12