Installieren und Registrieren von Protokollhandlern (Legacy-Windows-Umgebungsfeatures)

Hinweis

Windows DesktopSuche 2.x ist eine veraltete Technologie, die ursprünglich als Add-In für Windows XP und Windows Server 2003 verfügbar war. Verwenden Sie in späteren Versionen stattdessen Windows Search.

Die Installation von Protokollhandlern umfasst das Kopieren der DLL(s) an einen geeigneten Speicherort im Verzeichnis Programme und deren Registrierung.

Dieser Abschnitt enthält die folgenden Themen:

Installationsrichtlinien

Protokollhandler sollten die Selbstregistrierung für die Installation implementieren und die folgenden Richtlinien befolgen:

  • Das Installationsprogramm muss entweder EXE- oder MSI-Installer verwenden.
  • Versionshinweise müssen bereitgestellt werden.
  • Für jedes installierte Add-In muss ein Eintrag zum Hinzufügen/Entfernen von Programmen erstellt werden.
  • Das Installationsprogramm muss alle Registrierungseinstellungen für den jeweiligen Dateityp oder -speicher übernehmen, den das aktuelle Add-In versteht.
  • Wenn ein vorheriges Add-In überschrieben wird, sollte das Installationsprogramm den Benutzer benachrichtigen.
  • Wenn ein neueres Add-In das vorherige Add-In überschrieben hat, sollte es die Möglichkeit geben, die Funktionalität des vorherigen Add-Ins wiederherzustellen und es wieder zum Standard-Add-In für diesen Dateityp zu machen.

So registrieren Sie Protokollhandler

Sie müssen 14 Einträge in der Registrierung vornehmen, um die Protokollhandlerkomponente zu registrieren, wobei Folgendes gilt:

  • Ver _ Ind _ ProgID ist die versionsunabhängige ProgID der Implementierung des Protokollhandlers.
  • Ver _ Dep _ ProgID ist die versionsabhängige ProgID der Implementierung des Protokollhandlers.
  • CLSID _ 1 ist die CLSID der Implementierung des Protokollhandlers.
  1. Registrieren Sie die versionsunabhängige ProgID mit den folgenden Schlüsseln und Werten:

    HKEY_CLASSES_ROOT\<Ver_Ind_ProgID>
       (Default) = <Protocol Handler Class Description>
    
    HKEY_CLASSES_ROOT\<Ver_Ind_ProgID>/CLSID
       (Default) = {CLSID_1}
    
    HKEY_CLASSES_ROOT\<Ver_Ind_ProgID>/CurVer
       (Default) = <Ver_Dep_ProgID>
    
  2. Registrieren Sie die versionsabhängige ProgID mit den folgenden Schlüsseln und Werten:

    HKEY_CLASSES_ROOT\<Ver_Dep_ProgID>
       (Default) = <Protocol Handler Class Description>
    
    HKEY_CLASSES_ROOT\<Ver_Dep_ProgID>/CLSID
       (Default) = {CLSID_1}
    
  3. Registrieren Sie die CLSID des Protokollhandlers mit den folgenden Schlüsseln und Werten:

    HKEY_CLASSES_ROOT\{CLSID_1}
       (Default) = <Protocol Handler Class Description>
    
    HKEY_CLASSES_ROOT\{CLSID_1}/InprocServer32
       (Default) = <DLL Install Path>
       Threading Model = Both
    
    HKEY_CLASSES_ROOT\{CLSID_1}/ProgID
       (Default) = <Ver_Dep_ProgID>
    
    HKEY_CLASSES_ROOT\{CLSID_1}/ShellFolder
       Attributes = dword:a0180000
    
    HKEY_CLASSES_ROOT\{CLSID_1}/TypeLib
       (Default) = {LIBID of PH Component}
    
    HKEY_CLASSES_ROOT\{CLSID_1}/VersionIndependentProgID
       (Default) = <Ver_Ind_ProgID>"
    
  4. Registrieren Sie den Protokollhandler bei Windows Desktopsuche:

    HKEY_LOCAL_MACHINE\Software\Microsoft\RSSearch\ProtocolHandlers
       Protocol Name = <Ver_Dep_ProgID>
    
    HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ProtocolHandlers
       Protocol Name = <Ver_Dep_ProgID>
    
    HKEY_CURRENT_USER\Software\Microsoft\Windows Desktop Search\DS\Index\ProtocolHandlers\<Protocol Name>
       HasRequirements = dword:00000000
       HasStartPage = dword:00000000
    

So registrieren Sie Shellerweiterungen

Sie müssen zwei Einträge in der Registrierung vornehmen, um die Shellerweiterung des Protokollhandlers zu registrieren.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{CLSID of PH Implementation}
   (Default) = <Shell Implementation Description>
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Extensions\Approved
   {CLSID of PH Implementation} = <Shell Implementation Description>