Ладно, вот вам кое-что. Я отлично записываю вывод cmd.exe, читаю из конвейера, yadda yadda yadda, но затем строка в командном файле cmd.exe делает дерзость:
dir err.txt> zz
.. то есть перенаправляет вывод команды dir, которая является внутренней командой внутри cmd.exe.
Проблема в том, что это нарушает мой захват вывода! После этого я ничего не могу получить из cmd.exe.
По-видимому, чтобы перенаправить стандартный вывод, он закрывает его или каким-то образом нарушает его и создает новый стандартный вывод для перенаправления вывода. И это никогда не восстанавливает старую ручку стандартного вывода.
Есть идеи, как отслеживать этот вывод?