7

Я пытаюсь запустить файл .vbs каждые пять минут.

Я пытаюсь сделать это с помощью планировщика задач Windows.

На вкладке « Actions » -> « New Action я выбираю файл ("D:\Documents\FC3 Savegames\FC3.vbs"), используя диалог открытия файла.

Я сделал все остальные настройки правильно.

Но всякий раз, когда задача начинается, она открывается каждый раз open with диалогом.

Однажды я выбираю Notepad чтобы открыть диалог. Затем из Блокнота открывается другое диалоговое окно с сообщением « Can not find D:\Documents\FC3.txt file. Do you want to create a new file с тремя кнопками Yes , No и Cancel

Помоги мне, что не так.
Я чувствую, что пробелы в пути к файлу вызывают проблемы.

Добавлено позже
Ну, я просто исправил это, установив путь к сокращению ("D:\Documents\FC3Sav ~ 1\FC3.vbs"). Но он по-прежнему открывает диалог "Открыть с помощью" каждый раз. Теперь у него есть две основные программы:"Продолжать использовать Microsoft Windows Script Host" и "Другая программа". Этот диалог не открывается, когда я запускаю файл VBS напрямую.

4 ответа4

5

Старый вопрос, но я тоже столкнулся с ним, и это помогло мне решить мою проблему, поэтому я решил, что поделюсь тем, что сработало для меня. Установка команды C:\Windows\System32\wscript.exe и передача пути к моему сценарию в качестве аргумента позволила ему работать как чудо, без каких-либо других изменений. Вот скриншот для справки:

Настройки для запланированных скриптов:

4

Вот что он говорит о Wscript.exe в файле справки, который у меня есть:

Чтобы запустить сценарии с помощью хоста скриптов на основе Windows (Wscript.exe) Вы можете запускать скрипты с хостом скриптов на основе Windows следующими способами:

  • Просматривая в Windows

    Перейдите к папке, содержащей скрипт, который вы хотите запустить, и дважды щелкните по нему. Файлы сценариев могут быть перечислены в «Моем компьютере», в проводнике Windows, в окне «Найти», в меню «Пуск» или на рабочем столе.

  • С помощью команды «Выполнить»

    Нажмите Пуск, а затем нажмите Выполнить. В поле Открыть введите имя исполняемого файла хоста Windows (Wscript.exe), затем пробел и полный путь к сценарию, который вы хотите запустить. Не забудьте указать расширение имени файла сценария. Нажмите OK, чтобы запустить скрипт.

  • Из окна командной строки

    В командной строке введите имя исполняемого файла хоста Windows (Wscript.exe), затем пробел и полный путь к сценарию, который вы хотите запустить. Не забудьте указать расширение имени файла сценария. Нажмите Enter, чтобы запустить скрипт.

Заметки

  • Сценарии Windows - это файлы со следующими расширениями имен файлов:.wsf, .vbs, .js.
  • Если дважды щелкнуть файл сценария, расширение которого не связано с Wscript.exe, появится диалоговое окно « Открыть с помощью ». Выберите Wscript.exe, затем выберите Всегда использовать эту программу, чтобы открыть этот тип файла. Это регистрирует Wscript.exe в качестве хоста сценария по умолчанию для файлов этого типа файлов.
  • Вы можете использовать диалоговое окно «Настройки хоста скриптов Windows», чтобы установить глобальные свойства скриптов для всех скриптов, которые запускает Wscript.exe на локальном компьютере.
  • Вы можете установить свойства для отдельных скриптов. См. Связанные темы для получения информации о том, как это сделать.
  • Вы также можете использовать Windows Script Host для создания файлов сценариев .wsf, с помощью которых вы можете вызывать несколько механизмов сценариев и выполнять несколько заданий, все из одного файла.

Вот что он говорит о Cscript.exe:

Использование командного сценария хоста (CScript.exe)

Cscript.exe - версия командной строки Windows Script Host, которая предоставляет параметры командной строки для настройки свойств сценария.

С Cscript.exe вы можете запускать сценарии, вводя имя файла сценария в командной строке. Как и Microsoft Internet Explorer, Windows Script Host служит контроллером совместимых с Windows Script обработчиков сценариев, но Windows Script Host имеет очень низкие требования к памяти. Windows Script Host идеально подходит как для интерактивных, так и для неинтерактивных сценариев, таких как сценарии входа в систему и административные сценарии.

Windows Script Host поддерживает скрипты, написанные на VBScript или JScript. При запуске сценария с рабочего стола или из командной строки узел сценария считывает и передает указанное содержимое файла сценария в зарегистрированный обработчик сценариев. Механизм сценариев использует расширения файлов (то есть .vbs для VBScript и .js для JScript) для идентификации сценария. В результате вам не нужно знать точный программный идентификатор (то есть ProgID) механизма сценариев. Хост сценария поддерживает отображение расширений сценария на программные идентификаторы и использует модель ассоциации Windows XP для запуска соответствующего механизма для данного сценария.

