URL-formázási követelmények

A Windows 7-ben az inkonzisztenciák továbbra is az URL-címek kezelésében és elemzésében maradnak. Ez a témakör korlátozott útmutatót nyújt a fájl URL-formátumokban található inkonzisztenciák navigálásához.

Ez a témakör a következőképpen van rendszerezve:

Használatban lévő URL-formátumok

A külső protokollok felelősek az URL-formátumuk meghatározásáért és a lekérdezések szabványnak megfelelő meghatározásáért. A Microsoft Outlook például támogatja az tetszőleges karaktereket tartalmazó mappaneveket, beleértve azokat is, amelyek nem engedélyezettek az URL-címekben, például a "?" karakterben. A MAPI protokollkezelő saját URL-kódolást végez az URL-címeken. Ezért az index "%3F" helyett "?" tárol, és az Outlooknak ezt figyelembe kell vennie a lekérdezések létrehozásakor.

A különböző formátumok az alábbi táblázatban szerepelnek, és mindegyikhez egy betűazonosító tartozik, amely a jelen témakör későbbi részében hivatkozik rájuk.

azonosító Helyi fájl URL-címe vagy távoli URL Példa
Egy Helyi file:///c:/test/example/
B Helyi file:c:/test/example/
C Helyi c:\test\example\
D Távoli file:///\\server\share\
E Távoli file://server/share/
F Távoli \\server\share\

 

Perjel iránya, záró csillag és záró perjel érzékenysége

A Windows Searchben a perjel irányára általában nincs érzékenység. Ha a formátum c:\test\example van elfogadva, akkor a c:/test/example is elfogadott. Bár SCOPE általában nem érzékennyé teszi a perjel irányát, távoli F URL-formátum esetén érzékeny a perjel irányára. Ezért Scope = '//server/share' nem működik.

Az egyetlen API, amely érzékeny a záró csillagokra, és amely megkülönbözteti a c:\test\ -t a c:\test\*-től, az a ISearchCrawlScopeManager. Ha c:\test\*kizárási szabálya van, akkor az URL-címtár c:\test továbbra is indexelni fog. Ha azonban a kizárási URL-cím c:\test\, az URL-címtár c:\test maga nem lesz indexelve.

A Windows Search két helyen érzékeny a záró perjelekre: ItemUrl és Path lekérdezések. Ha van könyvtár c:\test, a Windows Search a c:\test\ másként kezeli, mint c:\test az olyan predikátumok esetében, mint a path = 'c:\test' és a System.ItemUrl = 'c:\test'. A predikátum path='file:c:/test' például megfelelne a c:\testkönyvtárnak, de path='file:c:/test/' nem, a záró perjel miatt.

URL-formátumok API és lekérdezés szerint

A kiválasztott API-k és lekérdezések által elfogadott helyi fájl URL-formátumok az alábbi táblázatban találhatók. A formátumok egy betűhöz (A–F) vannak társítva, amelynek jelentését a jelen témakör korábbi, "URL-formátumok használata" szakaszában jelölték.

API vagy lekérdezés Formátum A B formátum C formázása
ISearchCrawlScopeManager Y N Y
IGatherNotifyInline::OnDataChange Y Y Y
ISearchCatalogManager::ReindexMatchingURLs Y Y Y
ISearchCatalogManager::ReindexSearchRoot Y N N
ISearchCatalogManager2::PrioritizeMatchingURLs Y Y Y
Hatókör= N Y Y
Címtár= N Y Y
ItemUrl= N Y Y
Elérési út= N Y Y

 

A kiválasztott lekérdezések által elfogadott távoli fájl URL-formátumok az alábbi táblázatban találhatók.

Lekérdezés D formátum E formátum F formátum
ISearchCrawlScopeManager N/A N/A N/A
IGatherNotifyInline::OnDataChange N/A N/A N/A
ISearchCatalogManager::ReindexMatchingURLs N/A N/A N/A
ISearchCatalogManager::ReindexSearchRoot N/A N/A N/A
ISearchCatalogManager2::PrioritizeMatchingURLs N/A N/A N/A
Hatókör= Y Y Y
Címtár= Y Y Y
ItemUrl= Y Y Y
Elérési út= Y Y Y

 

Mi van benne az indexben

Az indexelési folyamat a Windows Search-ben

A lekérdezési folyamat a Windows Searchben

Értesítési folyamat a Windows Search