URL-Formatierungsanforderungen
Ab Windows 7 verbleiben Inkonsistenzen bei der Behandlung und Analyse von URLs. Dieses Thema enthält eine eingeschränkte Anleitung zum Navigieren in Inkonsistenzen in Datei-URL-Formaten.
Dieses Thema ist wie folgt organisiert:
- URL-Formate in Verwendung
- Schrägstrichrichtung, nach trailing star und trailing slash sensitivity
- URL-Formate nach API und Abfrage
- Zugehörige Themen
URL-Formate in Verwendung
Protokolle von Drittanbietern sind dafür verantwortlich, ihr URL-Format und Abfragen so zu definieren, dass sie ihren Standards entsprechen. Beispielsweise unterstützt Microsoft Outlook Ordnernamen mit beliebigen Zeichen, einschließlich derer, die in URLs, z. B. dem Zeichen, unzulässig "?" sind. Der MAPI-Protokollhandler führt eine eigene URL-Codierung seiner URLs durch. Daher speichert der Index anstelle von , und Outlook muss dies beim Erstellen "%3F" "?" von Abfragen berücksichtigen.
Die verschiedenen Formate sind in der folgenden Tabelle aufgeführt und erhalten jeweils einen Buchstabenbezeichner, um später in diesem Thema darauf zu verweisen.
| ID | Lokale Datei-URL oder Remotedatei | Beispiel |
|---|---|---|
| Ein | Lokal | file:///c: \ \ Testbeispiel\ |
| B | Lokal | file:c:/test/example/ |
| C | Lokal | c: \ \ Testbeispiel\ |
| D | Remote | \ \ file:///-Serverfreigabe \\ |
| E | Remote | file://server/share/ |
| F | Remote | \\\Serverfreigabe\ |
Schrägstrichrichtung, nach trailing star und trailing slash sensitivity
In Windows Suche gibt es größtenteils keine Empfindlichkeit gegenüber der Schrägstrichrichtung. Wenn das Format c:\test\example akzeptiert wird, wird auch c:/test/example akzeptiert. Obwohl SCOPE im Allgemeinen keine Schrägstrichrichtung beachtet, ist die Schrägstrichrichtung im Fall des Remote-URL-Formats F nicht zu sehen. Daher funktioniert Scope = '//server/share' nicht.
Die einzige API, die auf nach trailende Sterne reagieren und zwischen c:\test\ und unterscheidet, c:\test\* ist ISearchCrawlScopeManager. Wenn eine Ausschlussregel für vorhanden ist, wird das c:\test\* c:\test URL-Verzeichnis selbst weiterhin indiziert. Wenn die Ausschluss-URL jedoch ist, wird das c:\test\ c:\test URL-Verzeichnis selbst nicht indiziert.
Es gibt zwei Stellen, an denen Windows Suchfunktion auf nachgeschlagene Schrägstriche reagieren kann: ItemUrl- und Path-Abfragen. Wenn ein Verzeichnis vorhanden ist, behandelt Windows Search anders c:\test c:\test\ als für c:\test Prädikate wie path = 'c:\test' und System.ItemUrl = 'c:\test' . Das Prädikat würde z. B. mit dem Verzeichnis übereinstimmen, aber nicht aufgrund des nach folgenden path='file:c:/test' c:\test path='file:c:/test/' Schrägstrichs.
URL-Formate nach API und Abfrage
Url-Formate lokaler Dateien, die von ausgewählten APIs und Abfragen akzeptiert werden, sind in der folgenden Tabelle aufgeführt. Die Formate sind einem Buchstaben (A bis F) zugeordnet, dessen Bedeutung im Abschnitt"URL-Formate in Verwendung"weiter oben in diesem Thema angegeben wurde.
| API oder Abfrage | Format A | Format B | Format C |
|---|---|---|---|
| ISearchCrawlScopeManager | J | N | J |
| IGatherNotifyInline::OnDataChange | J | J | J |
| ISearchCatalogManager::ReindexMatchingURLs | J | J | J |
| ISearchCatalogManager::ReindexSearchRoot | J | N | N |
| ISearchCatalogManager2::P izeMatchingURLs | J | J | J |
| Scope= | N | J | J |
| Directory= | N | J | J |
| ItemUrl= | N | J | J |
| Path= | N | J | J |
Url-Formate für Remotedatei, die von ausgewählten Abfragen akzeptiert werden, sind in der folgenden Tabelle aufgeführt.
| Abfrage | Format D | Format E | Format F |
|---|---|---|---|
| ISearchCrawlScopeManager | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend |
| IGatherNotifyInline::OnDataChange | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend |
| ISearchCatalogManager::ReindexMatchingURLs | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend |
| ISearchCatalogManager::ReindexSearchRoot | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend |
| ISearchCatalogManager2::P rioritizeMatchingURLs | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend |
| Scope= | J | J | J |
| Directory= | J | J | J |
| ItemUrl= | J | J | J |
| Path= | J | J | J |