ПредишенСледващото

Начало> Boom ъгъл> навигационния панел на Explorer от вътрешната страна: функционирането и съставът

В продължение на предишната статия, както обещах, ще говорим за добавяне, изтриване и крие контролите на ActiveX в навигационен панел на Windows Explorer. Стойността на този материал е да илюстрира как навигационна лента Explorer - с какво принцип тя се формира, както и какви параметри ActiveX елементи позволяват и да забранят тяхното картографиране на различна виртуална система папка. Без него предишния ми пост не би била пълна.

От практическа гледна точка, аз лично не виждам никакъв смисъл да порите над системния регистър, когато всичко, което искате, можете да поставите преки пътища в папка "Любими",. Очаквайте да видите материалните овациите не се показват в лентата за навигация,% S и да получите адреналинът на "проникна Венда" Аз разочаровам - поста на технически. Ето защо, прочетете до края на шоуто котка.

По подразбиране тази именно пространство съдържа следното:

  • библиотека;
  • Търсене на папката;
  • панел за управление;
  • споделени папки;
  • папка "Документи";
  • личната папка на текущия потребител;
  • количка за пазаруване;
  • Офлайн файловете;
  • обект "Устройства и принтери";
  • номер на услуга на ActiveX, например, търсенето на RSS-емисии или MAPI папка.

Навигационна лента проводник вътре функциониране и състав

Необходимо, но не достатъчно условие за присъствие в навигационния екран Explorer ActiveX-обект, принадлежащ на областта на имената на работния плот, е да има празен низ стойност в раздел PinToNameSpaceTree ShellFolder раздел HKEY_CLASSES_ROOT \ CLSID "GUID" съответстващи.
Например, папката GUID "My Computer" -. подраздел
там е празен параметър низ PinToNameSpaceTree. и той GUID присъства в областта на имената на работния плот:

Имам скрит мотив, който единствен параметър PinToNameSpaceTree не може да бъде достатъчно. Ето защо.

1. За да започнете, аз ще обясня защо има подраздел ShellFolder. Наличието на този раздел се посочва, че сегашната ActiveX обект има IShellFolder интерфейс. В MSDN е описано, както следва:

IShellFolder реализира интерфейс за обекти, които се простират пространството от имена на черупка.

Virutalnaya папка, грубо казано.

2. Някои ActiveX контроли са WantsParseDisplayName раздел параметър ShellFolder. Този низ параметър с нулева стойност показва, за да скрие името (името на [псевдо] файловата система, която се показва в Windows Explorer) ActiveX обект. Елементи без титла в лентата за навигация не се показват.

3. Сега най-забавната част. Далеч по-важна роля, изпълнявана от стойността атрибути тип DWORD в раздел ShellFolder. Той съдържа общата стойност на набор от флагове SFGAO. Моля обърнете се към този набор от MSDN.
Този набор от флагове, показващи списъка атрибут, който трябва да има обект, и пряко въздействие върху поведението му. Ето, например, да съответства на стойността на SFGAO_CANLINK 0x00000004 флаг. и това означава, че може да се създаде един обект за бърз достъп.

Вземете обекта "Всички задачи", по-известен като GodMode. Той не се появи нито в лентата за навигация или в контролния панел - навсякъде. Нека разгледаме какво е снабден с флаговете на ActiveX.
GodMode елемент е определен в системата ActiveX списъка в раздел

Навигационна лента проводник вътре функциониране и състав

Това е общата стойност, състояща се от следните флагове:

SFGAO_CANLINK - обект, можете да създадете пряк път.
SFGAO_NONENUMERATED - скриете обект на прехвърляне, т.е. никъде покаже.
SFGAO_FOLDER - обектът е [псевдо] папка.
Ключът тук - SFGAO_NONENUMERATED. Той е този флаг не позволява на дисплея ActiveX контрол "Всички задачи" в навигационния екран на Windows Explorer или в контролния панел.

За да отключите тази позиция, трябва да:

След това, аплета "Всички задачи" е на разположение директно от контролния панел.

Навигационна лента проводник вътре функциониране и състав

Придобитите знания ви позволява да контролирате навигационна лента състав. Няколко практически примери илюстрират практиката на материала по-долу, чифт обхващат няколко аспекта на добавяне на нови елементи.

Както скрий стандартни елементи Explorer прозорец навигация

Хайде да отидем направо в раздел ShellFolder. Тук виждаме очаква параметър PinToNameSpaceTree. Ето го:

