Udostępnij za pośrednictwem


Omówienie usługi Windows Search

Windows Search to platforma wyszukiwania pulpitu, która ma natychmiastowe możliwości wyszukiwania dla najczęściej używanych typów plików i typów danych, a deweloperzy innych firm mogą rozszerzyć te możliwości na nowe typy plików i typy danych.

Ten temat jest zorganizowany w następujący sposób:

Wprowadzenie

Windows Search jest standardowym składnikiem systemu Windows 7 i Windows Vista i jest domyślnie włączony. Usługa Windows Search zastępuje funkcję Windows Desktop Search (WDS), która była dostępna jako dodatek dla systemów Windows XP i Windows Server 2003.

Usługa Windows Search składa się z trzech składników:

Usługa Windows Search

WSS organizuje wyodrębnione cechy z kolekcji dokumentów. Protokół Windows Search umożliwia klientowi komunikowanie się z serwerem hostujący usługę WSS, zarówno w celu wystawiania zapytań, jak i umożliwienia administratorowi zarządzania serwerem indeksowania. Podczas przetwarzania plików usługa WSS analizuje zestaw dokumentów, wyodrębnia przydatne informacje, a następnie organizuje wyodrębnione informacje, aby właściwości tych dokumentów mogły być efektywnie zwracane w odpowiedzi na zapytania.

Kolekcja dokumentów, do których można wykonywać zapytania, składa się z wykazu, który jest jednostką najwyższego poziomu organizacji w usłudze Windows Search. Wykaz reprezentuje zestaw indeksowanych dokumentów, do których można wykonywać zapytania. Katalog składa się z tabeli właściwości, która zawiera tekst lub wartość oraz odpowiadającą im lokalizację (ustawienia regionalne) przechowywane w kolumnach tabeli. Każdy wiersz tabeli odpowiada oddzielnemu dokumentowi w zakresie wykazu, a każda kolumna tabeli odpowiada właściwości. Wykaz może zawierać odwrócony indeks (na potrzeby szybkiego dopasowywania wyrazów) i pamięć podręczną właściwości (w celu szybkiego pobierania wartości właściwości).

Proces indeksatora jest implementowany jako usługa systemu Windows uruchomiona na koncie LocalSystem i jest zawsze uruchomiona dla wszystkich użytkowników (nawet jeśli żaden użytkownik nie jest zalogowany), co umożliwia usłudze Windows Search wykonanie następujących czynności:

  • Zachowaj jeden indeks, który jest współużytkowany przez wszystkich użytkowników.
  • Zachowaj ograniczenia zabezpieczeń dotyczące dostępu do zawartości.
  • Przetwarzanie zapytań zdalnych z komputerów klienckich w sieci.

Usługa Wyszukiwania została zaprojektowana w celu ochrony środowiska użytkownika i wydajności systemu podczas indeksowania. Następujące warunki powodują, że usługa zmniejsza swoje działanie lub wstrzymuje indeksowanie:

  • Wysokie użycie procesora CPU przez procesy niezwiązane z wyszukiwaniem.
  • Wysoka szybkość działania systemu I/O, w tym odczyty i zapisy plików, operacje I/O pliku stronicowania i pamięci podręcznej plików oraz operacje I/O zamapowanego pliku.
  • Niska dostępność pamięci.
  • Niska żywotność baterii.
  • Mała ilość miejsca na dysku, który przechowuje indeks.

Platforma deweloperów

Preferowanym sposobem uzyskiwania dostępu do interfejsów API wyszukiwania i tworzenia aplikacji Windows Search jest użycie źródła danych Shell. Źródło danych powłoki to komponent używany do rozszerzania przestrzeni nazw powłoki i udostępniania elementów w repozytorium danych. Magazyn danych to repozytorium danych. Magazyn danych można uwidocznić w modelu programowania powłoki jako kontener, który używa źródła danych powłoki. Elementy w magazynie danych mogą być indeksowane przez system Windows Search przy użyciu programu obsługi protokołu.

Na przykład ISearchFolderItemFactory jest składnikiem, który może tworzyć wystąpienia źródła danych folderu wyszukiwania, które jest rodzajem "wirtualnego" źródła danych dostarczonego przez powłokę, które może wykonywać zapytania względem innych źródeł danych w przestrzeni nazw powłoki i wyliczać wyniki. Może to zrobić za pomocą indeksatora lub ręcznie wyliczając i sprawdzając elementy w określonych zakresach. Ten interfejs umożliwia skonfigurowanie parametrów wyszukiwania przy użyciu metod, które tworzą i modyfikują foldery wyszukiwania. Jeśli metody tego interfejsu nie są wywoływane, zamiast tego są używane wartości domyślne.

