[〜#〜] gui [〜#〜]タスクスケジューラを使用すると、「最高の権限で実行 "チェックボックス。
SchTasksコマンドラインにもそのようなオプションはありませんでした。
コマンドラインからそれを行う方法はありますか?
これが/ RLオプションの機能です。
例:SCHTASKS /Create /TN "New Task" /SC HOURLY /TR blah.exe /RU username /RP password /RL HIGHEST
/RL level
ジョブの実行レベルを設定します。有効な値はLIMITED
およびHIGHEST
です。デフォルトはLIMITED
です。
@Skatterbrainzの回答に追加するには:XP/2003で同じコマンド/スクリプトを実行し、/ RLを指定すると、SchTasks.exeはタスクの作成に失敗します。
レジストリからOSバージョンを取得することで、XP、2003、Vista、2008、7、2008R2などで動作するスクリプトを作成できます。バッチスクリプトは次のようになります。
setlocal set runlevel = REMレジストリからOSバージョンを取得 /f "tokens = 2 *" %% i in( ' reg.exeクエリ "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion"/v "CurrentVersion" ')do set os_ver = %% j REM実行レベルを設定(Vista以降の場合-バージョン6) if/i "%os_ver:〜、1%" GEQ "6" set runlevel =/rl HIGHEST REM Execute SchTasks.exe schtasks.exe/create/tn "タスク名"/sc ONSTART/TR "C:\ Scripts\somescript.cmd"/ru SYSTEM%runlevel%