Мой пакетный файл продолжает цикл, но почему?
Я написал командный файл из программы VB.NET, которую я создаю.
Когда я дважды щелкаю по файлу в Windows XP, он вызывает командную строку и появляется снова и снова.
Мой пакетный файл выглядит следующим образом
REG ADD "HKCU\Software\Classes\*\shell\Open Folder In Rename" /ve /t REG_SZ /d "Open With Rename" /f
REG ADD "HKCU\Software\Classes\*\shell\Open Folder In Rename\Command" /ve /t REG_SZ /d "P:\Misc\Rename v2.0\Rename v2.0\bin\Debug\Rename v2.0.exe ""%1""" /f
EXIT
Я не могу понять, что я сделал неправильно, но если я открою командную строку и запустил ее оттуда, она будет выполняться один раз.
Любая помощь будет с благодарностью оценена!
Спасибо
Ответы
Ответ 1
В окнах, если у вас есть исполняемый файл командной строки с тем же именем имени bat bat, а командный файл содержит эту команду, пакетный файл продолжает цикл.
Пример:
- Создайте файл
net.bat
на рабочем столе.
- В вашем файле напишите этот текст:
net
Дважды щелкните файл, и он будет продолжать цикл.
Причиной такого поведения является порядок выполнения команд. Команда, которую вы хотите выполнить, находится в одной из папок на вашем пути. Но командный файл находится в вашей текущей папке, поэтому сначала он выполняется, вызывая цикл.
Ответ 2
Я переименовал командный файл в TEST.bat, и это, по-видимому, устранило проблему.
Спасибо за помощь!
Ответ 3
убедитесь, что:
-
ваш script не называется как встроенная команда или программа
-
убедитесь, что сценарии ваших вызовов script не называются как встроенная команда или программа
например. если ваш script вызывается: reeeeeboooot.bat, который вызывает shutdown -t 10 -r, но в SAME FOLDER находится shutdown.cmd
reeeeeboooot.bat действительно вызовет shutdown.cmd INSTEAD команды сборки.
иногда самые простые вещи сложнее всего. (довольно часто на самом деле: -D)