Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Windows Search SDK biztosít egy interoperabilitási szerelvényt, amely lehetővé teszi, hogy a Windows Search és más programok által elérhető komponensobjektum-modell (COM) objektumokkal működjön együtt a felületek és osztályok kezelése során, kezelt kód használatával. Az interopabilitási összeállítást a Microsoft digitálisan aláírta, és megtalálható a Windows Search minták.
Ez a témakör a következőképpen van rendszerezve:
- A Windows API CodePack használata
- Kapcsolódó témakörök
A Windows API CodePack használata
Ha a Microsoft .NET-környezetben dolgozik, használja a Microsoft .NET-keretrendszerhez készült Windows API Code Pack a keresési eredmények lekéréséhez, vagy csak tallózzon a névtérben. A Microsoft .NET-keretrendszerhez készült Windows API Code Pack olyan Shell-elemek gyűjteményét biztosítja, amelyek lényegében a natív IShellItem felületkörül burkolók. Átfuttathatja ezt a gyűjteményt, és lekérheti a különböző tulajdonságértékeket, hasonlóan ahhoz, ahogyan az eredményeket egy táblában számba venné egy Objektum csatolása és beágyazása adatbázis (OLE DB) lekérdezésből.
Az alábbi kódrészlet bemutatja, hogyan lehet iterálni a keresési elemek között, és hogyan szerezheti be az egyes elemek tulajdonságértékeit.
foreach (ShellObject so in KnownFolders.SavedSearches)
{
searchFolder = new ShellSearchFolder(finalSearchCondition, (ShellContainer)so);
List<ShellObject> items = new List<ShellObject>();
foreach (ShellObject so2 in searchFolder) items.Add(so2);
}
Indexeredmények elérése
Az indexeredményeket az OLE DB-ben vagy a Shell-adatmodellben érheti el. Mindkét megközelítésnek vannak előnyei és hátrányai. Az egyik előnye, hogy az OLE DB és a strukturált lekérdezési nyelv (SQL) ismerős az adatbázis-programozók számára. További előnye, hogy jobban szabályozható a teljesítmény, ha csak az indexelőt kérdezi le, és további funkciókhoz, például a korábbi eredmények gyors megkeresésének lehetősége egy új sorkészletben.
A Shell-adatmodell előnye az, hogy képes különböző információforrások, például az OpenSearch, absztrahálására, és hozzáférést biztosít további funkciókhoz, mint például a miniatűrök és a tulajdonságkezelők. A Shell-objektummodell nem igényel speciális esettámogatást a nem fájlnévbeli eredményekhez, például a levelezési elemekhez és a OneNote-eredményekhez, valamint a felhasználó indexében található elemekhez sem. Vegye figyelembe, hogy a Shell KNOWNFOLDERID a helyi indexelt tartalom ismert mappa hatóköre. További információ a Shell-adatforrások létrehozásáról: Az alapszintű mappaobjektum-felületek implementálása.
Az OpenSearch adatforrásai nem érhetők el az OLE DB-n keresztül összevont keresés céljából a Windows 7-ben és újabb verziókban. Ezért azt javasoljuk, hogy fontolja meg egy LINQ-szolgáltató írását a Shell-névtérhez az OLE DB használata helyett az indexelő eredményeinek eléréséhez. További információ: útmutató: IQueryable LINQ-szolgáltató létrehozása.
Mintaalkalmazás a Windows API codepack használatával
Az alábbi képernyőkép a Microsoft .NET-keretrendszer Windows API Code Pack csomagjával létrehozott mintaalkalmazást ábrázolja.
Kapcsolódó témakörök
-
fogalmi
-
Egyéb erőforrások