Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.08.2015, 14:25   #1
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
По умолчанию Запустить программу dos из программы на с++ и получить из нее данные

Как запустить dos программу и получить то что она выведет на экран???
Я ее запускаю от так, а как данные получить?
Код:
system("recognize.exe img.png");
она запустилась вывела на экран строчку и закрылась, а как мне эту строчку получить в переменную???
ninja2 вне форума Ответить с цитированием
Старый 26.08.2015, 14:33   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Запускайте крейтпроцессом и задавайте хендлы для стдаута в STARTUPINFO
p51x вне форума Ответить с цитированием
Старый 26.08.2015, 15:11   #3
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

И для stderr тоже.

И я сомневаюсь, что у вас именно dos программа. Скорее всего просто консольная программа, что не эквивалентно dos.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 26.08.2015, 18:08   #4
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Запускайте крейтпроцессом и задавайте хендлы для стдаута в STARTUPINFO
А что это такое? Первый раз слышу.
ninja2 вне форума Ответить с цитированием
Старый 26.08.2015, 18:14   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

CreateProcess
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 26.08.2015, 18:29   #6
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
CreateProcess
А-ха-ха. Открыть и убить? Весело.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 26.08.2015, 18:46   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну веселитесь раз весело, главное другим не мешайте своим весельем.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 26.08.2015, 19:05   #8
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Ну веселитесь раз весело, главное другим не мешайте своим весельем.
Я не об этом. Получить данные из стороней проги можно. Есть два варианта. Либо она даёт такую возможность в опциях, либо - декомпиляция. С последней, если не спец, напаришься, мама не горюй. Удачи.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 26.08.2015, 19:11   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
system("recognize.exe img.png > out.txt");
И потом считать этот out.
не?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.08.2015, 19:16   #10
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Я не об этом. Получить данные из стороней проги можно. Есть два варианта. Либо она даёт такую возможность в опциях, либо - декомпиляция. С последней, если не спец, напаришься, мама не горюй. Удачи.
Да, видимо и правда у вас там весело, раз даже стандартных потоков вывода нету.
Как ж вы там в консоль пишете?


Про
Код:
program.exe > file.txt
тоже не слышали? (только если запускать это просто через system, то оно вроде не будет ждать пока программа завершится, что может быть неудобно)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 26.08.2015 в 19:19.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
выделить память под строку и записать в нее данные marenko.lilia Помощь студентам 3 22.08.2014 11:31
Получить HInstance DLL имея под рукой только форму из нее it-webwork Общие вопросы Delphi 1 18.03.2013 14:36
Как получить данные с чужой программы в свою? pepesina Общие вопросы Delphi 21 13.07.2012 16:24
Как запустить образ ISO из под DOS m1rinat Компьютерное железо 1 04.10.2009 10:05