Печать в файл из 16-разрядного приложения DOS
У меня есть устаревшее приложение, которое использует IPX/SP для работы в сети и является 16-разрядным приложением DOS. Нет доступа к исходному коду, ничего не могу изменить. Единственный способ, которым я могу запустить его, - это под управлением Windows XP.
Пытаюсь автоматизировать некоторые процессы, и мне нужно перенаправить то, что печатает приложение, в текстовые файлы. Приложение печатает на 3 разных принтерах, LPT1, LPT2, LPT3 в зависимости от типа контента.
Попытался использовать старую утилиту "prn2file", но не работает. Он регистрирует хорошо с
prn2file "c:tempfile1.txt" /p lpt2
И заявляет, что перенаправляет LPT2 на c:tempfile1.txt . Он создает файл, но он остается пустым, независимо от того, что я печатаю. Я даже не могу заставить его распечатать из командной строки DOS, там написано "не удается инициализировать PRN".
Итак, я слышал, что PRN2FILE может больше не работать в последних версиях Windows. Нет точных данных, что означает "недавний", но в любом случае. Поэтому я попробовал провести испытание с"printfil.com "что говорит о том, что они справляются с этой проблемой. Но происходит то же самое - ничего. Никогда печать. Даже из командной строки. Их поддержка очень полезна и дала много предложений, но это просто не работает.
Попробовал 3 разных компьютера с Windows XP, попробовал в виртуальной машине, тот же результат. Немного озадачен тем, что здесь происходит.
Это кажется действительно простой проблемой, но почему это никогда не работает? У кого-нибудь есть другой вариант, который доказательно работает?