(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Поставщики поиска: лучшие практики по установке значений по умолчанию

Источник: thevista

В сегодняшней статье мы расскажем о ряде способов по настройке заданного по умолчанию поставщика поиска. И, как в случае с ранее опубликованными рекомендациями и требованиями для разработки мы хотим помочь пользователям в управлении своим браузером.

Если вы создаете дополнение, которое изменяет параметры настройки поиска Internet Explorer или значения по умолчанию напрямую через системный реестр, ваше дополнение может привести к путанице и, как следствие, недовольству пользователя.

Всякий раз, когда программа пытается изменить заданный по умолчанию поставщик поиска напрямую через системный реестр (например, изменяя ключ реестра DefaultScope, как описано в в одной из предыдущих статей), IE8 прерывает изменение и просит пользователей его подтвердить:


Рис. 1: В этом диалоге, дополнение запрашивает изменение поставщика поиска, заданного по умолчанию, используя рекомендуемый API SetDefault и атрибуты. В данном случае приложение представляет собой панель Contoso Internet Toolbar.

Если различные поставщики поиска пытаются сбросить ключ реестра каждый раз при его изменении, это вызовет путаницу и помешает работе пользователя. Вышеприведенное диалоговое окно будет появляться каждый раз при изменении ключа напрямую.

IE8 позволяет осуществить настройку конфигурации через диалог "Настройки поставщика поиска по умолчанию", разработанный для этого сценария. Когда ваше дополнение использует API IOpenServiceManager (для установки провайдера поиска) и API SetDefault (для запроса установки по умолчанию), пользователи увидят более наглядную иллюстрацию происходящего. Эта прозрачность - важный аспект для осознанного контроля пользователем.

Фрагмент нижеприведенного кода показывает, как установить поставщик поиска с запросом на его установку по умолчанию, используя рекомендуемые API:

Код:
#include <windows.h>
#include <atlbase.h>
#include <openservice.h>

    HRESULT hr = E_FAIL;
    BOOL fComInitialized = FALSE;

    if (S_OK == CoInitialize(NULL))
    {
        fComInitialized = TRUE;

        //Открывает идентификатор менеджера OpenService
        CComPtr<IOpenServiceManager> spManager;
        hr = spManager.CoCreateInstance(CLSID_OpenServiceManager);

        if (SUCCEEDED(hr))
        {
            CComPtr<IOpenService> spService;

            //Устанавливает поставщик поиска
            //URL-OF-SERVICE: See http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_description_elements
            hr = spManager->InstallService(URL-OF-SERVICE, &spService);

            if (hr==S_OK)
            {
                //Запрашивает у пользователя смену поставщика поиска по умолчанию
                hr = spService->SetDefault(TRUE, NULL);
            }
        }
    }

    if (fComInitialized)
    {
        CoUninitialize();
    }

При вызове SetDefault API покажет вышеприведенный диалог (см. рис. 1), запрашивая у пользователя смену поставщика поиска по умолчанию. Пользователь может подтвердить или отвергнуть этот запрос. Если подтвердит, дополнение сможет изменить настройки по умолчанию. Если отвергнет, дополнение не сможет изменить пользовательские настройки по умолчанию. Пользователь может изменить настройки в любой момент, открыв окно управления дополнениями.

Если исполняемый файл, вызывающий SetDefault API, подписан соответствующим сертификатом, название программы и имя ее издателя будут отображаться в диалоговом окне "Настройки поставщика поиска по умолчанию", как показано выше на рис. 1. Код, вызывающий SetDefault, должен быть подписан.

Если ваше дополнение напрямую контролирует ключ реестра DefaultScope, пожалуйста, обновите свой код с использованием рекомендуемых API. Это позволит пользователю видеть диалог поставщика поиска по умолчанию лишь однократно и позволит установить полный контроль над настройкой по умолчанию, обеспечив соответствие рекомендациям по разработке дополнений.

Если вы являетесь новичком и желаете изучить, как предлагать пользователям свои службы или просто начать работу, ознакомьтесь со статьей "Расширяемость поставщиков поиска в Internet Explorer".

Ссылки по теме


 Распечатать »
 Правила публикации »
  Обсудить материал в конференции Microsoft »
Обсудить материал в конференции Дизайн, графика, обработка изображений »
Написать редактору 
 Рекомендовать » Дата публикации: 26.02.2010 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Подписка MSDN Operating Systems — оптимальный способ получить все, что необходимо для реализации сложного проекта приложения для Windows. Доступ к операционным системам Windows и Windows Server. Подписка MSDN Operating Systems позволяют тестировать .... Microsoft MSDN OS All Lng License/Software Assurance Pack OPEN 1 License No Level Qualified
Microsoft BizTalk Server Standard 2013 - Предназначен для предприятий, предъявляющих умеренные требования к объему обрабатываемых данных и масштабу развертывания. BizTalk Server 2013 предоставляет новые функции и обновления: обновлена поддержка платформ.. Microsoft BizTalk Server Standard 2013 R2 Single OLP 2 Licenses No Level CoreLic Qualified
Верcия для легализации для образовательного учреждения. Get Genuine Windows® Agreement for Academic (GGWA-A) - это простой и экономный способ лицензирования ОС на уже используемых ПК. GGWA-A позволяет приобрести лицензию на операционную систему и... Microsoft Windows SL 8.1 Russian Academic OPEN 1 License No Level Legalization Get Genuine
Предназначена для образовательных учреждений. Минимальная первоначальная покупка 5 лицензий. В течение двух лет после размещения первого заказа клиент сможет пользоваться полученной корпоративной скидкой при размещении следующих сколь угодно мелких... Microsoft Windows Server Standard 2012 R2 Russian Academic OPEN 1 License No Level 2 PROC
Удаленное (терминальное) подсключение к русской лицензии Windows Server любой версии для Одного Пользователя. Microsoft Windows Remote Desktop Services CAL 2012 Russian OPEN 1 License No Level User CAL
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
CubeX Duo - имеет 2 печатающие головки, в отличие от CubeX, что позволяет одновременно печатать двумя цветами, но при этом снизилась область построения (230 × 265 × 240 мм). CubeX Duo
Воспользуйтесь новыми стандартами в трехмерной печати! Четвертое поколение принтеров от компании MakerBot является лучшим настольным 3D принтером, предлагаемым в настоящее время на рынке.  С разрешающей способностью в 100 микрон и объемом печати 6700... MakerBot Replicator 2
Новый PICASO 3D Designer 1.2. PICASO 3D Designer (Красный)
Мировая классика, этот цвет один из самых темных и самый черный цвет в мире. Мы долго трудились над тем, чтобы сделать его наиболее насыщенно черным. Катушка ABS-пластика Myriwell 1.75 мм 1кг., черная
Sense имеет гибкую область сканирования и может захватить все, от кекса до  человека в полный рост, обрабатывая данные за секунды и мгновенно формируя файл для 3D печати. 3D сканер SENSE
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Утиль - лучший бесплатный софт для Windows
Краткие описания программ и ссылки на них
Новые материалы
Один день системного администратора
Проект mic-hard - все об XP - новости, статьи, советы
 
Рассылки Maillist.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
Служба Windows Installer (287)
При очередной установке С++Builder выскочила ошибка: Не удается получить доступ к сужбе Windows...
 
Где можно найти «Пакет анализа» для Excel ? (54)
Коллеги, подскажите, где можно скачать надстройку к Excel под названием «Пакет анализа», после...
 
Получить имя пользователя Windows в ASP .NET(!) Реально? (4)
Получить имя пользователя Windows в ASP .NET(!) Реально? Я уже задавал подобный вопрос здесь:...
 
Помощь по MS Access (289)
Доброе время суток. Случайно оказался на этом сайте, искал статьи по OLAP. Вижу, что...
 
История русификации ПК (1)
Безусловно первой и главной системой русификации были программы Антона Чижова. Но наряду с этим...
 
 
 



    
rambler's top100 Rambler's Top100