![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
Vovkin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 10.1.2007 Репутация: нет Всего: нет |
Есть консольная программка. При запуске ждет ввода строки с клавиатуры
и при нажатии ввод выполняет какие-то действия и закрывается. Решил поуправлять ею дистанционно через pipe. Это хорошо описано в инете. Так вот. При таком способе (через pipe) программа не выводит запрос и никак не реагирует на запись строки в стандартный pipe. С другими программами (в том числе cmd.exe) моя управлялка отлично работает, а с этой нет. Стоит перенаправить ввод и он пропадает вовсе. В чём может быть причина. Исходником этой консольной программы нет. Она кем-то когда то писалась. Может кто сталкивался с такими консольками? Может она как то хитро написана. И самое интересное, что команды вывода и ввода из файла работают. Т.е. если я перенаправляю ввод-вывод, то не работает. А если прямо при вызове делаю > file.txt или < file.txt, то в файлах отражаются результаты и данные из файла тоже берутся и подставляются как при вводе. Это сообщение отредактировал(а) Vovkin - 8.9.2007, 00:50 |
|||
|
||||
Tectoder |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 202 Регистрация: 13.3.2007 Репутация: 7 Всего: 8 |
На самом деле и консоль, и файл, и пайп отличаются друг от друга.
Если твой программа(консольная) этого не учитывает, то у нее будут трабблы. Попробуй писать в пайп всю информацию перед передачей, авось поможет Это сообщение отредактировал(а) Tectoder - 8.9.2007, 09:42 |
|||
|
||||
Vovkin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 10.1.2007 Репутация: нет Всего: нет |
А как например из моей программы запустить консольную (DOS) программу и там
сымитировать нажатия клавишь клавиатуры? Без перенаправления ввода-вывода. Это сообщение отредактировал(а) Vovkin - 8.9.2007, 23:29 |
|||
|
||||
Tectoder |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 202 Регистрация: 13.3.2007 Репутация: 7 Всего: 8 |
эмм, кажеться никак
![]() |
|||
|
||||
Vovkin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 10.1.2007 Репутация: нет Всего: нет |
Программка оказалась очень хитрая.
Она даже не реагирует на SendMessage в своё консольное окно. Если какой-нить cmd.exe запустить, то всё работает. Что-то мне говорит, что это какая-то чисто досовская программа, которая вообще на винду чихает. |
|||
|
||||
Tectoder |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 202 Регистрация: 13.3.2007 Репутация: 7 Всего: 8 |
Консольные окна не реагируют на SendMessage. Потому что лежат в другой станции
|
|||
|
||||
W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 12 Всего: 121 |
При запуске программы в процессах появляется ntvdm.exe?
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
Vovkin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 10.1.2007 Репутация: нет Всего: нет |
Даю Я как раз хотел написать, что выяснил, что прога запускается под ntvdm. Есть какие-нить варианты борьбы с этой прогой? |
|||
|
||||
W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 12 Всего: 121 |
Стандартных способов нет. Из прочего, реверсить виртуальную машину, смотреть как она выводит на консоль и делать перехват этого функционала в процессе ntvdm.exe.
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
Vovkin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 10.1.2007 Репутация: нет Всего: нет |
А может есть возможность перенаправить ввод вывод ntvdm? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |