次の方法で共有


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

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

Instructions

手順 1:

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

HKEY_CLASSES_ROOT
   .xyz
      (Default) = [REG_SZ] xyzfile

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

HKEY_CLASSES_ROOT
   xyzfile

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

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

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 への参照を提供します (HKEY_CLASSES_ROOT\APPIDの下に格納されます。 ここで使用する値{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

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

プレビュー ハンドラーの構築

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