プレビュー ハンドラーを登録する方法

このトピックでは、特定のデータ型に関連付けられているプレビュー ハンドラーを登録する方法について説明します。 図の目的で、このトピックの例では .xyz ファイルの種類を使用します。 プレビュー ハンドラーの登録は、標準のファイル関連付けベースの登録です。

Instructions

手順 1:

最初に、ファイル名拡張子が ProgID に関連付けられます。 次のエントリは、 xyzfile ProgID サブキーを .xyz ファイル名拡張子に関連付けます。

HKEY_CLASSES_ROOT
   .xyz
      (Default) = [REG_SZ] xyzfile

xyzfile ProgID サブキーは、次に示すように、他の ProgID と共に格納されます。

HKEY_CLASSES_ROOT
   xyzfile

各プレビュー ハンドラー ProgID サブキーには、常に{8895b1c6-b41f-4c1c-a562-0d564250836f} という名前のサブキーを含む shellex という名前のサブキーが含まれています。 そのサブキーが存在すると、ハンドラーがプレビュー ハンドラーであることをシステムに通知します。

{8895b1c6-b41f-4c1c-a562-0d564250836f} サブキーの既定値は、ハンドラーのクラス識別子 (CLSID) です。 ここでは、xyzfile ProgID サブキーの例を示します。CLSID {ec3a629a-a47c-4245-bc78-b4b63d0e3154} のハンドラーを関連付けています。

HKEY_CLASSES_ROOT
   xyzfile
      shellex
         {8895b1c6-b41f-4c1c-a562-0d564250836f}
            (Default) = [REG_SZ] {ec3a629a-a47c-4245-bc78-b4b63d0e3154}

手順 2:

次に、プレビュー ハンドラーの CLSID の下にサブキーを追加します。 例を次に示します。 個々のエントリの説明を次に示します。

HKEY_CLASSES_ROOT
   CLSID
      {ec3a629a-a47c-4245-bc78-b4b63d0e3154}
         (Default) = [REG_SZ] Fabricam XYZ Preview Handler
         DisplayName = [REG_SZ] @myhandler.dll,-101
         Icon = [REG_SZ] myhandler.dll,201
         AppID = [REG_SZ] {6d2b5079-2f0b-48dd-ab7f-97cec514d30b}
         InprocServer32
            (Default) = [REG_EXPAND_SZ] %ProgramFiles%\Fabricam\myhandler.dll
            ThreadingModel = [REG_SZ] Apartment
            ProgID = [REG_SZ] xyzfile
            VersionIndependentProgID = [REG_SZ] Version IndependentProgID

サブキーの既定値 ({ ec3a629a-a47c-4245-bc78-b4b63d0e3154}) は必須または使用されません。 ただし、ローカライズされていない文字列に設定すると、登録の問題をデバッグするのに役立ちます。

DisplayName エントリの.dll リソースのマイナス記号 (-101) は、レガシの理由から存在します。 一方、アイコン エントリにはマイナス記号は必要ありません。

AppID 値は、ファイル名拡張子に関連付けられているアプリケーションの AppID への参照を提供します (APPID HKEY_CLASSES_ROOT下\格納されます。 ここで使用する値{6d2b5079-2f0b-48dd-ab7f-97cec514d30b}は、Prevhost.exeサロゲート ホストの ID です。 32 ビット プレビュー ハンドラーは、64 ビット オペレーティング システムにインストールされている場合、 AppID {534A1E02-D58F-44f0-B58B-36CBED287C7C} を使用する必要があります。

InprocServer32 サブキーの下のエントリには、ファイル名拡張子の ProgID サブキーへの参照と VersionIndependentProgID のエントリが含まれます。

手順 3:

最後に、プレビュー ハンドラーをすべてのプレビュー ハンドラーの一覧に追加する必要があります。 このリストは、表示目的で登録されているすべてのプレビュー ハンドラーを列挙するための最適化としてシステムによって使用されます。 繰り返しますが、既定値は必須ではありません。デバッグ プロセスを支援するだけです。

注意

Windows 7 では、コンピューターのすべてのユーザーにアプリケーションがインストールされている場合は、HKEY_LOCAL_MACHINEを使用します。ユーザーが 1 人だけの場合は、HKEY_CURRENT_USERを使用します。

 

HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER
   SOFTWARE
      Microsoft
         Windows
            CurrentVersion
               PreviewHandlers
                  {ec3a629a-a47c-4245-bc78-b4b63d0e3154}
                     (Default) = [REG_SZ] Fabricam XYZ Preview Handler

プレビュー ハンドラーとシェル プレビュー ホスト

プレビュー ハンドラーのビルド

プレビュー ハンドラーのガイドライン