20

Когда я использую планировщик задач с графическим интерфейсом , я могу легко установить флажок « Запускать с наивысшими привилегиями ».

Однако я не нашел такой опции и в командной строке SchTasks .

Есть ли способ сделать это из командной строки?

3 ответа3

25

Это то, что делает параметр /RL .

Пример: SCHTASKS /Create /TN "New Task" /SC HOURLY /TR blah.exe /RU username /RP password /RL HIGHEST

5

/RL level Устанавливает уровень выполнения для задания. Допустимые значения: LIMITED и HIGHEST . По умолчанию установлено значение LIMITED .

3

Чтобы добавить ответ @ Skatterbrainz: Если вы запустите ту же команду / скрипт в XP / 2003, указав / RL, SchTasks.exe не сможет создать задачу.

Вы можете создать скрипт, который будет работать на XP, 2003, Vista, 2008, 7, 2008R2 и т.д., Вытащив версию ОС из реестра. Пакетный скрипт может выглядеть так:

setlocal
set runlevel=

REM Get OS version from registry
for /f "tokens=2*" %%i in ('reg.exe query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "CurrentVersion"') do set os_ver=%%j

REM Set run level (for Vista or later - version 6)
if /i "%os_ver:~,1%" GEQ "6" set runlevel=/rl HIGHEST

REM Execute SchTasks.exe
schtasks.exe /create /tn "Task Name" /sc ONSTART /TR "C:\Scripts\somescript.cmd" /ru SYSTEM %runlevel%

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