Как захватить результат команд DOS в C++

Я создаю приложение Windows, которое должно захватывать результаты нескольких команд DOS без открытия командной строки и сохранять их в строку. Я использую Borland библиотеки.

system("dir") поэтому не хорошо. Результат каждой команды должен быть записан в строковую переменную, чтобы я мог записать его в журнал и отдельный файл.

У меня есть файл XML, где они определены.

Больше всего я борюсь за то, чтобы записать вывод в строковую переменную. Я слышал о _popen но возникают проблемы, пытаясь использовать его.

1 ответ

Я думаю, что вы действительно хотите, это freopen(), который позволяет вам перенаправлять обычные потоки в файл (временный или отдельный файл, который вы упомянули), и когда процесс закрывается, считайте файл в ваш журнал.

Я предполагаю, что "результатом" является вывод команды, а не ее возвращаемое значение.

Другие вопросы по тегам