2010年5月23日日曜日

右クリックメニューに「デスクトップの表示」をつける

デスクトップを閲覧する子供

Windows7 の右クリックメニューに「デスクトップの表示」と「ウィンドウを切り替える」を付けます。

  1. レジストリのキーを開く。

    HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers

デスクトップの表示

  1. Shows Desktop キーを作る。

    Shows Desktop

  2. (既定){3080F90D-D7AD-11D9-BD98-0000947B0257} と入力。

    {3080F90D-D7AD-11D9-BD98-0000947B0257}

ウィンドウを切り替える

  1. Window Switcher キーを作る。

    Window Switcher

  2. (既定){3080F90E-D7AD-11D9-BD98-0000947B0257} と入力。

    {3080F90E-D7AD-11D9-BD98-0000947B0257}

2 つ登録すると、なぜか「デスクトップを表示します」しか出てきません。

私の頭脳(メモリー8バイト)では原因不明でしたが、気を取り直して「ウィンドウを切り替える」を別の方法で登録してみました。




[HKEY_CLASSES_ROOT\Directory\Background\shell\Window Switcher]
@="ウィンドウ スイッチャー"

[HKEY_CLASSES_ROOT\Directory\Background\shell\Window Switcher\command]
@="rundll32.exe DwmApi #105"

離れてしまいました。

「デスクトップの表示」だけあればいいのでこちらは未登録にしました。

ちなみにこの方法で「デスクトップの表示」も設定する場合は、こんな感じです。

[HKEY_CLASSES_ROOT\Directory\Background\shell\Shows Desktop]
@="デスクトップを表示します"
[HKEY_CLASSES_ROOT\Directory\Background\shell\Shows Desktop\command]
@="rundll32.exe url.dll,FileProtocolHandler Shell:::{3080F90D-D7AD-11D9-BD98-0000947B0257}"
 


[HKEY_CLASSES_ROOT\Directory\Background\shell\Shows Desktop\command]
@="explorer.exe shell:::{3080F90D-D7AD-11D9-BD98-0000947B0257}"

としても動作しますが、試してみたところ引っかかりがありました。環境によって違うかもしれません。一番最初のCLSIDを使う方法がもっともスムーズに動作しました。