2014年2月21日金曜日

「デスクトップの背景として設定」メニューを削除する

画像ファイルの「デスクトップの背景として設定」右クリックメニューを削除する方法です。

デスクトップの背景として設定(B)メニューを非表示にした状態

デスクトップの壁紙は、コントロールパネルの個人設定から変更可能です。


レジストリを編集してメニューを非表示にする方法

拡張子ごとに設定が必要になります。

PNG画像の場合の例です。設定後は即時有効になります。

  1. レジストリキーを開きます。

    HKLM\SOFTWARE\Classes\SystemFileAssociations\.png\Shell\setdesktopwallpaper

  2. LegacyDisable(文字列値)を追加します。


レジストリ設定ファイル

11 種類の画像ファイルからメニューをすべて非表示にする .reg ファイルです。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.bmp\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.dib\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.gif\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jfif\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jpe\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jpeg\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jpg\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.png\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.tif\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.tiff\Shell\setdesktopwallpaper]
"LegacyDisable"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.wdp\Shell\setdesktopwallpaper]
"LegacyDisable"=""

元にもどすレジストリ設定ファイル

LegacyDisable 値を削除してもとに戻す .reg ファイルです。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.bmp\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.dib\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.gif\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jfif\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jpe\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jpeg\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.jpg\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.png\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.tif\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.tiff\Shell\setdesktopwallpaper]
"LegacyDisable"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.wdp\Shell\setdesktopwallpaper]
"LegacyDisable"=-

HKEY_CURRENT_USER に設定する場合

今回は、HKLM にはキーが確実に存在するのに対して、HKCU には存在しないすべてのキーを作成しなければなりませんので、効率を重視して HKLM (すべてのユーザー)に設定しました。

HKCU (ログインユーザーのみ) に設定する場合は以下のようになります。

[HKEY_CURRENT_USER\Software\Classes\SystemFileAssociations\.png\Shell\setdesktopwallpaper]
"LegacyDisable"=""