Добавление панелей Explorer

В этом руководстве показано, как добавить панель Explorer в Windows Internet Explorer. Если на панель Explorer также необходимо добавить кнопку панели инструментов, см. руководство Добавление кнопок панели инструментов.

  • Требования и зависимости 
  • Действия по реализации 
  • Связанные разделы

Требования и зависимости

Для добавления пунктов в меню «Сервис» в Internet Explorer необходимо уметь работать с реестром. Необходимо также знать основные принципы объектов полосы. Дополнительные сведения об объектах полосы см. в документации по API оболочки Windows, входящей в пакет Windows SDK.

Описанный ниже способ реализации применим для Microsoft Internet Explorer 5 или более поздней версии. Сведения о реализации панелей Explorer в Internet Explorer 4.0 см. в документации по объектам полосы, входящей в пакет WindowsSDK.

Действия по реализации

Ниже приведен перечень действий, необходимых для добавления панели Explorer в Internet Explorer.

К значкам и строкам, хранящимся внутри ресурса, можно обращаться, указывая путь к ресурсу и относительный идентификатор в формате «путь, код_ресурса». Например, чтобы воспользоваться строковым ресурсом 123 в файле Example.dll, необходимо указать «Example.dll, 123».

Примечание.  

В этом руководстве объясняется, как добавить панель Explorer для всех пользователей. Чтобы произвести настройки для отдельного пользователя, в приведенных ниже действиях замените HKEY_LOCAL_MACHINE на HKEY_CURRENT_USER.

  1. Создайте допустимый идентификатор GUID.
  2. Создайте новый раздел реестра с именем, соответствующим GUID, в разделе:

    HKEY_CLASSES_ROOT\CLSID\

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>

    <Ваш GUID> — это допустимый GUID, созданный при выполнении действия 1.

    В качестве значения раздела по умолчанию необходимо указать имя панели Explorer в меню «Вид».

  3. Создайте новый раздел с именем ImplementedCategories в разделе:

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Implemented Categories

  4. Создайте новый раздел с именем, соответствующим идентификатору категории (CATID) для типа создаваемой панели Explorer. Этот идентификатор может иметь одно из следующих значений.

    CATID Описание
    {00021494-0000-0000-C000-000000000046} Горизонтальная панель Explorer
    {00021493-0000-0000-C000-000000000046} Вертикальная панель Explorer

    Результат должен выглядеть следующим образом.

    //для горизонтальной панели Explorer

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\

        Implemented Categories\{00021494-0000-0000-C000-000000000046}

    //для вертикальной панели Explorer

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\

        Implemented Categories\{00021493-0000-0000-C000-000000000046}

  5. Создайте новый раздел с именем InProcServer32 в разделе:

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\InProcServer32

    В качестве значения раздела по умолчанию укажите полный путь к файлу Shdocvw.dll для HTML-страниц или DLL-файлу панели Explorer.

  6. Создайте строковый параметр ThreadingModel в разделе:

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\InProcServer32

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\InProcServer32\ThreadingModel

    В качестве значения параметра ThreadingModel укажите «Apartment».

  7. Создайте новый раздел с именем Instance в разделе:

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Instance

  8. Это действие необходимо для панелей Explorer, в которых отображаются HTML-страницы. В противном случае это действие является необязательным. Создайте строковый параметр CLSID в разделе:

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Instance\

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Instance\CLSID

    Для параметра CLSID задайте значение {4D5C8C2A-D075-11d0-B416-00C04FB90376}.

  9. Создайте новый раздел с именем InitPropertyBag в разделе:

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Instance

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Instance\InitPropertyBag

  10. Это действие необходимо для панелей Explorer, в которых отображаются HTML-страницы. В противном случае это действие является необязательным. Создайте строковый параметр Url в разделе:

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Instance\InitPropertyBag

    Результат должен выглядеть следующим образом.

    HKEY_CLASSES_ROOT\CLSID\<Ваш GUID>\Instance\InitPropertyBag\Url

    В качестве значения параметра Url укажите путь к HTML-файлу с содержимым панели Explorer.

  11. Удалите следующие записи реестра.

    HKEY_CLASSES_ROOT\Component Categories\

        {00021493-0000-0000-C000-000000000046}\Enum

    HKEY_CLASSES_ROOT\Component Categories\

        {00021494-0000-0000-C000-000000000046}\Enum

  12. Необязательное действие. Создайте новый раздел реестра с именем, соответствующим GUID, созданному при выполнении действия 1, в разделе:

    HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Explorer Bars

    HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Explorer Bars\<Ваш GUID>

  13. Необязательное действие. Создайте двоичный параметр BarSize в разделе:

    HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Explorer Bars\<Ваш GUID>

    Результат должен выглядеть следующим образом.

    HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Explorer Bars\<Ваш GUID>\BarSize

    В качестве значения параметра BarSize укажите 8-байтовое двоичное число в шестнадцатеричной нотации, определяющее размер панели Explorer по умолчанию. Значение интерпретируется как размер в пикселях. Поэтому значение «97 00 00 00 00 00 00 00» задает размер панели по умолчанию, равный 151 пикселей.

Связанные разделы