View previous topic :: View next topic |
Author |
Message |
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Tue Dec 18, 2012 16:15 Post subject: |
|
|
Flasher
А хоть что-то на выходе запускается? Калькулятор, например, или блокнот.
MVV
Для корректного закрытия окна процесса и для убиения дерева процессов. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Dec 18, 2012 17:07 Post subject: |
|
|
Loopback
Не работают именно параметры. Просто так exe-шники я уже проверял, там порядок. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Tue Dec 18, 2012 17:53 Post subject: |
|
|
Flasher
А попробуй еще одну версию по той же ссылке, там более подробная информация выводится. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Dec 18, 2012 19:23 Post subject: |
|
|
Loopback
Debug помог лучше разобраться. Оказывается, если есть ошибки в синтаксисе команд, расположенных над требуемой, то данная команда не отработает как надо. Надо бы этот подход поменять. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Wed Dec 19, 2012 10:10 Post subject: |
|
|
Flasher
Менять в какую сторону?
Сейчас скрипт прекращает работу, если в синтаксисе команды ошибка, и мне такой подход представляется единственно правильным. Однако, плагин должен об этой ошибке сообщать.
Какая была команда с ошибочным синтаксисом? |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Dec 19, 2012 11:03 Post subject: |
|
|
Loopback
Нужно сделать не так, чтобы скрипт прекращал работу на любой неправильной команде, а не трогал только те команды, в которых есть ошибка.
А сейчас плагин не сообщает ни о каких ошибках, если не брать debug, в котором и понять, в чём именно ошибка, без танцев с бубном нельзя. Например, есть команды которые работают с синтаксисом, где одинарные и двойные кавычки чередуются ('exe "Param'). _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Wed Dec 19, 2012 13:12 Post subject: |
|
|
Flasher wrote: | Нужно сделать не так, чтобы скрипт прекращал работу на любой неправильной команде, а не трогал только те команды, в которых есть ошибка. |
Перечитал несколько раз, но так и не понял.
Flasher wrote: | А сейчас плагин не сообщает ни о каких ошибках |
Так-то уж ни о каких? А двадцать с лишним строк сообщений об ошибках - они для красоты сделаны?
Flasher wrote: | Например, есть команды которые работают с синтаксисом, где одинарные и двойные кавычки чередуются ('exe "Param'). |
Парсер может точно определить две ошибки в расстановке кавычек - незакрытые кавычки и незадвоенные кавычки в строке, . Естественно, при формально правильной расстановке кавычек он не сможет понять, например, что нарушена логика параметров, передаваемых ShellExec. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Dec 19, 2012 13:51 Post subject: |
|
|
Loopback wrote: | Перечитал несколько раз, но так и не понял. | Т.е. все команды с правильным синтаксисом должны отработать в любом случае.
Loopback wrote: | Так-то уж ни о каких? А двадцать с лишним строк сообщений об ошибках - они для красоты сделаны? | Я непосредственно о ShellExec пишу. Никаких ошибок не появляется, если команда не отрабатывает, как в приведённом выше примере. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Wed Dec 19, 2012 14:18 Post subject: |
|
|
Flasher wrote: | Т.е. все команды с правильным синтаксисом должны отработать в любом случае. |
Добавлю - с формально правильным синтаксисом.
Они так и отрабатывают. Если нет - пиши, с какими проблемы, буду проверять.
Flasher wrote: | Я непосредственно о ShellExec пишу. Никаких ошибок не появляется, если команда не отрабатывает, как в приведённом выше примере. |
Можно добавить сообщение об ошибке, если процесс не запустился.
Но вот, если я правильно помню, с тем же cmd.exe это не прокатит. Поскольку cmd может запуститься, но не отработать команду. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Dec 19, 2012 15:26 Post subject: |
|
|
Loopback wrote: | Они так и отрабатывают. | Ты же пишешь:
Loopback wrote: | Сейчас скрипт прекращает работу, если в синтаксисе команды ошибка | У меня так и происходит. Последующие команды не отрабатывают.
Loopback wrote: | Поскольку cmd может запуститься, но не отработать команду. | Не проверял (там ключ скрытия), другие программы запускал без параметров. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Wed Dec 19, 2012 15:38 Post subject: |
|
|
Flasher wrote: | Ты же пишешь: |
Я не вижу противоречия. Если ошибка синтаксиса - скрипт останавливается. Если формальных ошибок нет - выполняет команду.
А что ты предлагаешь? Продолжать выполнять скрипт даже после того, как в одной из команд обнаружилась ошибка? |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Dec 19, 2012 15:52 Post subject: |
|
|
Ну, да. Ведь это отдельные команды, не зависящие друг от друга (хотя бы ShellExec). _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Wed Dec 19, 2012 16:02 Post subject: |
|
|
Flasher wrote: | Ну, да. Ведь это отдельные команды, не зависящие друг от друга. |
Как это не зависят? Например, что-то может зависеть от IniRead, Set, SetEnv, LoadLibrary.
И потом, если есть ошибка - плагин все равно остановится и сообщит об этом. Какой смысл продолжать выполнение? Надо просто исправить ошибку. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Dec 19, 2012 16:09 Post subject: |
|
|
Loopback
Это если есть сообщение. А если нет? Поэтому про ShellExec и написал. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Loopback
Joined: 07 Sep 2009 Posts: 1274
|
(Separately) Posted: Thu Dec 20, 2012 10:52 Post subject: |
|
|
Flasher
Ну, кажется причина ясна. Сообщения об ошибках появляются при запуске, но их нет при выходе. Причина - при выходе Тотал уничтожает свое окно (родительское для сообщений) раньше, чем выполняется скрипт завершения.
Попробуй тестовую версию по той же ссылке. Теперь сообщения об ошибках должны появляться в любом случае. Разумеется, при условии что ошибка входит в число тех, которые выявляются плагином. |
|
Back to top |
|
|
|