Dostęp do funkcji wyszukiwania systemu Windows pośrednio za pośrednictwem modelu danych powłoki jest preferowany, ponieważ zapewnia dostęp do pełnej funkcjonalności powłoki na poziomie modelu danych powłoki. Na przykład można ustawić zakres wyszukiwania na bibliotekę (która jest funkcją dostępną w systemie Windows 7 lub nowszym), aby używać folderów biblioteki jako zakresu zapytania. Usługa Windows Search agreguje wyniki wyszukiwania z tych lokalizacji, jeśli znajdują się w różnych indeksach (jeśli foldery znajdują się na różnych komputerach). Warstwa danych powłoki tworzy również bardziej pełny widok właściwości elementów, syntetyzując niektóre wartości właściwości. Zapewnia również dostęp do funkcji wyszukiwania dla magazynów danych, które nie są indeksowane przez usługę Windows Search. Na przykład można przeszukiwać urządzenia pamięci masowej Universal Serial Bus (USB), przenośne urządzenie korzystające z protokołu MTP lub serwer FTP (File Transfer Protocol) przy użyciu źródeł danych powłoki, które zapewniają dostęp do tych systemów pamięci masowej. Zapewnia to lepsze środowisko użytkownika.

Usługa Windows Search zawiera pamięć podręczną wartości właściwości używanych w implementacji usługi Windows Search Service (WSS). Te wartości właściwości można programowo odpytać, używając dostawcy OLE DB dla Windows Search lub za pomocą ISearchFolderItemFactory, który reprezentuje elementy w wynikach wyszukiwania i widokach na bazie zapytań. Usługa Windows Search zbiera i przechowuje właściwości emitowane przez programy obsługi filtrów lub procedury obsługi właściwości, gdy element taki jak dokument programu Word jest indeksowany. Ten magazyn jest odrzucany i odbudowywany podczas odbudowy indeksu.

Deweloperzy innych firm mogą tworzyć aplikacje korzystające z danych w indeksie za pomocą zapytań programistycznych i mogą rozszerzać dane w indeksie dla niestandardowych typów plików i elementów, które mają być indeksowane przez usługę Windows Search. Jeśli chcesz wyświetlić wyniki zapytania w Eksploratorze Windows, najpierw musisz zaimplementować źródło danych powłoki, a dopiero potem możesz utworzyć program obsługi protokołu w celu rozszerzenia indeksu. Jeśli jednak wszystkie zapytania są programowe (na przykład za pomocą OLE DB) i interpretowane przez kod aplikacji, a nie powłokę, przestrzeń nazw powłoki jest nadal preferowana, ale nie jest wymagana.

Procedura obsługi protokołu jest wymagana dla systemu Windows w celu uzyskania informacji o zawartości pliku, takich jak elementy w bazach danych lub niestandardowych typach plików. Chociaż usługa Windows Search może indeksować nazwę i właściwości pliku, system Windows nie ma informacji o zawartości pliku. W związku z tym takie elementy nie mogą być indeksowane ani uwidocznione w powłoce systemu Windows. Implementując niestandardową procedurę obsługi protokołu, można uwidocznić te elementy. Aby uzyskać listę programów obsługi zidentyfikowanych na podstawie scenariusza programisty, który próbujesz osiągnąć, zobacz "Omówienie programów obsługi" w Windows Search jako platforma programistyczna.

Notatka

Źródło danych powłoki jest czasami nazywane rozszerzeniem przestrzeni nazw powłoki. Obsługa jest czasami nazywana rozszerzeniem powłoki systemowej lub obsługą rozszerzenia powłoki systemowej.

 

Interfejs użytkownika

W systemie Windows Vista i nowszych funkcja Windows Search jest zintegrowana ze wszystkimi oknami Eksploratora Windows, aby uzyskać natychmiastowy dostęp do wyszukiwania. Dzięki temu użytkownicy mogą szybko wyszukiwać pliki i elementy według nazwy pliku, właściwości i zawartości pełnotekstowej. Wyniki można również filtrować dalej, aby uściślić wyszukiwanie. Oto kilka dodatkowych funkcji usługi Windows Search:

  • Natychmiastowe pole wyszukiwania w każdym oknie umożliwia natychmiastowe filtrowanie wszystkich elementów aktualnie w widoku. Błyskawiczne pola wyszukiwania są wyświetlane w menu Start, aby wyszukać programy lub pliki, a w prawym górnym rogu wszystkich okien Eksploratora Windows w celu filtrowania wyświetlanych wyników. Wyszukiwanie błyskawiczne jest również zintegrowane z innymi funkcjami systemu Windows, takimi jak Windows Media Player, w celu znalezienia powiązanych plików.
  • Dokumenty można oznaczyć słowami kluczowymi, aby pogrupować je według kryteriów niestandardowych zdefiniowanych przez użytkownika. Tagi to elementy metadanych przypisane przez użytkownika lub aplikacje, aby ułatwić znajdowanie plików na podstawie słów kluczowych, które mogą nie znajdować się w nazwie lub zawartości elementu. Na przykład zestaw obrazów może być oznaczony jako "Arizona Vacation 2009", aby można go było łatwo znaleźć później, wyszukując dowolne zawarte wyrazy.
  • Ulepszone nagłówki kolumn w widokach Eksploratora Windows umożliwiają sortowanie i grupowanie dokumentów na różne sposoby. Na przykład pliki można sortować według nazwy, daty modyfikacji, typu, rozmiaru i tagów. Dokumenty można również pogrupować zgodnie z dowolną z tych właściwości, a każda grupa może być filtrowana (ukryta lub wyświetlana) zgodnie z potrzebami.
  • Dokumenty mogą być ułożone według nazwy, daty modyfikacji, typu, rozmiaru i tagów. Stosy obejmują wszystkie dokumenty, które mają określoną właściwość i znajdują się w dowolnym podfolderze wybranego folderu.
  • Wyszukiwania można zapisać (do pobrania później), klikając przycisk Zapisz wyszukiwanie w okienku wyszukiwania w Eksploratorze Windows. Wyniki będą dynamicznie ponownie wypełniane na podstawie oryginalnych kryteriów po otwarciu zapisanego wyszukiwania. Aby uzyskać instrukcje, zobacz Zapisz wyniki wyszukiwania.
  • Programy obsługi podglądu i programy obsługi miniatur umożliwiają użytkownikom wyświetlanie podglądu dokumentów w Eksploratorze Windows bez konieczności otwierania aplikacji, która je utworzyła.

Wymagania wstępne techniczne

Przed rozpoczęciem czytania dokumentacji zestawu Windows Search SDK należy zapoznać się z podstawowymi pojęciami:

  • Jak zaimplementować źródło danych powłoki.
  • Jak zaimplementować procedurę obsługi.
  • Jak pracować w kodzie natywnym.

Źródło danych powłoki to składnik służący do rozszerzania przestrzeni nazw powłoki i uwidaczniania elementów w magazynie danych. W przeszłości źródło danych Shell było nazywane rozszerzeniem przestrzeni nazw Shell. Procedura obsługi jest obiektem modelu obiektów składowych (COM), który zapewnia funkcje elementu powłoki. Aby uzyskać listę obsług odnoszących się do scenariusza dewelopera, który próbujesz osiągnąć, zobacz "Omówienie obsług" w Windows Search jako platforma programistyczna.

Aby uzyskać więcej informacji na temat zestawu interoperacyjnego Windows Search SDK do pracy z obiektami COM udostępnianymi przez Windows Search oraz inne programy korzystające z kodu zarządzanego, patrz Korzystanie z kodu zarządzanego z danymi powłoki i Windows Search. Należy jednak pamiętać, że filtry, procedury obsługi właściwości i procedury obsługi protokołów muszą być zapisywane w kodzie natywnym. Jest to spowodowane potencjalnymi problemami z wersją środowiska uruchomieniowego języka wspólnego (CLR) w procesie, w ramach którego jest uruchamianych wiele dodatków. Deweloperzy, którzy są nowi w języku C++, mogą rozpocząć pracę z Centrum Programistów Visual C++ i Wprowadzenie do programowania w systemie Windows.

Pobieranie i zawartość zestawu SDK

Oprócz spełnienia wymienionych wymagań technicznych należy również pobrać windows SDK, aby uzyskać biblioteki usługi Windows Search. Przykłady kodu Windows Search zawierają przydatne przykłady kodu i bibliotekę współdziałania do tworzenia aplikacji w kodzie zarządzanym.

Dokumentacja zestawu Windows Search SDK

Zawartość dokumentacji zestawu Windows Search SDK jest następująca:

Usługa Windows Search zastępuje funkcję Windows Desktop Search (WDS), która była dostępna jako dodatek dla systemów Windows XP i Windows Server 2003. Usługa WDS zastąpiła starszą usługę indeksowania z poprzednich wersji systemu Windows z ulepszeniami wydajności, użyteczności i rozszerzalności. Nowa platforma programistyczna obsługuje wymagania, które tworzą bezpieczniejszy i stabilniejszy system. Chociaż nowa platforma zapytań nie jest zgodna z usługą Microsoft Windows Desktop Search (WDS) 2.x, filtry i procedury obsługi protokołów napisane dla poprzednich wersji usług WDS można zaktualizować w celu pracy z usługą Windows Search. Usługa Windows Search obsługuje również nowy system właściwości. Aby uzyskać informacje na temat filtrów, procedur obsługi właściwości i procedur obsługi protokołów, zobacz Rozszerzanie indeksu.

Usługa Windows Search jest wbudowana w system Windows Vista lub nowszy i jest dostępna jako aktualizacja redystrybucyjna usługi WDS 2.x w celu obsługi następujących systemów operacyjnych:

  • 32-bitowe wersje systemu Windows XP z dodatkiem Service Pack 2 (SP2).
  • Wszystkie wersje systemu Windows XP oparte na architekturze x64.
  • Windows Server 2003 z dodatkiem Service Pack 1 (SP1) lub nowszym.
  • Wszystkie wersje systemu Windows Server 2003 oparte na architekturze x64.

Systemy z tymi systemami operacyjnymi muszą mieć zainstalowaną usługę Windows Search w celu uruchamiania aplikacji napisanych dla usługi Windows Search.

Dodatkowe zasoby

Windows Search jako platforma programistyczna

Języki obsługiwane przez usługę Windows Search

Używanie kodu zarządzanego z danymi powłoki i Windows Search