ソフマップ・ドットコム

Windows Server での仮想環境( Windows Server 2012 と SCVMM )での検証や勉強した事を書き綴る技術色の強いブログです。

コンテキストメニューにシャットダウンメニューを表示する方法。


シャットダウン項目を追加する右の画像のコンテキストメニューにシャットダウンと再起動の項目を表示させることが出来れば、素早くシャットダウン・再起動が行える環境が作れます。

コンテキストメニューのカスタマイズは前回の記事で、ガジェットメニューを削除する( Windows 7 環境 )でも解説したように、レジストリの操作を行います。毎回、言うのもあれですが、一応、お決まりの文言を入れておきます。

※ この記事で紹介する方法はレジストリを操作します。レジストリの編集は誤った操作をすると、深刻なエラーが発生しシステムに異常をもたらす可能性がありますので、自己責任でお願いします。また、万が一のために、バックアップを取っておくことをお勧めします。

動作の確認は、Windwos 7, Windows 8, Windows Server 2008 R2, Windows Server 2012 で確認済みです。

では、早速解説します。
ファイル名を指定して実行からレジストリエディタを起動させます。レジストリエディタを起動するには、ファイル名を指定して実行 regedit と入力。
レジストリエディタが起動したら、HKEY_CLASSES_ROOT\DesktopBackground\Shell キーを展開します。展開後、Shell キーで右クリックをして、新規キーを作成します。

新しいレジストリキーを作成

キーの名前は [ PC_ShutDown ] と名前を付けます。

名前は PC_ShutDown と名前を付けます。

次に、右ペインで右クリックをして新規を選択して、文字列値を選択します。

文字列値を選択

名前には [ icon ] と付けます。

名前には icon と付ける

出来上がったキーをダブルクリックすると以下の様なウインドウが表示されますので、値のデータに [ shell32.dll,-28 ] と入力して OK ボタンをクリックします。
ちなみに、shell32.dll,-28 とは、シャットダウンのアイコンが含まれる Shell32.dll というファイルから該当するアイコンを呼び出しているという意味です。

値を入力する

次に、さっきと同じように、文字列値を作成します。

再度、文字列値を作成する

名前を [ Position ] と付けます。

名前を Position と付ける

同じように、出来上がったキーをダブルクリックすると、文字列の編集ウインドウが表示されるので、値のデータの欄に、Button と入力します。

値のデータに Button と入力

次に、もう一度、文字列値を作成します。

文字列値を作成

名前には [ MUIVerb ] と付けます。

名前に MUIVerb と付けます

出来上がったキーをダブルクリックして、値のデータに [ シャットダウン(&U) ] と入力します。

シャットダウン(&U)

次は、HKEY_CLASSES_ROOT\DesktopBackground\Shell\PC_ShutDown を展開し、右クリックから新規 → キーを選択して新しいレジストリキーを作成します。

新しいキーに

キーを作成したら、名前を command と名付けます。

キーの名前は command と名付けます。

出来上がった command キーをクリックして、右ペインに表示される、既定の値右クリックをして修正を選択します。

修正を選択する

値のデータに以下のコマンドラインを入力します。

shutdown.exe -s -t 00 -f

入力後、OK をクリックする

入力が完了したら、以下の様に既定のデータの値が shutdown.exe -s -t 00 -f と表示されています。

値のデータに shutdown.exe -s -t 00 -f が表示されている

これで、コンテキストメニューにシャットダウンメニューを追加できました。
次に、再起動メニューを追加します。基本的には、先ほどとやり方は同じなので、戸惑うこともないと思います。

HKEY_CLASSES_ROOT\DesktopBackground\Shell キーを展開して、右クリックから新規 → キーを選択します。

新規レジストリキーを作成

選択し、新しいレジストリキーを作成したら、名前を [ PC_Restart ] と付けます。

名前を PC_Restart とします。

HKEY_CLASSES_ROOT\DesktopBackground\Shell\PC_Restart を展開して、PC_Restart を選択したまま、右クリックをして、新規 → 文字列値を選択します。

文字列値を作成

名前は icon とします。

名前を icon とする

出来た値をダブルクリックして、文字列を編集します。
値のデータの欄に、shell32.dll,-290 と入力して OK をクリックします。

値のデータを shell32.dll,-290 とする

次は、さっきと同じように、文字列値を作成します。

文字列値を作成

名前は Position とします。

名前は position とします

出来た値をダブルクリックして、文字列を編集します。
値のデータの欄に、Bottom と入力します。

値を Bottom と入力する

同じように、文字列値を作成します。

文字列値を作成

名前を MUIVerb とします。

値に MUIVerb と入力

MUIVerb をダブルクリックして、文字列の編集を行います。値のデータに [ 再起動(&R) ] と入力します。

再起動(&R) と入力する

PC_Restart キーを右クリックして、新規 → キーを選択します。

新しいレジストリキーを作成

新しいレジストリキーの名前は command とします。

名前を command とします

出来上がった command キーを選択した状態で、右ペインにある規定を右クリックして修正を選択します。
文字列の編集で以下のコマンドを入力します。

shutdown.exe -r -t 00 -f

値に shutdown.exe -r -t 00 -f と入力

既定のデータの値が shutdown.exe -r -t 00 -f になっているのを確認します。

shutdown.exe -r -t 00 -f になっているかを確認

これで、シャットダウンメニューと再起動メニューをコンテキストメニューに追加する事ができました。

シャットダウンと再起動のメニューがある

これで設定は完了ですが、こんな面倒なことやりたくないわ!って方は、レジストリキーを用意しましたので、それをダブルクリックする事で、レジストリに追加する事ができます。ダウンロードは以下のリンクからお願いします。