Microsoft UpdateでWord/Excelビューアのパッチ当てたら関連付けを勝手に変更された
ターミナルサーバで、メインのOffice suiteとしてOpenOfficeを使用してます。
が、なぜか Word/Excelビューアも入ってます。
doc,xlsファイルの関連付けはOpenOfficeに設定しているのですが、WindowsUpdateでWord/Excelビューアのセキュリティパッチを当てたら、勝手に全ユーザの関連付けを変更しやがりました。
doc,xlsファイルをビューアーで開くようにされてしまったのです。
(ユーザが個別に設定して場合は影響有りませんでした)


フォルダオプションで設定してもいいのですが、ユーザ単位の設定となってしまっては面倒なので、レジストリを直接触ることにしました。


で、参考にさせてもらったのが、Windows の関連づけ設定の仕組みです。
これを見ると、ユーザごとの関連付け(HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\)が最優先で動くようです。

今回、パッチによって変更されていたのは HKEY_CLASSES_ROOT\* (Basic Class Key)でした。
(ちなみに、HKEY_CLASSES_ROOT は HKEY_LOCAL_MACHINE\Software のサブキーです。)

ビューアで開く関連付けファイルだと以下のようになってました。
(エキサイトブログのダメ仕様上一部.の前に半角スペースを置いています。実際は半角スペースを.の前の半角スペースを削除してください)

HKEY_CLASSES_ROOT\.doc
(既定)=Wordview.Document .8
"Content Type"="application/msword"

HKEY_CLASSES_ROOT\.xls
(既定)=ExcelViewer.Sheet.8

HKEY_CLASSES_ROOT\.docx
(既定)="Word.Document .12"
"Content Type"="application/vnd.openxmlformats-officedocument .wordprocessingml.document"


HKEY_CLASSES_ROOT\.pptx
(既定)="PowerPointViewer.Show.12"


これを以下のように修正したら、全ユーザでOpenOfficeで開くようになりました。(個別設定しているユーザ以外)

HKEY_CLASSES_ROOT\.doc
(既定)=OpenOffice.org.Doc
削除 → "Content Type"="application/msword"

HKEY_CLASSES_ROOT\.xls
(既定)=OpenOffice.org.Xls

HKEY_CLASSES_ROOT\.docx
(既定)=OpenOffice.org.Docx
削除" → "Content Type"="application/vnd.openxmlformats-officedocument .wordprocessingml.document"

HKEY_CLASSES_ROOT\.xlsx
(既定)=OpenOffice.org.Xlsx

HKEY_CLASSES_ROOT\.pptx
(既定)="OpenOffice.org.Pptx"


この(既定)の値は、ProgID Key というものらしく、HKEY_CLASSES_ROOT\OpenOffice.org.Doc にアイコンや実際の動作の挙動が書いているようです。


関連付けは結構厄介ですね。

参考:
OKWave:ファイルの「関連付け変更」は、どこに記録されるの?
[PR]
by Jehoshaphat | 2013-03-29 22:45 | 豆知識 | Trackback | Comments(0)
トラックバックURL : http://jehupc.exblog.jp/tb/19944328
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。


<< Windows7のIE8でリン... Java,AdobeReade... >>