実行に管理者権限が必要な.ps1ファイルを実行する方法
※右クリック→Powershellで実行ではエラーになってしまう。
実行ポリシーを変更する
Powershellを管理者権限で実行後Set-ExecutionPolicy 引数
#現在の実行ポリシーを確認
Get-ExecutionPolicy
#実行ポリシーを変更
Set-ExecutionPolicy RemoteSigned
スクリプトファイルを作成する
実行したい処理を記述したファイルと管理者権限でPowershellを起動してファイルを実行するスクリプトファイルを作成する。
以下実行例
実行したい処理(既存タスクのスケジュール変更)
Task_Edit.ps1
$trigger = New-ScheduledTaskTrigger -Once -At "2018/12/12 04:30:00"
Set-ScheduledTask -TaskPath "\" -TaskName "変更したいタスク名" -Trigger $trigger
管理者権限でPowershellを起動してTask_Edit.ps1を実行するスクリプトファイル
start_process.ps1
Start-Process powershell -ArgumentList (Convert-Path .\Task_Edit.ps1) -Verb runas
後はTask_Edit.ps1とstart_process.ps1を同一ディレクトリに配置してstart_process.ps1を右クリック→Powershellで実行を選択する。
実行ポリシーを変更したくない場合
スクリプト実行時のみポリシーを変更する
start_process.ps1
$file=(Convert-Path .\Task_Edit.ps1)
Start-Process powershell -ArgumentList "-NoProfile -ExecutionPolicy unrestricted $file" -Verb runas