コンピューターの状態を変更する
このサンプルは Windows プラットフォームにのみ適用されます。
PowerShell でコンピューターをリセットするには、標準のコマンド ライン ツール、WMI、または CIM クラスのいずれかを使用します。 PowerShell は単にツールを実行するために使用するだけですが、PowerShell でコンピューターの電力状態を変更する手順には、PowerShell での外部ツールの使用方法に関する重要な詳細も含まれています。
コンピューターのロック
一般的に入手可能なツールを使ってコンピューターを直接ロックする唯一の方法は、user32.dll の LockWorkstation() 関数を呼び出すことです。
rundll32.exe user32.dll,LockWorkStation
このコマンドを実行すると、ワークステーションが直ちにロックされます。 user32.dll
の LockWorkStation
関数を呼び出すために rundll32.exe
が使われます。
Windows XP の場合など、ユーザーの簡易切り替えが有効なときにワークステーションをロックすると、コンピューターでは、現在のユーザーのスクリーン セーバーが起動するのではなく、ユーザーのログオン画面が表示されます。
ターミナル サーバーで特定のセッションをシャットダウンするには、tsshutdn.exe コマンド ライン ツールを使用します。
現在のセッションからのログオフ
ローカル システム上でセッションからログオフする場合、いくつかの方法が考えられます。 最も簡単な方法は、リモート デスクトップ/ターミナル サービスのコマンドライン ツールである logoff.exe を使用することです (詳細については、PowerShell プロンプトで「logoff /?
」と入力してください)。 現在アクティブなセッションからログオフするには、引数を付けずに「logoff
」と入力します。
また、shutdown.exe ツールにログオフのオプションを指定することもできます。
shutdown.exe -l
他に、WMI を使用するというオプションがあります。 Win32_OperatingSystem クラスには、Shutdown メソッドがあります。 このメソッドに 0 フラグを指定して呼び出すと、ログオフが開始されます。
詳細については、Win32_OperatingSystem クラスの Shutdown メソッドに関する記事を参照してください。
Get-CimInstance -ClassName Win32_OperatingSystem | Invoke-CimMethod -MethodName Shutdown
コンピューターのシャットダウンまたは再起動
コンピューターのシャットダウンと再起動は似たタスクです。 ほとんどのコマンドライン ツールは両方のアクションをサポートしています。 Windows には、コンピューターの再起動に使うコマンドライン ツールが 2 つあります。 tsshutdn.exe
または shutdown.exe
に適切な引数を指定して実行することです。 詳しい使用方法は、tsshutdn.exe /?
または shutdown.exe /?
で参照できます。
シャットダウン操作と再起動操作は、PowerShell から直接実行することもできます。
コンピューターをシャットダウンするには、Stop-Computer
コマンドを使います。
Stop-Computer
オペレーティング システムを再起動するには、Restart-Computer コマンドを使用します
Restart-Computer
コンピューターを強制的に直ちに再起動するには、-Force パラメーターを使用します。
Restart-Computer -Force
PowerShell