1

環境

特定のファイル拡張子について、ファイルの関連付けの ProgID(?) を見つける必要があります (例: .docxWord.Document )。(a) 特定の関連付けられたソフトウェア ( Adobeと Nuanceなど) を認識し、ドキュメントを開く前にそれに応じて処理し、(b) Outlook に仮想ファイル (メッセージ クラス) の正しいアイコンを表示させる必要があります。IPM.Document.[ProgID]

現在の解決策

(Default)のレジストリ キーのエントリを読み上げるだけです。HKEY_CURRENT_ROOT\[extension]

問題

一部のマシンでは、一部のファイルの種類について、(Default)HKCR のエントリがです。ただし、Windows エクスプローラー (シェル) は適切なアイコンを表示し、ファイルを開くときに作業ファイルの関連付けが確実に行われます。

明らかに、ファイルの関連付けを取得するための正しいアプローチを使用していません。この情報を返すAssocQueryStringに渡すことができる不足しているASSOCSTRはありますか、または見落としている MSDN のファイル関連付けに関するその他の呼び出しまたは標準ドキュメントはありますか?

4

1 に答える 1

3

Windows Vista 以降 (私が思うに)、ユーザーがキーを介して通常の HKCR ファイル関連付けシステムをオーバーライドする機能がありました。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\ .extension \UserChoice\

このキーの値を確認し、存在する場合はそれを使用し、デフォルトのフォールバックとしてのみProgId扱う必要があります。HKCR\extension

于 2012-12-07T04:07:56.193 に答える