Обновление 2: Я только что понял, что вы можете запустить IE напрямую, не используя команду start
:
@echo off
rem You can use %SCRIPTDIR% to refer to the file to load, if you like
rem Note that %SCRIPTDIR% will contain a trailing slash!
set SCRIPTDIR=%~dp0
echo Testing this script...
C:\PROGRA~1\INTERN~1\iexplore.exe %SCRIPTDIR%foo.html
echo Continuing the script...
Этот пример работает для меня (32-разрядная версия Windows XP) и ждет, пока я закрою окно браузера, чтобы продолжить.
Обновление: Вот обновленный блок кода, который запускает Internet Explorer. Обратите внимание, что я использую короткий путь к исполняемому файлу iexplore.exe
и указываю полный путь к файлу для загрузки:
@echo off
echo Testing this script...
start /wait /min cmd /C "C:\PROGRA~1\INTERN~1\iexplore.exe C:\foo.html"
echo Continuing the script...
Начальный ответ: Вы упоминали, что пытались выполнить команду start /wait
, но как вы ее явно написали? Следующий пример пакетного сценария работает для меня в Windows 7 x64:
@echo off
echo Testing this script...
start /wait /min cmd /C "%windir%\system32\notepad.exe foo.html"
echo Continuing the script...
В этом примере сценарий не продолжает выполнение, пока пользователь не закроет приложение «Блокнот». Единственным недостатком здесь является то, что появляется дополнительное окно команд, но, используя параметр /min
, мы можем запустить его свернутым.