Как захватить результат команд DOS в C++
Я создаю приложение Windows, которое должно захватывать результаты нескольких команд DOS без открытия командной строки и сохранять их в строку. Я использую Borland библиотеки.
system("dir")
поэтому не хорошо. Результат каждой команды должен быть записан в строковую переменную, чтобы я мог записать его в журнал и отдельный файл.
У меня есть файл XML, где они определены.
Больше всего я борюсь за то, чтобы записать вывод в строковую переменную. Я слышал о _popen
но возникают проблемы, пытаясь использовать его.
1 ответ
Я думаю, что вы действительно хотите, это freopen(), который позволяет вам перенаправлять обычные потоки в файл (временный или отдельный файл, который вы упомянули), и когда процесс закрывается, считайте файл в ваш журнал.
Я предполагаю, что "результатом" является вывод команды, а не ее возвращаемое значение.