Обновить:

Вот файл реестра под названием «FixVBSFileAssociationsXP.reg», который исправит ассоциации файлов для вас в XP. Для Win 7 потребуется другой.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.reg]
@="regfile"

[HKEY_CLASSES_ROOT\.reg\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"

[HKEY_CLASSES_ROOT\regfile]
@="Registration Entries"
"EditFlags"=dword:00100000

[HKEY_CLASSES_ROOT\regfile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,72,00,65,00,67,00,65,00,64,00,69,00,74,00,2e,00,65,00,78,00,65,00,\
  2c,00,31,00,00,00

[HKEY_CLASSES_ROOT\regfile\shell]

[HKEY_CLASSES_ROOT\regfile\shell\edit]

[HKEY_CLASSES_ROOT\regfile\shell\edit\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
  54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\
  00

[HKEY_CLASSES_ROOT\regfile\shell\open]
@="Mer&ge"

[HKEY_CLASSES_ROOT\regfile\shell\open\command]
@="regedit.exe \"%1\""

[HKEY_CLASSES_ROOT\regfile\shell\print]

[HKEY_CLASSES_ROOT\regfile\shell\print\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
  54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,2f,00,70,00,20,\
  00,25,00,31,00,00,00

Вот версия под названием FixVBSFileAssociationsVista.reg для Vista и Window 7, которая также может работать на Windows 8, но использовать на свой страх и риск (сначала сделайте резервную копию реестра, если это возможно):

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.VBS]
@="VBSFile"

[HKEY_CLASSES_ROOT\.VBS\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"

[HKEY_CLASSES_ROOT\VBScript]
@="VB Script Language"

[HKEY_CLASSES_ROOT\VBScript\CLSID]
@="{B54F3741-5B07-11cf-A4B0-00AA004A55E8}"

[HKEY_CLASSES_ROOT\VBScript\OLEScript]

[HKEY_CLASSES_ROOT\VBSFile]
"FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\
  00,6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,\
  32,00,5c,00,77,00,73,00,68,00,65,00,78,00,74,00,2e,00,64,00,6c,00,6c,00,2c,\
  00,2d,00,34,00,38,00,30,00,32,00,00,00
@="VBScript Script File"

[HKEY_CLASSES_ROOT\VBSFile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,57,00,53,00,\
  63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,2c,00,32,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\ScriptEngine]
@="VBScript"

[HKEY_CLASSES_ROOT\VBSFile\ScriptHostEncode]
@="{85131631-480C-11D2-B1F9-00C04F86C324}"

[HKEY_CLASSES_ROOT\VBSFile\Shell]
@="Open"

[HKEY_CLASSES_ROOT\VBSFile\Shell\Edit]

[HKEY_CLASSES_ROOT\VBSFile\Shell\Edit\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,\
  6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,00,22,00,20,00,25,\
  00,31,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open]

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,57,00,\
  53,00,63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,22,00,20,00,22,\
  00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open2]
@=hex(2):4f,00,70,00,65,00,6e,00,20,00,26,00,77,00,69,00,74,00,68,00,20,00,43,\
  00,6f,00,6d,00,6d,00,61,00,6e,00,64,00,20,00,50,00,72,00,6f,00,6d,00,70,00,\
  74,00,00,00
"MUIVerb"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,\
  6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,\
  00,77,00,73,00,68,00,65,00,78,00,74,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,\
  34,00,35,00,31,00,31,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open2\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,43,00,\
  53,00,63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,22,00,20,00,22,\
  00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Print]

[HKEY_CLASSES_ROOT\VBSFile\Shell\Print\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,\
  6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,00,22,00,20,00,2f,\
  00,70,00,20,00,25,00,31,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\ShellEx]

[HKEY_CLASSES_ROOT\VBSFile\ShellEx\DropHandler]
@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"

[HKEY_CLASSES_ROOT\VBSFile\ShellEx\PropertySheetHandlers]

[HKEY_CLASSES_ROOT\VBSFile\ShellEx\PropertySheetHandlers\WSHProps]
@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"
3

У меня просто была такая же проблема. Оказалось, что Windows 8 не допускает пробелов и кавычек в именах файлов. В поле «Программа / сценарии» вместо

"D:\Documents\FC3Sav~1\FC3.vbs"

ты должен использовать

D:\Documents\FC3Sav~1\FC3.vbs

Таким образом, если вы удалите пробелы и кавычки из поля «Программа / скрипт», ваш запланированный скрипт будет работать нормально, не открывая диалоговое окно "Открыть с помощью".

2

В качестве программы выберите cscript.exe и в качестве параметра укажите файл VBS.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .