Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Xaos-biker, код:
Код: Выделить весь код
strFile = "win64.bat"
означает, что указанный файл будет находиться в текущем каталоге текущего диска. Не в каталоге, в котором находится скрипт, а именно в текущем. Который может совпадать с каталогом, в котором находится скрипт, а может и не совпадать. Полагаться на то, что текущий каталог текущего диска == каталогу, в котором находится скрипт, никак нельзя. Указав вместо:
Код: Выделить весь код
WScript.Echo "Can't find file [" & strFile & "]."
следующий код:
Код: Выделить весь код
WScript.Echo "Can't find file [" & objFSO.GetAbsolutePathName(strFile) & "]."
Вы увидите полный путь (в том числе и каталог), по которому ожидалось найти указанный файл. Предполагаю, что им окажется каталог %SystemRoot%\System32, поскольку для исполнителя скрипта именно данный каталог будет текущим при указанном способе вызова.

Что делать?

Например, указывать полный путь к файлу win64.bat. Задавать текущий каталог при вызове. Менять в самом скрипте. И тому подобное. Выбирайте сами — я не знаю содержимого Вашего win64.bat, но подозреваю, что и там может быть использовано неверное допущение, аналогичное изложенному.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:17, 30-06-2017 | #40