Windows8で終了オプションダイアログを呼び出すスクリプトを作る

終了オプションダイアログと言われると何か分からないかと思いますが、以下の様な表示のことです。

終了オプションダイアログ 終了オプションダイアログ XP
▲左:Windows8のダイアログ / 右:XPのダイアログ

この表示、XPならばシャットダウンをしようとすればよくでてきましたが、Vista以降はデスクトップ画面で「Alt」+「F4」キーを同時押ししないと見かけなくなりました。スタートメニューや、チャームバーからすべて選択できるようになったからですね。

Vista や 7 はスタートメニューからシャットダウンやログオフが指定できますが、Windows8以降はスタートメニューもなく操作しづらいところがあります。

そこで、このダイアログを出すスクリプトを作り、タスクバーへ登録する方法を紹介します。
タスクバーへ登録しておけばいつでもワンクリックで終了オプションダイアログを呼び出せるようになるので、操作性が向上します。

タスクバー ◀ここに登録してみましょう。


終了オプションダイアログを出すスクリプトを作る

それでは、まず終了オプションダイアログを出すスクリプトを作ります。
因みに、タイトルはWindows8となっていますが、別にVistaとかでも可能です。

  1. メモ帳などを起動してテキストファイルを作成します。

    テキストには下記のように記述してください。(コピーでOKです)

    dim objShell
    set objShell = CreateObject("shell.application")
    objshell.ShutdownWindows 
    set objShell = nothing

    VBScript コードを書いています。WindowsのShellオブジェクト (ShellApplication)を呼び出して「ShutdownWindows」を実行します。これで終了オプションダイアログを呼び出します。

    ※「dim objShell」と「set objShell = nothing」は別に無くても実行できますが、きっちり処理の開始からメモリ解放までを書いたほうがいいような気がするので書きました。

  2. テキストを保存したら、テキストファイルの拡張子を「.vbs」に変更します。

    これでこのファイルはプログラムとして起動させることができます。
    ダブルクリックをして起動させてみてください。終了オプションダイアログが表示されれば成功です。

    拡張子の変更 終了オプションダイアログ
    ▲クリックで拡大

タスクバーへ登録

さて、これで終了オプションダイアログが表示されるファイルが作成できました。

後はこれをそのままタスクバーへ登録すればOKじゃん!と思われるかもしれませんが、実はうまくいきません。このファイルをそのままタスクバーへ登録しようとして実行すると「Windows Script Host」という表示がでるだけで実行できません。

タスクバーへ登録 Windows Script Host
▲タスクバーへ登録しても、実行はできずWindows Script Hostの設定ダイアログがでる

Windows Script Host(ウインドウズ スクリプト ホスト)とは、テキストファイルに記述したスクリプトを実行する環境のことです。WSHと略されます。標準では、VBScriptとJScriptを利用できます。他のスクリプト言語用の動作環境をインストールすればPerlなども扱えるようになります。

タスクバーでも実行できるように「WScript オブジェクト」を利用する

そこで、スクリプトをタスクバーで実行できるようにWSHの「WScript オブジェクト」を利用します。

  1. 先ほど作成したVBScriptを任意の場所に移動・保存させます。

  2. VBSファイルのショートカットを作成します。

    ショートカット ショートカットファイル

  3. 作成したショートカットファイルを右クリックし、「プロパティ」を選択します。

    「ショートカット」タブを開いて、「リンク先」の先頭に「wscript」を付け加えて適用します。
    ファイルのパスと「wscript」の間には半角スペースを入れます。

    すると、アイコンが変化します。

    ショートカット アイコン
    ▲クリックで拡大

  4. ショートカットアイコンであれば好きにアイコンが変更できるので、わかりやすいアイコンへ変更してみます。

    「ショートカット」タブ内の「アイコンの変更」を選択します。

    VBSファイルになっているので、アイコンの参照先は「wscript.exe」になっていますが、ここは数が少ないので「SHELL32.dll」を選択します。参照場所は下記の通りです。

    %SystemRoot%\system32\SHELL32.dll

    電源ボタンのようなアイコンがあるので、今回はこれにしましょう。

    アイコンの変更 アイコンの選択

  5. 作成したショートカットファイルをタスクバーへ登録します。

    「WScript オブジェクト」を利用することでVBScriptをDOS画面を表示させずに実行させることができます。似たオブジェクトで「cscript オブジェクト」も使えますが、こちらは実行すると一瞬だけDOS画面が表示させるのでこれくらいのスクリプトなら「WScript オブジェクト」の方がスマートです。

    タスクバーへ登録し、実行して終了オプションダイアログが表示されたら成功です。

    タスクバーへ登録 

まとめ

以上、終了オプションダイアログを出すスクリプトをタスクバーへ登録し実行できるようにしてみました。

Windows8以降だとスタートメニューがないので、こういったシャットダウン関連の操作が悪くなっています。最初は面倒ですが、こういったことで少しずつ操作しやすくなっていくのでよろしければお試しください。

スポンサーリンク

Track Back

Track Back URL

Comments [6]

こんばんは。記事の投稿、ご苦労様です。

最近、windows8をXP風にカスタマイズするということでいろいろ試しているのですが、記事を拝見していて思いつきました。

電源操作のダイアログも表示できるようにするといいですね。早速に試してみます。

ありがとうございました!

>P.S

先ほど試したwindows8.1をXP風にアレンジした画像です。

http://i.imgur.com/L2dvelq.jpg

お役に立ててよかったです!

正直、私はXPよりVistaをメインに操作してきた人なのでXPのような見た目というものには
あまり挑戦したこと無いのですが、やろうと思えば結構近づけられるのですね。

できないよ!なんかいみわからんメッセージウィンドウでてくるし!

コメントありがとうございます。

その意味わからないウィンドウが何なのか書いていただけないとこちらも対処のしようがないので
もしよろしければその「ウインドウタイトル」「ウィンドウ内のメッセージ」を”改変”せず書いていただければ何かアドバイスできるかもしれません。

ただ、WindowsRTだった場合は私が所持していないということで検証できないこともありますので予めご了承ください。

管理人は天才か?

 お陰様で、win8で終了ボタンをタスクバーに登録できました。有り難う御座います。
順々に操作していくうちに、"管理人は天才か?"と、つい口に出ました。アイコンの変更がすんなりといきませんでしたが、要は\system32\SHELL32.dllなのが分かり完成しました。
素晴らしい!!! 感動 感謝

お役に立てて良かったです。

アイコンのパスの選択が少し紛らわしくなったようで申し訳ございません。「%SystemRoot%」と書いたのは、この表記ならばどんな環境のPCでもコピー&ペーストで正確に目的のファイルへアクセスできるためです。意図的にCドライブ以外にシステムドライブを作っても、自動変換して正しくパスが通せるようになります。

この記事の方法ならあらゆる場所に終了オプションダイアログを表示させるアイコンを設置できるので、便利かと思います。

コメントする

非公開。必須ではありません。

(いくつかのHTMLタグ(a, strong, ul, ol, liなど)が使えます)

このページの上部へ

サイト内検索

広告

最近のコメント

Powered by Movable Type 6.3.2