irishmann
@irishmann
Научись пользоваться дебаггером

Как игнорируя диалог, перейти к следующей команде?

Формирую и выполняю батник, затем анализирую выходные файлы. Пример кода:
C:\someprogram.exe -someindex somefile.txt > some_resultfile.txt
C:\someprogram.exe -someindex somefile_2.txt > some_resultfile_2.txt
...
C:\someprogram.exe -someindex somefile_n.txt > some_resultfile_n.txt

Таких команд может быть много.
Во время выполнения некоторые из них могут вывести ошибку и вопрос, требующий ответа. Ответ дать я не могу. Батник стопорится, запустившая его программа продолжает ожидать выполнения.

Каким образом мне составить батник, чтобы игнорируя диалог, начиналась выполняться следующая команда?
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
@res2001
Developer, ex-admin
someprogram.exe - консольная?
Если ошибки и вопросы выводит в консоль, а ответа ждет на stdin, то ответы на вопросы можно записать в текстовый файл (например answer.txt) и перенаправлять его вместо стандартного входа:
someprogram.exe ... <answer.txt

Если же someprogram.exe графическая утилита и вопросы возникают в своих окнах, то тут гораздо сложнее, но то же выход есть - нужно использовать утилиты типа nircmd или autoit, чтоб с их помощью в появляющиеся окна вводить информацию или нажимать какие-то кнопки. Эти утилиты умеют эмулировать действия пользователя, все это делается соответствующими скриптами.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
autoit поможет - у них даже IDE есть
autoit-script.ru/index.php
Ответ написан
Комментировать
@Olgeir
Краткий ответ - никак. Если программа не позволяет пропускать диалоги то батник не сможет ничего сделать.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
17 апр. 2024, в 00:31
1000 руб./за проект
17 апр. 2024, в 00:13
800 руб./за проект
17 апр. 2024, в 00:06
240000 руб./за проект