Verwenden des Protokolls "search"
Das Anwendungsprotokoll search: ist eine erweiterbare Konvention zum Aufrufen der Desktopsuchanwendung auf Windows Vista mit Service Pack 1 (SP1) und höher. Das Protokoll wurde in Windows Vista mit SP1 erstellt, um Windows eine Möglichkeit zu geben, die Standardanwendung für die Desktopsuche zu bestimmen und aufzurufen.
Die Protokollsyntax stellt eine Reihe von Parametern bereit, die für allgemeine Desktopsuchen nützlich sind, z. B. vom Benutzer eingegebene Suchbegriffe oder der Ort, an dem die Suche begonnen wurde. Wenn Benutzer über einen der beiden verfügbaren Sucheinstiegspunkte suchen (entweder über das Startmenü oder Windows Explorer), verwendet das Betriebssystem das Suchprotokoll, um die Standardanwendung für die Desktopsuche zu starten. Hierzu werden die vom Benutzer eingegebenen Suchbegriffe zur Standardsyntax des Suchprotokolls hinzugefügt und diese Informationen an die Anwendung übergeben, die als Standardsuchanwendung registriert ist.
Wenn keine anderen Desktopsuchanwendungen installiert sind, startet eine in diesen Einstiegspunkten eingegebene Suche den Windows-Suche-Explorer. Entwickler von Drittanbietern können ihre Anwendungen jedoch erstellen, installieren und registrieren, um das Suchprotokoll zu verarbeiten und die Standardsuchanwendung zu sein. Solche Anwendungen müssen die Syntax des Suchprotokolls unterstützen und sich bei der Funktion Standardprogramme registrieren, um eine nahtlose Erfahrung mit Windows sicherzustellen.
Wenn Sie eine Anwendung entwickeln, die eine bestimmte Desktopsuchanwendung verwenden oder darauf aufbauen soll, sollten Sie nicht ausschließlich vom Suchprotokoll abhängig sein. Da viele Anwendungen das "search:"-Protokoll besitzen könnten, gibt es keine Garantie dafür, dass ihre Zielanwendung für die Desktopsuche sie zu einem bestimmten Zeitpunkt besitzt. Stattdessen sollten Sie ein privates Suchprotokoll verwenden, das von dieser Zielanwendung für die Desktopsuche definiert wird. Dies bedeutet, dass Desktopsuchanwendungen, die als Plattform für Anwendungen von Drittanbietern vorgesehen sind, sowohl das Suchprotokoll als auch ein eigenes proprietäres Suchprotokoll unterstützen sollten.
Hinweis
Das search: -Protokoll ersetzt nicht das proprietäre search-ms:-Protokoll. Anwendungen können weiterhin das Search-ms:-Protokoll verwenden, um den Fenstersuche-Explorer zu starten oder den Windows Search-Indexer im Hintergrund abzufragen.
In diesem Thema werden folgende Themen behandelt:
- Syntax
- Windows Vista mit SP1 unter Verwendung des Protokolls search:
- Beispiele
- Registrieren der Anwendung, die das Protokoll behandelt
- Zugehörige Themen
Syntax
Das Suchprotokoll verwendet die folgende URL-codierte Standardsyntax:
search:parameter=value[¶meter=value]&
Die Syntax beginnt mit der Identifizierung des Protokolls selbst (suche:). Die Parameter-Wert-Paare sind Argumente, die an die Suchmaschine übergeben werden, wie in der folgenden Tabelle beschrieben, in der alle möglichen Parameter für die Syntax des Suchprotokolls angezeigt werden.
| Parameter | Wert | BESCHREIBUNG |
|---|---|---|
| Abfrage | URL-codierter Text | Der vom Benutzer eingegebene Abfragetext. |
| inputlocale | Beliebiger gültiger Sprachcodebezeichner (LCID) | Die LCID, die die Eingabesprache für die Abfrage identifiziert. |
| keywordlocale | Beliebige gültige LCID | Die LCID, die die Sprache der internationalen Version des Indexers identifiziert. Der Standardwert ist 1033 (en-us). |
| Krume | AQS-Anweisung | Dieses Argument schränkt den bereich ein, der durchsucht wird. In Windows Vista unterstützt das Suchprotokoll vollständige AQS-Funktionen sowie eine spezielle Implementierung für ein location Argument. In Windows XP unterstützt das Suchprotokoll auch vollständige AQS- mit Ausnahme einer speziellen Implementierung von kind und store . |
| Syntax | NQS, AQS (groß-/kleinschreibung nicht beachten) | Die Abfragesyntax, die zum Durchsuchen des Index verwendet werden soll: Entweder Natural Query Syntax oder Advanced Query Syntax (AQS). AQS ist die Standardeinstellung und wird immer als analysiert und unterstützt angenommen. |
| stackedby | Jede gültige Eigenschaft aus dem Eigenschaftensystem | Eine -Eigenschaft, die die Spalte angibt, nach der Ergebnisse gestapelt werden sollen. |
| subquery | Ein vollständig angegebener Pfad für eine gespeicherte Suchdatei ( * .search-ms) | Die Ergebnisse der Unterabfrage werden als Quelle für die Abfrage verwendet. Das heißt, die Abfragebegriffe werden anhand der Ergebnisse der Unterabfrage gesucht. |
| displayname | URL-codierte Zeichenfolge | Der Name der aktuellen Suche. |
Windows Vista mit SP1 unter Verwendung des Protokolls search:
Windows Vista mit SP1 verfügt über mehrere Einstiegspunkte, von denen das "search:"-Protokoll bezeichnet wird. Diese Einstiegspunkte werden unten sowie die jeweils zugeordnete allgemeine Syntax beschrieben.
| Suchprotokolleinstiegspunkt | Standort | Abfrage aufgerufen |
|---|---|---|
| Überall suchen | Startmenü | search:query=<Suchbegriff> |
| Überall suchen | Windows-Explorer | search:query=<Suchbegriff>&10000= location:<LOCATION> |
| WINDOWS-TASTE+F | Überall | Suche: |
| STRG+F | Windows-Explorer | search:query=<Suchbegriff>&10000= location:<LOCATION> |
| F3 | Startmenü | Suche: |
| F3 | Windows-Explorer | search:query=<Suchbegriff>&10000= location:<LOCATION> |
Die Windows Vista mit Sp1-Suchprotokoll-Einstiegspunkten nutzen nicht alle möglichen Parameter im Suchprotokoll. Anwendungen, die nur suchprotokollaufrufe von Windows Vista mit SP1 verarbeiten, können die folgende Tabelle als Leitfaden für das Minimum verwenden, das sie implementieren müssen.
| Parameter | Von Windows verwendet? | Verwendung Windows Vista mit SP1 beim Aufrufen der Suche: |
|---|---|---|
| Abfrage | Ja | Der vom Benutzer eingegebene Abfragetext. |
| Krume | Ja | wird das location Argument verwendet, um anzugeben, woher die Abfrage stammt. |
| subquery | Ja | Die Ergebnisse des Subquery-Arguments werden als Bereich der zu durchsuchende Elemente verwendet. Dies wird normalerweise verwendet, wenn ein Benutzer eine SEARCH-MS-Datei für die Suche verwendet und dann die Standardanwendung für die Desktopsuche innerhalb dieser Suche aufgerufen hat. |
| inputlocale | Nein | Derzeit nicht verwendet. |
| keywordlocale | Nein | Derzeit nicht verwendet. |
| Syntax | Nein | Derzeit nicht verwendet. |
| stackedby | Nein | Derzeit nicht verwendet. |
| displayname | Nein | Derzeit nicht verwendet. |
Beispiele
Wenn ein Benutzer "Microsoft" im Startmenü ein gibt und auf Überall suchen klickt, wird der resultierende Suchprotokollaufruf vorgenommen:
search:query=microsoft&
Wenn ein Benutzer "Seattle" in Windows Explorer in C: MyFolder ein gibt und dann auf Überall suchen klickt, wird der folgende Aufruf mit Escapezeichen für \ ":" und "" \ vorgenommen:
search:query=seattle&crumb=location:C%3A%5CMyFolder
Registrieren der Anwendung, die das Protokoll verarbeitet
Da mehrere Anwendungen um das Suchprotokoll konkurrieren können, sollten Sie Ihre Anwendung während der Installation beim Feature Standardprogramme registrieren, damit der Benutzer die Standardeinstellung einfacher konfigurieren kann. Zusätzlich zu den Installationsverfahren, die normalerweise unter Windows XP ausgeführt werden, muss sich eine Windows Vista-basierte Anwendung beim Standardprogrammfeature registrieren, damit die Anwendung und benutzer die Standardeinstellungen nahtlos konfigurieren können.
Nach der Installation der erforderlichen Binärdateien auf dem Computer des Benutzers sollte Ihre Installationsroutine die folgenden allgemeinen Aufgaben ausführen:
- Schreiben Sie ProgIDs wie unten beschrieben auf HKEY _ LOCAL _ MACHINE. Beachten Sie, dass Anwendungen anwendungsspezifische ProgIDs für das Suchprotokoll erstellen müssen.
- Anspruch auf Zuordnung des Suchprotokolls auf Computerebene.
- Registrieren Sie die Anwendung bei Standardprogrammen,wie unter Registriereneiner Anwendung für die Verwendung mit Standardprogrammen erläutert, als Kandidat für das Suchprotokoll.
Registrierungseinträge
Im Folgenden finden Sie Beispiele für die erforderlichen Registrierungseinträge für eine fiktive Desktopsuchanwendung, Contoso Search.
HKEY_LOCAL_MACHINE
SOFTWARE
Classes
contoso-search
URL Protocol = ""
HKEY_LOCAL_MACHINE
SOFTWARE
Classes
contoso-search
DefaultIcon
(Default) = %ProgramFiles%\Contoso\Search\contososearch.exe,-7
HKEY_LOCAL_MACHINE
SOFTWARE
Classes
contoso-search
shell
open
command
(Default) = %ProgramFiles%\Contoso\Search\contososearch.exe %1
HKEY_LOCAL_MACHINE
SOFTWARE
RegisteredApplications
Contoso Search = "Software\\Contoso\\Search\\Capabilities"
HKEY_LOCAL_MACHINE
SOFTWARE
Contoso
Search
Capabilities
ApplicationName = "Contoso Search Test App"
ApplicationDescription = "Contoso search is a great new desktop search application"
HKEY_LOCAL_MACHINE
SOFTWARE
Contoso
Search
Capabilities
UrlAssociations
search = "contoso-search"