#c# #windows #filter #indexing #handlers
#c# #Windows #Фильтр #индексирование #Обработчики
Вопрос:
Возможно ли расширить индекс поиска Windows с помощью обработчика фильтра, который работает с пользовательским форматом файла в .NET / C #?
Я хочу, чтобы индексация работала для некоторых пользовательских типов файлов. Для некоторых пользовательских форматов файлов мне нужно реализовать фильтр или обработчик свойств, чтобы содержимое файла и свойства были проиндексированы.
Я погуглил его, чтобы получить несколько примеров, относящихся к нему, но я не смог найти ничего полезного. Хотя я получил статью из msdn, в которой говорится о расширении индексов для Windows.
Руководство разработчика Windows Search — расширение индекса
Кто-нибудь может мне помочь начать?
Ответ №1:
Вам не следует этого делать.
Не потому, что я так говорю, а потому, что Microsoft использует интерфейс MSDN: IFilter.
Цитата :
Важно В Windows 7 и более поздних версиях фильтры, написанные в управляемом коде, явно блокируются. Фильтры ДОЛЖНЫ быть написаны в машинном коде из-за потенциальных проблем с управлением версиями CLR в процессе, в котором выполняются несколько надстроек.
Если вы решите не использовать Windows 7, вы все равно можете использовать одну из фреймворков реализации, таких как iFilterCode, для ее создания. Но ему придется постоянно проходить Interop, что является довольно приличным снижением скорости.
Комментарии:
1. Это нормально делать, пока вы используете .net 4.0
2. Я изучал это в прошлом и не видел никаких упоминаний об этом. Где вы это видели?
3. Большая часть документации устарела, но веб-поиск покажет, что то, что я утверждаю, верно.
4. @jaapjan: Сэр, я просмотрел указанную статью перед публикацией этого вопроса, и у меня возникли те же сомнения, но они предоставили там пример на C #, который использует службу индексирования Microsoft для поиска указанного слова в каталоге, созданном в службе индексирования Microsoft.
5. 1, я помню, что читал то же самое даже без упоминания Windows 7 — просто «IFilter должен быть в неуправляемом коде».
Ответ №2:
Я полагаю, что Acrobat предоставляет интерфейс IFilter, и я могу использовать его для поиска внутри PDF-файлов с помощью полнотекстового поиска MS SQL Server.
Комментарии:
1. Я знаю это, сэр, но я хотел использовать этот интерфейс IFilter (или любую другую вещь, если уж на то пошло) для любого пользовательского формата файла и расширить индексацию в Windows. Спасибо.
2. используете ли вы «Поиск на рабочем столе Windows»?
3. @Aaron: Сэр, я хотел создать обработчик фильтра на C #, который ищет содержимое в любом пользовательском формате файла, вот и все.
4. @Aaron: Windows Search (в Windows vista и windows7) заменяет Windows Desktop Search (WDS), который был доступен в качестве надстройки для Windows XP и Windows Server 2003. В основном я хочу добавить обработчик фильтра к этому поиску Windows. В любом случае спасибо.
5. Я просто думаю, что Microsoft Search ОТСТОЙ. Раньше я мог перейти «Пуск», выполнить поиск в Korn .mp3 — теперь эта же функциональность больше не работает.