Навигационна лента проводник вътре функциониране и състав

Именно този параметър определя дали ActiveX елемент показва в навигационния екран на Explorer, или не. Премахване PinToNameSpaceTree определяне на точка "компютър", като по този начин тя се крие в навигационния екран. Стъпка по стъпка:

  • Вземи пълни права ключа на системния регистър
  • Премахване опция PinToNameSpaceTree.
  • Рестартирайте Explorer.

Компютърна изчезнала от лентата за навигация:

Навигационна лента проводник вътре функциониране и състав

Как да добавите контрол ActiveX в панела за навигация Windows Explorer, който се намира в района на имената на работния плот

Както можете да се досетите, това може да стане чрез добавяне на параметър низ в PinToNameSpaceTree ShellFolder -podrazdel ActiveX обект присъства в пространството на имената на работния плот. Като пример, добавяйки, анализира кошници.

  • Намерете CLSID Dump подходящ раздел ActiveX-обект "Кошница" и да го отворите в системния регистър.
    Навигационна лента проводник вътре функциониране и състав
  • Вземи пълните права на подраздел
  • Създаване на параметър низ PinToNameSpaceTree с празна стойност.
  • Рестартирайте Explorer.
    Навигационна лента проводник вътре функциониране и състав
  • Как да добавите персонализирано ActiveX-обект в панела за навигация на Explorer, а не в имената на десктоп пространство

    Като пример, ние добавяме пословичната GodMode. папка "Всички задачи".

    По този начин даваме възможност на ActiveX за визуализация.
  • След това създайте празен параметър раздел PinToNameSpaceTree:


    В резултат на това на първо и второ място ще получи нещо като това:

    Навигационна лента проводник вътре функциониране и състав

  • Сега трябва да добавите пространство от имена GodMode в работния плот, така че лентата за навигация започна да го разглежда "своите". За да направите това, създайте подраздел Това е достатъчно.
    Навигационна лента проводник вътре функциониране и състав
  • Рестартирайте Explorer.
  • Стартирайте Windows Explorer, ще откриете, че елемент на "Всички задачи" се показва на работния плот и в панела за навигация. Ако ние постигнахме втората, иконата на работния плот, ние нямаме нужда от него.
    Навигационна лента проводник вътре функциониране и състав

    Тя трябва да бъде премахнат.

    Малко теория
    Функцията "Икони" съществуващо в Windows 7 ви позволява да скриете иконите на дисплея на системата на работния плот, като мрежа, компютър, Home Group. Сега, когато знаем, че тези елементи в Windows 7 - е ActiveX елементи. Деактивирането на дисплея с икони на техническа гледна точка е операция, с параметри регистър конци

    Там могат да бъдат представени имена DWORD-параметри отговарят GUID-ам ActiveX-скрит обект и стойности: 0 - дисплей елемент, или 1 - неясен елемент. Този механизъм може да използвате скривалище от настолен елемент добавен в лентата за навигация.
    • Отиди до ключ на системния регистър
    • Създаване на нова стойност DWORD, тъй като името на параметъра, използвайки GUID скрит един ActiveX като стойност - единица.
      В нашия случай, тя ще изглежда така:

      Навигационна лента проводник вътре функциониране и състав

      Има един въпрос, колкото е възможно, дали да добавите абсолютно произволна директория на навигационната лента (не е фаворит, както и отделна единица). Те не разполагат с GUID-ите.

      GUID трябва да се генерира нов и уникален, можете да ето го HTTP // www.guidgenerator.com / онлайн-GUID-generator.aspx

      След това опишете директория КЛАСОВЕ като този

      И след това добавя, както е писано в статията.

      0_o. Благодаря ви, Сергей Tkachenko. Много полезна информация. И няма последствия от това няма, например, ако изтриете тази папка, изписани на ръка?

      @ Egor
      Тя просто се отвори, за да спрете лентата за навигация. Други ефекти няма да

      Сергей, моля помогнете регистрирате win7 64 ActiveX.

      За работата ви трябва.

      @Tur
      Аз не се намира. Дайте файл * .ocx?

      Но въпросът е как да се направи това на Win 8, а след това някои параметри не присъстват на всички, за които пишете.

      Нека да се справят с конкретни примери.

      Има ли начин да ги подредите в лентата за навигация?

      SortOrderIndex, DWORD тип, вие определяте реда на предметите показва в десетичен

      Свързани статии

    Подкрепете проекта - споделете линка, благодаря!