![]() |
При передачи данных из цикла For в подпрограмму происходит 2х кратный вызов последней
Добрый день, в процессе написания скрипта для удаления ПО столкнулся с такой проблемой: при передачи данных из цикла For в подпрограмму происходит 2х кратный вызов последней и как следствие остается 2 записи в логах.
Код:
cls Код:
Adobe Acrobat Reader DC - Russian 1. Почему так происходит. 2. Как это исправить (обойти). |
Перед :De1 вставить строку GoTo :Eof либо Exit, если надо, с ключом.
(1) Инструкции обрабатываются последовательно. :De1 это метка сначала в for вы вызываете кусок кода по метке :De1 как процедуру. После выполнения For переходим к выполнению следующей инструкции. Метка она и в Африке метка и никак не влияет на выполнение программы, если на неё не ссылаться. Поэтому при окончании кода головной части батника отделите её от процедуры GoTo :Eof либо Exit И вообще, каждую процедуру, если их несколько, надо отделять от последующей, GoTo :Eof либо Exit, так как см. (1) Полезно еще прочитать хелп (в командной строке Call /?) |
Для надёжного разбора вывода команды "WMIC" лучше использовать такой код:
Код:
@echo off |
Время: 01:54. |
Время: 01:54.
© OSzone.net 2001-