Поделиться через


Создание Подключение поиска для обработчика протокола

Windows Обозреватель управляет созданием соединителя поиска для обработчика протокола с помощью записей раздела реестра. С помощью реестра и разработчиков, и третьих сторон можно включить новые и устаревшие обработчики протоколов для участия в поиске Windows 7.

Этот раздел организован следующим образом:

Сведения о Подключение орах поиска для обработчиков протоколов в Windows 7

В Windows 7 поиски из меню "Пуск" или Windows Обозреватель включают только файлы в индексированных расположениях, а также элементы, отличные от файловой системы, такие как удаленные хранилища данных или элементы обработчика протокола, имеющие соединитель поиска. Помимо включения элементов обработчика протокола в область меню "Пуск" и поиска оболочки, соединитель поиска позволяет меню "Пуск" группировать элементы обработчика протокола вместе в результатах меню "Пуск" с результирующей выгодой, что пользователь может щелкнуть заголовок группы и просмотреть результаты только обработчика протокола. Кроме того, пользователь может перейти в папку поиска , открыть файл соединителя поиска и выполнить поиск, содержащий только элементы из определенного обработчика протокола, связанного с этим соединителем поиска.

Когда пользователь сначала запускает приложение, которое регистрирует обработчик протокола, Windows Обозреватель создает файл соединителя поиска (.search Подключение or-ms) для обработчика протокола в папке поиска пользователя. Приложения с обработчиками протокола могут отключить это поведение или настроить имя и описание соединителя поиска обработчика протокола.

Примечание.

Расположение папки поиска пользователя — %userprofile%\Поиск или FOLDERID_SavedSearches. GUID для FOLDERID_SavedSearches — {7d1d3a04-debb-4115-95cf-2f29da2920da}.

 

Windows Обозреватель управляет созданием соединителя поиска для обработчика протокола с помощью записей раздела реестра, описанных в следующих разделах:

Примечание.

Нет программных средств для создания соединителя поиска для обработчика протокола. Они должны быть настроены через реестр.

 

Разделы реестра и их возможные значения описаны в следующей таблице. Обработчик протокола может заполнить некоторые или все эти разделы реестра, где <протокол> заменяется фактическим именем протокола, например MAPI, file или csc.

Раздел реестра Возможные значения Тип Комментарии
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Search\PHSearch Подключение ors\<protocol>\Version Не существует (по умолчанию). В противном случае это значение равно 1 или больше. REG_DWORD Это значение используется для обнаружения изменений в регистрации шаблонов расположения для корней поиска, которые уже обработаны. Если не существует, используйте значение 0 в качестве значения по умолчанию. Кроме того, добавите версию, чтобы сообщить Windows Обозреватель, что соединитель поиска должен быть создан, так как установлена более новая версия обработчика протокола.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Search\PHSearch Подключение ors\protocol>\<DoNotCreateSearch Подключение or Не существует (по умолчанию). В противном случае задано значение 1. REG_DWORD Если он не существует, создайте файл searchconnector-ms в папке поиска. Если значение 1, пометьте как обработанные и не делайте ничего.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Search\PHSearch Подключение ors\<protocol>\Default\Description Локализованная строка, содержащая описание соединителя поиска. REG_SZ Необязательно. Он используется в элементе Description файла .searchconnector-ms.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Search\PHSearch Подключение ors\<protocol>\Default\Name Локализованная строка для имени соединителя поиска. Используется в качестве имени файла .searchconnector-ms. REG_SZ Каждое расположение должно иметь уникальное имя. В отсутствие этого значения будет использоваться отображаемое имя, предоставленное интерфейсом IShellFolder обработчика протокола.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Search\PHSearch Подключение ors\<protocol>\Default\FolderType ИДЕНТИФИКАТОР GUID, определяющий FOLDERTYPEID для применения к соединителю поиска. REG_SZ Необязательно. Используется в элементе folderType файла .searchconnector-ms, чтобы указать, какие шаблоны следует использовать для отображения результатов. Например, значение GUID FOLDERTYPEID_Documents.

 

Отключение Подключение создания обработчика протокола

