私は リモートデスクトップ接続 を使ってワークステーションに入りました。しかし、この環境では、スタートメニューの電源オプションを使用することはできません。シャットダウンまたは再起動するための代替方法が必要です。
コマンドラインからコンピュータの電源状態を制御する方法
shutdown
コマンドを使用する最も一般的な方法は次のとおりです。
shutdown -s
- シャットダウンします。shutdown -r
- 再起動します。shutdown -l
- ログオフします。shutdown -h
- 休止状態.
注: ユーザーが-h
は「help」を意味すると考える一般的な落とし穴があります(これは、他のすべてのコマンドラインプログラムでも同様です... shutdown.exe
は「休止状態」を意味します)。その後、shutdown -h
を実行し、誤ってコンピュータの電源を切ります。気を付けろ。
shutdown -i
- "対話モード"アクションを実行する代わりに、GUIダイアログを表示します。
shutdown -a
- 直前のシャットダウンコマンドを中止します。上記のコマンドは、これらの追加オプションと組み合わせることができます。
-f
- プログラムを強制終了します。シャットダウンプロセスが動かなくなるのを防ぎます。-t <seconds>
- シャットダウンまでの時間を設定します。すぐにシャットダウンするには-t 0
を使用してください。-c <message>
- シャットダウンメッセージを追加します。メッセージはイベントログに記録されます。-y
- すべてのシャットダウンクエリに対して "yes"の回答を強制します。
注: このオプションは公式文書には文書化されていません。 これらのStackOverflowユーザー によって発見されました。
私は他のいくつかの本当に良い答えもこれと一緒に言及されていることを確認したいです。ここではそれらは特定の順序ではありません。
-f
オプション from JosephStyonsrundll32
を使って VonC からリモートマシンを使っている場合は、 force リブートに-fオプションを追加することもできます。そうでないと、セッションが終了し、頑固なアプリケーションがシステムをハングさせる可能性があります。
すぐに再起動したい場合はいつでもこれを使用します。
shutdown -t 0 -r -f
「親切に時間を過ごす」という選択肢のために、これを使うことができます。
shutdown -t 30 -r
あなたがコメントで見ることができるように、-fはタイムアウトによって暗示されます。
リモートシャットダウンのための-m
オプションに言及した人はいません。
shutdown -r -f -m \\machinename
また:
-r
パラメータは再起動を引き起こします(物理的に起動するのは難しいかもしれないので、通常これはリモートマシン上で必要なものです)。-f
パラメータオプションは再起動を強制します。オリジナルの答え:2008年10月
あなたはまたすべてを手に入れました " セリエ:rundll32.exe Shell32.dll
"
(下記のアップデートをご覧ください)
rundll32.exe user.exe,**ExitWindows**
[Windowsの高速シャットダウン]rundll32.exe user.exe,**ExitWindowsExec**
[Windowsを再起動してください]
rundll32.exe Shell32.dll,SHExitWindowsEx n
ここでn
は:を表します。
LOGOFF
SHUTDOWN
REBOOT
FORCE
POWEROFF
(組み合わせることができます - > 6 = 2 + 4 FORCE REBOOT
)
この目的で
rundll32.exe
を使用しないでください。あなたがコマンドラインで渡した関数が非常に特定のメソッドシグネチャを持っていることを期待します - それはExitWindows
のメソッドシグネチャと一致しません。
Raymond CHEN は書きました:
rundll32.exe
によって呼び出される関数に必要な関数シグネチャは次のとおりです。
void CALLBACK ExitWindowsEx(HWND hwnd, HINSTANCE hinst,
LPSTR pszCmdLine, int nCmdShow);
rundll32
やrundll32
のようにuser32 LockWorkStation
によって呼び出されるようには設計されていないランダム関数を呼び出すためにuser32 ExitWindowsEx
を使うことを人々が止めているわけではありません。
(おっとっと)
ExitWindowsExの実際の関数シグネチャは次のとおりです。
BOOL WINAPI ExitWindowsEx(UINT uFlags, DWORD dwReserved);
そしてそれを明瞭にするために:
Rundll32
はWindows 95からの残り物です、そしてそれは現代の工学ガイドラインの多くに違反するので少なくともWindows Vista以来それが非難されました。
もう一つのちょっとしたコツ:バッチファイルのルートを移動するとき、誤って実行した場合に備えて、それを中止できるようにしたいと思います。そのため、バッチファイルはシャットダウンを呼び出しますが、後でコマンドプロンプトであなたを残します。
@echo off
echo Shutting down in 10 seconds. Please type "shutdown /a" to abort.
cmd.exe /K shutdown /f /t 10 /r
さらに、それはタイマーを使っているので、 The Oregon Trail で狩るときと同じようなスリルを得ることができます。
ただし、スタートメニューのShutdownがDisconnect Sessionまたはのようなものに置き換えられます。それは、「Windowsセキュリティ」と呼ばれるものもあるはずです。 Ctrl + Alt + End オーウェンが指摘したように。
あなたはおそらくこれを知っているでしょうが、念のために、 "Run"ボックスにshutdown -r
(あるいは好きなコマンド)をタイプしてenterを押すほうがずっと簡単です。
バッチファイルをあちこちに置いておくことを節約できます。
私はパーティーに遅刻しました、しかしこの答えをまだ見ていませんでした。バッチファイルを使用したくない場合、またはコマンドを入力したくない場合。あなただけのデスクトップにフォーカスを設定してから使用することができます Alt + F4。
何をしたいのかを尋ねるウィンドウが表示されたら、シャットダウンまたは再起動を選択します。
スクリーンショットとビデオについてさえも参照してください。 https://tinkertry.com/how-to-shutdown-or-restart-windows-over-rdp