2023年4月13日木曜日

右クリックの新規作成メニューを非表示にする【レジストリ削除なし】

新規作成シェルメニューとは、Windows のエクスプローラー上で右クリックをすることで、新しいファイルやフォルダ、ショートカットなどを作成する機能です。

右クリックの新規作成機能は、Windows の基本的な機能の 1 つであり、日々の業務やプライベートでの利用の中で便利な機能として活用されています。

不要なシェルメニューが多数残っていると、シェルメニューの一覧が膨大になって見づらくなり、管理作業が煩雑になるため整理する必要があります。

新規作成メニュー

新規作成の不要なコンテキストメニューを非表示にする

新規作成の、ビットマップ イメージリッチ テキスト ドキュメントテキスト ドキュメント を安全に削除します。

  1. レジストリキーを参照します。

    HKCR\.bmp\ShellNew

    HKCR\.txt\ShellNew

    HKCR\.rtf\ShellNew

    ShellNew

  2. それぞれに MenuText (文字列値)を作成。値のデータを @ にします。

    MenuText

  3. 完成です。

    不要な項目を削除した新規作成メニュー

HKCU\Software\Classes\.bmp\ShellNew のが安全性に優れますが、今回は値を 1 つ書き込むだけなので、直接 HKCR を使用しています。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.bmp\ShellNew]
"MenuText"="@"

[HKEY_CLASSES_ROOT\.txt\ShellNew]
"MenuText"="@"

[HKEY_CLASSES_ROOT\.rtf\ShellNew]
"MenuText"="@"

その他の新規作成メニューも作成される拡張子の MenuText@ 文字を登録すれば、レジストリを削除することなく無効化できます。

元に戻す

MenuText を削除すれば再度表示されます。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.bmp\ShellNew]
"MenuText"=-

[HKEY_CLASSES_ROOT\.txt\ShellNew]
"MenuText"=-

[HKEY_CLASSES_ROOT\.rtf\ShellNew]
"MenuText"=-

残りの新規作成メニューも非表示

フォルダーショートカットも非表示にできます。

(なし)

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\ShellNew]
"MenuText"="@"

[HKEY_CURRENT_USER\SOFTWARE\Classes\.lnk\ShellNew]
"MenuText"="@"

HKLMMenuText が存在するため、壊さないよう HKCU へ書き込んでいます。

HKLM\SOFTWARE\Classes\Folder\ShellNew

HKLM\SOFTWARE\Classes\.lnk\ShellNew

HKLM のキーは書き込み可能なので、値のデータを編集するだけで同じ効果を得られます。ただし、バックアップ必須なので非推奨。

📝 HKCR、HKCU、HKLM の関係

新規作成を非表示

新規作成そのものを非表示にすることもできます。

新規作成のないコンテキストメニュー

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\Background\shellex\ContextMenuHandlers\New]
@="@"

ディレクトリライブラリ フォルダの背景にある New (新規作成)自体を非表示にしています。

  • 新規作成メニュー

    HKLM\SOFTWARE\Classes\Directory\background\shellex\ContextMenuHandlers\New

  • 読み出される機能 (New Menu Handler)

    HKCR\CLSID\{D969A300-E7FF-11d0-A93B-00A0C90F2719}

デフォルトの設定に触れないように HKCU を編集しています。