Если приложение предоставляет элементы с помощью обработчика протокола для использования в самом приложении, и вы не хотите предоставлять элементы через оболочку (в меню "Пуск" и поиске в Windows Обозреватель), необходимо отключить создание соединителя поиска для обработчика протокола.

Чтобы отключить создание соединителя поиска, задайте для DoNotCreateSearch Подключение or значение 0x00000001(1), как показано в следующем примере раздела реестра.

HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows Search
            PHSearchConnectors
               <protocol>
                  DoNotCreateSearchConnectors

Если для параметра DoNotCreateSearch Подключение ors задано значение 1, рекомендуется предоставить свойство System.Shell.OmitFromView для каждого элемента, доступного обработчиком протокола, и задать значение этого свойства true. Это приведет к тому, что элементы обработчика протокола не будут отображаться в группе "Файлы меню "Пуск".

Если аргументы DoNotCreateSearch Подключение or имеет значение нулю, то Windows Обозреватель создаст соединитель поиска для обработчика протокола, а элементы обработчика протокола будут возвращены в меню "Пуск" и поиске в Windows Обозреватель.

Настройка имени, описания или folderType для поиска обработчика протокола Подключение or

Имя соединителя поиска используется не только для идентификации соединителя поиска в папке поиска , но и в качестве заголовка группы результатов в меню "Пуск ". Поэтому важно указать описательное имя соединителя поиска. Если имя не указано в разделе реестра, по умолчанию Windows Обозреватель использует имя, предоставленное интерфейсом IShellFolder для корневого и пустого описания обработчика протокола. Имя по умолчанию можно переопределить с помощью записи раздела реестра без необходимости переименовать интерфейс IShellFolder. Хотя это не так видно, как имя соединителя поиска, можно также переопределить описание соединителя поиска, предоставив собственное описание.

Чтобы переопределить имя или описание по умолчанию, задайте записи, как показано в следующем примере реестра.

HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows Search
            PHSearchConnectors
               <protocol>
                  Default
                     Name
                     Description

Кроме того, для записи FolderType можно задать один из идентификаторов GUIID FOLDERTYPEID . Значение должно быть фактическим ИДЕНТИФИКАТОРом GUID, а не его именем. Например, {94d6dcc-4a68-4175-a374-bd584a510b78} вместо FOLDERTYPEID_Music. GUID для FOLDERTYPEID можно получить в файле заголовка Shlguid.h в пакете SDK для Windows.

HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows Search
            PHSearchConnectors
               <protocol>
                  Default
                     FolderType = {94d6ddcc-4a68-4175-a374-bd584a510b78}

Использование перенаправления строк реестра

Вы можете использовать перенаправленную строку , чтобы убедиться, что имя, указанное для соединителя поиска, может быть локализовано. Можно включить локализованные строки для разделов реестра имен и описания, а не вводить фактическую строку в реестр.

Чтобы включить локализуемую строку для значений Name или Description, задайте значение, как показано в следующем примере раздела реестра.

HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows Search
            PHSearchConnectors
               <protocol>
                  Name = @dllname.dll,-resourceID

Локализованная строка принимает следующий формат:

  • @dllname.dll,-resourceIDГде:
    • @dllname.dll — путь к библиотеке DLL, содержащей строковый ресурс.
    • resourceID — это целочисленный идентификатор ресурса строки.

Формат косвенной строки и непрямая строка, добавленная с модификатором версии, описана в функции SHLoadIndirectString.

Восстановление удаленного поиска обработчика протокола Подключение or

Так как соединители поиска являются файлами на компьютере пользователя, их можно ошибочно удалить. Чтобы восстановить все удаленные соединители поиска обработчика протокола, восстановите библиотеки по умолчанию. Для этого откройте Windows Обозреватель, щелкните правой кнопкой мыши папку библиотек и выберите "Восстановить библиотеки по умолчанию".

screen shot showing the restore default libraries menu option

Дополнительные ресурсы

Концептуальной

Общие сведения о обработчиках протоколов

Разработка обработчиков протоколов

Уведомление об индексе изменений

Добавление значков и контекстных меню

Пример кода: расширения оболочки для обработчиков протоколов

Установка и регистрация обработчиков протокола

Отладка обработчиков протоколов