Unknownの関連付け

HKEY_CLASS_ROOT\Unknown\Shell\Command をいじって、登録していない拡張子の関連付けを変更することができるという話は結構有名。Vistaでも同じように設定しようと、Openキーを作って、その下に Commandキーを作ってみた。しかしアイコンをダブルクリックしてもうまくいかない。「(・3・)アルェー」と思い辺りを見回してみると、一個上の Shell の規定値に saveas とある。さらに、その下に saveas というキーがある。「はぁ、なるほど」と思い、Shell の規定値を save に変えたらダブルクリックで狙った動作をするようになった。saveas の方は使わないので LegacyDisable*1を設定して非表示にする。
Vistaでは関連付けをGUIで詳しく変更できなくなったので、代わりにレジストリを直接いじるようになった。おかげで少しはレジストリに詳しくなったよ。

*1:本来は互換性維持に用いる値らしい。参考:http://msdn2.microsoft.com/en-us/library/bb776883.aspx