Registrieren eines Vorschauhandlers
In diesem Thema wird erläutert, wie Sie einen Vorschauhandler registrieren, der einem bestimmten Datentyp zugeordnet ist. Zur Veranschaulichung verwenden Beispiele in diesem Thema einen XYZ-Dateityp. Bei der Registrierung eines Vorschauhandlers handelt es sich um eine standardbasierte Dateizuordnungsregistrierung.
Anweisungen
Schritt 1:
Zunächst wird einer ProgID eine Dateinamenerweiterung zugeordnet. Der folgende Eintrag ordnet den ProgID-Unterschlüssel xyzfile der Dateinamenerweiterung .xyz zu.
HKEY_CLASSES_ROOT
.xyz
(Default) = [REG_SZ] xyzfile
Der ProgID-Unterschlüssel xyzfile wird wie hier gezeigt mit den anderen ProgIDs gespeichert:
HKEY_CLASSES_ROOT
xyzfile
Jeder ProgID-Unterschlüssel des Vorschauhandlers enthält einen Unterschlüssel namens shellex , der einen Unterschlüssel mit dem Namen {8895b1c6-b41f-4c1c-a562-0d564250836f} enthält. Das Vorhandensein dieses Unterschlüssels teilt dem System mit, dass der Handler ein Vorschauhandler ist.
Der Standardwert des {8895b1c6-b41f-4c1c-a562-0d564250836f}-Unterschlüssels ist der Klassenbezeichner (CLSID) Ihres Handlers. Hier sehen Sie ein Beispiel für den ProgID-Unterschlüssel xyzfile , der einen Handler von CLSID {ec3a629a-a47c-4245-bc78-b4b63d0e3154} ordnet.
HKEY_CLASSES_ROOT
xyzfile
shellex
{8895b1c6-b41f-4c1c-a562-0d564250836f}
(Default) = [REG_SZ] {ec3a629a-a47c-4245-bc78-b4b63d0e3154}
Schritt 2:
Fügen Sie als Nächstes den Unterschlüssel unter CLSID für Ihren Vorschauhandler hinzu. Ein Beispiel wird hier gezeigt. Es folgt eine Erläuterung der einzelnen Einträge.
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
Der Standardwert für Ihren Unterschlüssel (hier {ec3a629a-a47c-4245-bc78-b4b63d0e3154}) ist nicht erforderlich oder verwendet. Wenn Sie sie jedoch auf eine nicht lokalisierte Zeichenfolge festlegen, können Sie Registrierungsprobleme debuggen.
Das Minuszeichen (-101) in der .dll Ressource im DisplayName-Eintrag ist aus älteren Gründen vorhanden. Der Symboleintrag hingegen erfordert kein Minuszeichen.
Der AppID-Wert gibt einen Verweis auf die AppID der Anwendung, die der Dateinamenerweiterung zugeordnet ist (gespeichert unter HKEY_CLASSES_ROOT\APPID. Der hier verwendete Wert {6d2b5079-2f0b-48dd-ab7f-97cec514d30b} ist die ID des Prevhost.exe Ersatzhosts. 32-Bit-Vorschauhandler sollten appID {534A1E02-D58F-44f0-B58B-36CBED287C7C} verwenden, wenn sie auf 64-Bit-Betriebssystemen installiert sind.
Die Einträge unter dem InprocServer32-Unterschlüssel enthalten einen Verweis zurück auf den ProgID-Unterschlüssel der Dateinamenerweiterung sowie einen Eintrag für eine VersionIndependentProgID.
Schritt 3:
Schließlich muss der Vorschauhandler der Liste aller Vorschauhandler hinzugefügt werden. Diese Liste wird vom System als Optimierung verwendet, um alle registrierten Vorschauhandler für Anzeigezwecke aufzulisten. Auch hier ist der Standardwert nicht erforderlich, er unterstützt lediglich den Debugprozess.
Hinweis
Wenn die Anwendung unter Windows 7 für alle Benutzer des Computers installiert ist, verwenden Sie HKEY_LOCAL_MACHINE; , wenn nur für einen Benutzer 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
Zugehörige Themen