Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Обрывы при чтении вывода консольного приложения - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Очередь (задача из Лафоре) http://www.cyberforum.ru/cpp-beginners/thread1202560.html
Задача 9 из Лафоре: Надо написать класс queue, имеющий два метода: put() для помещения элемента в очередь и get() для извлечения элемента из очереди. Вам понадобятся два поля head и tail (конец и...
C++ Все разбиения натурального числа N на сумму слагаемых Есть такой код на паскале: var i,j,task,n,k,index,gk:integer; number:int64; A : array of int64; Ans : array of byte; begin for i:=1 to 32 do begin A:=1;A:=1;Ans:=0;end; http://www.cyberforum.ru/cpp-beginners/thread1202557.html
C++ Как считывать слова/цифры пока не закончился ввод пользователем
Как считывать слова/цифры пока не закончился ввод пользователем
Вывести на экран информацию обо всех ноутбуках фирмы, название которой вводится клавиатуры C++
Описать структуру Notebook, содержащую следующие поля: фирма, модель ноутбука, размер экрана, объем жесткого диска, цена. Вывести на экран информацию обо всех ноутбуках фирмы, название которой...
C++ Непонятка с функцией md5 нахождения хэш - суммы http://www.cyberforum.ru/cpp-beginners/thread1202510.html
Здравствуйте! Решил по чуть-чуть двигаться в сторону более высоких материй, в частности шифрование. Столкнулся с проблемой, в C++ нет библиотек для нахождения md5 хэш - суммы. Гугланул(как...
C++ Программа для проверки тестовых заданий Здравствуйте! Необходима помощь в написании программы. В ТЗ указывается, что программа должна обеспечивать возможность выполнения перечисленных ниже функций: 1. функции загрузки изображения.... подробнее

Показать сообщение отдельно
wingblack
259 / 234 / 33
Регистрация: 09.04.2013
Сообщений: 863

Обрывы при чтении вывода консольного приложения - C++

08.06.2014, 14:03. Просмотров 143. Ответов 0
Метки (Все метки)

Требуется прочитать вывод консольного приложения. Был использован код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    char tmp[200];
 
    FILE *child = _popen("windump.exe -i 1 -s 0 -w - ", "r");
 
    if (NULL == child)
        throw std::runtime_error("Unable to spawn child program");
 
    while   (fgets(tmp, sizeof(tmp), child))
        cout << tmp;
        
    std::cout << "\n END \n";
    _getch();
    return 0;
Проблема в том, что программа прерывает чтение, хотя если запутить консольное приложение, с которого производится чтение, отдельно, то оно выводит данные пока не закроешь.
Думаю, это может быть из-за наличия каких-то спец символов в потоке вывода.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru