web-dev-qa-db-ja.com

追加のソフトウェアなしでWin10のコンテキストメニューの上に「開く」を取得しますか?

さまざまなプログラムがインストールされているさまざまなコンピューターで作業していると、コンテキストメニューがアルファベット順に並べ替えられているように見えるため、コンテキストメニューでOpen with-ダイアログを検索する必要があります。そのため、多くのプログラムが-そして-その前または後に立ってください。

したがって、次に示すように、Open withをリストの一番上に移動します。

diagram of context menu

レジストリをいじり、あらゆる種類のOpenCandyなどが付属しているサードパーティのプログラムはあまり好きではないので、これを昔ながらの手動の方法で実行したいと思います。すぐに問題が発生します。

少しグーグルで検索すると、 「Windowsエクスプローラのコンテキストメニューで注文する」というSOの質問 になり、次に これは-かなり古い-MSDNのブログ投稿 になりました。それを述べる:

[...]並べ替えは、決定順に次の要素に基づいています。

  1. キーの優先度(例:txtfile、*、AFSO)

  2. shellex\contextmenuhandlersのレジストリ列挙順序。静的動詞の特殊なケースが常に最初になります

  3. IContextMenu実装順序


私が考えることができる唯一の解決策は、非常に不誠実です。Open withの名前を1: Open withまたは0pen withのような名前に変更します。私はそれを試しましたが、残念ながら、これによりOpen withが完全に削除されます(たとえば、コンテキストメニューには表示されなくなります)。

SOの質問で私が読んだ別の解決策は、コンテキストメニューの別のセクション内にOpen withを配置することでした。プログラムの量はまだポジションに影響を与えるので、これも少ししか役に立たないので、これも避けたいと思います。


手動でOpen withを上に表示する方法はありますか? RegeditまたはPowerShell経由ですか?

注:私にとって、それがOpenの前か後かは実際には問題ではありません。

5
flolilo

コンテキストメニューポップアップで通常のOpen withの位置をHKCR\*\shellex\contextmenuhandlersから変更する代わりに、Open withおよびforceの下で次の他のHKCR\*\Shell追加できます次のように、ポップアップの一番上への位置:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\Shell\.OpenWith]
"Position"="Top"

[HKEY_CLASSES_ROOT\*\Shell\.OpenWith\command]
@="{09799AFB-AD67-11d1-ABCD-00C04FC30936}"

結果.pngファイルの例):

OpenWith

変更を元に戻すには、読んでフォローしてください レジストリキーと値の削除

.regファイルを含むレジストリキーを削除するには、-ファイルのRegistryPathの前にハイフン(.reg)を付けます。

この場合、.OpenWithレジストリキーからHKEY_CLASSES_ROOT\*\Shellサブキーを削除するには、次を使用します。

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\*\Shell\.OpenWith]
2
JosefZ