Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Общие » Флейм » Считать данные.

Модерирует : 3xp0, TechSup

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Uido0Bdue



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть программка "xdelta3-3.0.4-x86-32.exe" работающая из командной строки, которая позволяет построить разницу между двумя файлами.  
 
Нужно как-то считать данные/поток на ходу, пока программа работает, из другой программы, как это можно примерно реализовать?
Нужно для "Индикатора процесса".
(на картинке отметил)


Всего записей: 4 | Зарегистр. 11-11-2011 | Отправлено: 23:35 28-08-2012 | Исправлено: Uido0Bdue, 23:51 28-08-2012
grbdv

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вывод в текстовый файл, потом в Ексель, к примеру, с разделителем ": "

Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 23:42 28-08-2012
XPEHOMETP

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. Переадресовать вывод в файл. Типа: "имя программы" (с необходимыми параметрами) > "имя файла".  
 
2. Запускать программу не в стандартном окне консоли, а в более продвинутой проге-заменителе, которая позволяет копировать консольный вывод в стандартный буфер Винды. Бесплатный вариант - Console2

Всего записей: 2505 | Зарегистр. 21-06-2005 | Отправлено: 23:50 28-08-2012
Uido0Bdue



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
XPEHOMETP
grbdv
 
Нужно как-то считать именно переменную, которая выдаёт "xdelta3-3.0.4-x86-32" [8.00..112 (%s)]

Всего записей: 4 | Зарегистр. 11-11-2011 | Отправлено: 00:00 29-08-2012 | Исправлено: Uido0Bdue, 00:02 29-08-2012
grbdv

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Uido0Bdue
п. 2.20.3. главы VIII Соглашения по использованию
Каждый раз вычитывать, что ты изменил в оригинальном посте?
 
А маны курить не пробовал? У нее даже API есть...

Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 00:11 29-08-2012
Uido0Bdue



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
grbdv
 
За изм. ссори...
Не силён в программировании С++, С (знаю что все исходники есть)
 
Если несложно объясни, как это можно сделать?
 

Всего записей: 4 | Зарегистр. 11-11-2011 | Отправлено: 00:26 29-08-2012
grbdv

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
За изм. ссори...  

Да ладно, сорри :) Это же в твоих интересах в первую очередь.
 

Цитата:
Если несложно объясни, как это можно сделать?  

Не-е :) Я совсем не намекал на то, что это в манах есть и надо просто найти.  
Просто я предположил, что вдруг ты не видел доки...  
 
Т.е. тебе надо не конченый результат проанализировать, а в процессе создания файла отчета считывать каждую строку? Так?

Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 00:35 29-08-2012
Uido0Bdue



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
grbdv
 
Скорее не строку, а сам адрес в памяти, который выдаёт эти значения, как то так...
Например как во всяких играх, где есть адрес "с патронами" и указатель указывающий на этот адрес.
Я прост незнаком с консольными программами, и не знаю как там всё устроено, если это очень сложно, тогда жаль  

Всего записей: 4 | Зарегистр. 11-11-2011 | Отправлено: 00:41 29-08-2012 | Исправлено: Uido0Bdue, 00:47 29-08-2012
grbdv

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Uido0Bdue
Не-е. Мне это не по зубам :(  
Спроси в топике по C++.

Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 00:47 29-08-2012
mex3

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
XPEHOMETP

Цитата:
Запускать программу не в стандартном окне консоли, а в более продвинутой проге-заменителе, которая позволяет копировать консольный вывод в стандартный буфер Винды. Бесплатный вариант - Console2

Хоть в данном случае это и не поможет, но рекомендую попробовать ConEmu
 
Uido0Bdue
Можно перенаправить ее вывод в файл, типа
xdelta3 ... > cmp.log
и анализировать последнюю строку в ней.
Хотя, мне не особо понятно, если нужно показать индикатор прогресса, значит должна быть какая-то программа, которая будет его "показывать". Тогда эта программа и должна смотреть в консоль или запускать утилиту с перенаправлением в пайп, из которого уже считывать данные.

Всего записей: 285 | Зарегистр. 28-05-2008 | Отправлено: 10:21 29-08-2012
grbdv

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mex3
Цитата:
и анализировать последнюю строку в ней.  

Посмотри на время анализа (если это оно, правый столбец) - иногда всего чуть больше 10 мсек. Т.е. надо перечитывать через 5 мсек, как минимум. Не получится... Да и коряво это.
 
Добавлено:
Он уже переехал в топик C++

Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 10:41 29-08-2012
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Общие » Флейм » Считать данные.


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru