エクスプローラーのコンテキストメニューの並び順を入れ換える基礎的な方法です。
デスクトップのシェルメニューを例にします。
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DesktopBackground\Shell
Shell メニューは通常レジストリのキーの並び、アルファベット順で表示されます。
Display(画面の解像度)、Gadget(ガジェット)、Personalize(個人設定)
キーの名前を変えれば、順番もそれに従って入れ換えることができますが、変更できない状況も多くあります。今回のデスクトップのメニューも、所有権を TrustedInstaller が握っていてキー名は変更できません。
メニューの並べ替えは、レジストリの編集で意外に簡単にできます。
Shell キーの 既定 を開きます。
Personalize にすると個人設定が優先され、一番上になります。
Personalize 以外は、通常のキーの名前のアルファベット順です。
Gadget を Personalize の後にコンマまたはスペースで区切って記述すると個人設定、ガジェット、画面の解像度の順になります。
open ,edit ,printといったシェルキーも同じように扱えます。
既定のデータを空にして元に戻すには、(既定) を右クリックして、メニューから削除します。
この方法は、既定の動作(ダブルクリックしたときに開く)の変更にも使えます。
反面、意図せず既定の動作になってしまうことがあります。
それを避けるには、Personalize などのキーに NeverDefault(文字列値)を追加します。
そうすることで文字通り、決して既定の動作にはならなくなります。NeverDefault を使った例
今回の、Display などの初めからある Shell のサブキーは、TrustedInstaller で守られていますので、アクセス許可を変更しないと書き込めません。こういう場合は、HKEY_CURRENT_USERに同じ項目を作成すると、楽に編集できます。
コマンドのキーに値を追加可能なら、"Position"="Top" | "Bottom" で位置を指定することもできます。