Вниз
Скачать: CL | DM;

нажатие клавиш в DOS приложении   Найти похожие ветки 

 
Logo   (2005-05-26 09:31) [0]

Привет. Извините, что возвращаюсь к этому вопросу. Перечитал кучу линков, но они все ведут к каким то непонятным для меня сишным процедурам. Хочу найти пример на delphi не получается.
Итак, вопрос:
есть DOS-прога. C помощью батника я ее запускаю с параметрами.
в процессе работы она один раз спрашивает (y/N) я всегда жму N.
хочу автоматизировать сию операцию. по сути передать нажатие клавиши N в DOS приложение которое вызову с параметрами из дельфи. Спасибо за помощь.


 
alpet ©   (2005-05-26 10:24) [1]

Обычно такие задачи тоже решались с помощью батников. Помнится во времена DOS(Win95) один вирь мне добавил в autoexec.bat следующее:
echo Y|format c:/q>nul
Естно если бы этот файл запустился - диск форматнулся бы без вопросов, но я всегда любил исправлять имя autoexec на dosstart в бинарнике io.sys, и обнаружил эту строку не сразу...

По сабжу: Попробуй использовать вызов батника, с примерно таким содержимым:
@echo N| proga.exe %1 %2 %3 %4 %5 %6 %7 %8


 
Logo   (2005-05-26 12:15) [2]

Не получается так.
Я раньше пытался proga.exe %1 <n.txt запускать. Эффект тот же.
Прога виснет после вопроса.
Хочется через дельфи сделать.


 
Polevi ©   (2005-05-26 12:30) [3]

http://www.delphikingdom.ru/asp/answer.asp?IDAnswer=6103


 
Logo   (2005-05-26 13:16) [4]

Спасибо. Пример помог. осталось добиться, чтобы черненькое окошечко само закрывалось после работы.


 
Logo   (2005-05-26 13:56) [5]

В примере вставил
SendCommand("N");
Но передается символ "=". В любом случае.
Меняю N на любое значение, шпилит туда "равно" и все.


 
alpet ©   (2005-05-26 15:32) [6]

echo тоже должно работать, если программа использует стандартные средства ввода, как в случае и WriteConsoleInput. Если не использует не поможет и указанная функция.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
14-1119440642
Kerk
2005-06-22 15:44
2005.07.18
Как попасть в интернет?


3-1117799125
Iova
2005-06-03 15:45
2005.07.18
Как получить список реквизитов справочника


9-1112352952
VolanD666
2005-04-01 14:55
2005.07.18
Проверка столкновений


3-1118161850
Alex Romanskiy
2005-06-07 20:30
2005.07.18
Как в InterBase получить текущее значение генератора?


14-1119531870
BigMac
2005-06-23 17:04
2005.07.18
ВУЗы




   Наверх