Windows + X メニューの内容をカスタマイズする方法

以前「Powershell CoreをWindows Powershellの代わりに使う」なんて記事を書きましたが、Windows + X メニューのカスタマイズ方法を単独で書いた記事も設けておきましょう――あちらは「蛇足」が多いですからね。

breezecaller's tech blog

目次 1 Powershell Core2 Windowsキー + X メニューの場所3 方法1:Win+X Menu …

広告

方法1:Win+X Menu Editor を使う

これがおそらく最も簡単な方法でしょう。ダウンロード先は以下。

Win+X Menu Editor for Windows 10 and Windows 8

Win+X Menu Editor

起動すると、次のような画面が表示されます。
これについては特段迷うべき操作はないでしょう。説明は割愛します。* 1英語とはいえ、平易な書き方をしているうえに直感的な書き方ですからね。
一点注意するとしたら、「メニューの変更は、Explorerを再起動しないと反映されない」という点でしょうか。

なお、次に示す「hashlnkを使う方法」が失敗した場合にも、"Restore Default" で Windows の初期配置に戻せるので、そのためだけにでもこれは持っておいて損はないでしょう。

方法2:hashlnkを使う方法

Windows + X メニューの中身は、次のような機序で動作しているものと思われます。

  1. %localappdata%\Microsoft\Windows\WinX 内に Group1 ~ Group10 という名前のフォルダが存在する場合、それらをメニューの区切りと見做す。
  2. それらのフォルダに入ってるショートカットを、explorerの(再)起動時にロードする。
  3. これらの並び順は、ファイル名でソートしたときに、下から見て名前順・昇順となる。
  4. これを、Windows + X メニューに割り当てる。

一部、電源系など特殊な操作はありますが、基本はこれで構成されているとみて間違いはないでしょう。

ところが問題になるのが、このショートカットが「普通のショートカットでは動作しない」点にあります。
詳しい点は情報不足で全くわからないのですが、ショートカットに何か特別な値を付け加えると、上記2で使用できるショートカットとして認識できるのではないかと思われます。

そして、これを付加するのが次のツールです。

hashlnk/hashlnk_0.2.0.0.zip at master · riverar/hashlnk · GitHub

使い方は簡単で、

  1. 適当なプログラムへのショートカットを作成する。必要に応じて管理者権限で実行できるようにしておく。
  2. hashlnk コマンドを実行する。使い方は、
    • Powershell: ./hashlnk "対象のショートカットのパス"
    • cmd.exe: hashlnk "対象のショートカットのパス"
  3. Powershellなどの特殊なショートカットの場合、上記の手順をもう一度繰り返す。
    • これは謎な挙動で、所謂普通のプログラムへのショートカットだと2の手順のみでよいのですが、Powershellやcmdのような特殊なショートカットの場合、何故か2回――ハッシュが変わらなくなるまで――繰り返す必要が生じます。
  4. 必要に応じてショートカットのプロパティのコメントを設定する。ショートカットキーもここで設定する。
    (たとえば、Aキーをショートカットキーに割り振るには "comment (&A)" と記述する必要がある。この "&A" の部分はショートカットキーを記述する際の、いわばお約束的な記法にあたる。)

    • Windows + X メニューで表示される名前には次の優先順位があることに注意。
      1. コメント
      2. Explorerでの表記上のショートカット名。ファイル名とは異なる。
      3. ファイルの名前
        基本はこれだけです。

参考までに

このようなリンクも存在します。
こちらを見るのも一案かもしれません。

便利だった、Windows + Xメニューの「コントロールパネル」項目を復活させる:Tech TIPS – @IT

注釈[+]

どうしようもない雑記を書いてる場所だよ