Conductorul de navigație din interiorul funcției și al compoziției

Acasă> Colțul din colț> Bara de navigare din interior: funcție și compoziție

În cursul articolului precedent, așa cum am promis, vom vorbi despre adăugarea, eliminarea și ascunderea elementelor ActiveX în bara de navigare Explorer. Valoarea acestui material este de a ilustra modul în care bara de navigare Explorer - de ce principiu se formează, și ce parametri de elemente ActiveX permit și să interzică cartografierea lor într-un sistem diferit folder virtual. Fără acest lucru, postul meu anterior ar fi incomplet.







Din punct de vedere practic, eu personal nu văd nici un sens să pornească peste registru, atunci când ceva poate fi plasat în folderul "Favorite". Asteptati-va pentru a vedea urale materiale de la care apare în bara de navigare,% s și a obține adrenalina de „hack Venda“ dezamăgesc - postul de tehnic. Prin urmare, voi termina citirea sigiliului până la sfârșit.

În mod implicit, acest spațiu de nume conține:

  • bibliotecă;
  • directorul de căutare;
  • panou de control;
  • Dosarele partajate
  • dosarul Documente;
  • dosarul personal al utilizatorului curent;
  • Coșul de cumpărături;
  • fișiere offline;
  • obiect "Dispozitive și imprimante";
  • un număr de servicii ActiveX, de exemplu, căutarea după fluxuri RSS sau folderul MAPI.

Conductorul de navigație din interiorul funcției și al compoziției

Necesară, dar nu suficientă pentru prezența în panoul de navigare Explorer ActiveX-obiect aparținând zonei dintre numele desktop, este de a avea o valoare șir gol în secțiunea PinToNameSpaceTree ShellFolder secțiunea HKEY_CLASSES_ROOT \ CLSID „GUID“ corespunzătoare.
De exemplu, GUID din folderul My Computer este. În subsecțiunea
PinToNameSpaceTree este gol. și GUID în sine este prezent în spațiul de nume al desktop-ului:

Nu am putut să subliniez că parametrul PinToNameSpaceTree nu este suficient. Și de asta.

1. În primul rând, voi explica ce este subsecțiunea ShellFolder. Prezența acestei secțiuni înseamnă că obiectul curent ActiveX are o interfață IShellFolder. În MSDN, este descrisă după cum urmează:

IShellFolder implementează o interfață pentru obiectele care extind spațiile de nume ale shell-ului.

Un dosar virulent, aproximativ vorbind.

2. Unele controale ActiveX au parametrul WantsParseDisplayName din subcheia ShellFolder. Acest parametru de șir cu o valoare goală specifică ascunderea numelui (numele din sistemul de fișiere [pseudo] afișat în Explorer) al obiectului ActiveX. Articolele anonime din bara de navigare nu sunt afișate.

3. Acum cele mai interesante. Un rol mai important îl joacă parametrul Atribute din tipul DWORD din subsecțiunea ShellFolder. Acesta conține valoarea totală a steagurilor din setul SFGAO. Consultați acest kit pe MSDN.
Acest set de steaguri indică lista atributelor pe care un obiect ar trebui să le aibă și afectează în mod direct comportamentul acestuia. De exemplu, valoarea 0x00000004 corespunde drapelului SFGAO_CANLINK. și înseamnă că o comandă rapidă poate fi creată pe obiect.

Luați obiectul "Toate sarcinile", mai bine cunoscut sub numele de GodMode. Nu este afișat nici în bara de navigare sau în panoul de control - oriunde. Să luăm în considerare, ce steaguri acest ActiveX este furnizat.
Elementul GodMode este indicat în lista sistemului ActiveX din

Conductorul de navigație din interiorul funcției și al compoziției

Aceasta este o valoare sumară formată din următoarele pavilioane:

SFGAO_CANLINK - puteți crea o comandă rapidă către obiect.
SFGAO_NONENUMERATED - ascunde obiectul din enumerare, adică nu afișați nicăieri.
SFGAO_FOLDER - obiectul este un folder [pseudo].
Cheia aici este SFGAO_NONENUMERATED. Acest steguleț nu permite ca ActiveX să fie afișat în elementul "Toate sarcinile" din bara de navigare Explorer sau din panoul de control.

Pentru a debloca acest element, trebuie:

Apoi, aplicația "Toate sarcinile" devine disponibilă direct din Panoul de control.

Conductorul de navigație din interiorul funcției și compoziției






Aceste cunoștințe vă permit să gestionați compoziția barei de navigare. Câteva exemple practice pentru a ilustra materialul în practică, prezentate mai jos, evidențiază câteva aspecte legate de adăugarea de elemente noi.

Cum să ascundeți elementele standard din bara de navigare Explorer

Să mergem direct la secțiunea ShellFolder. Aici vedem parametrul așteptat PinToNameSpaceTree. Aici este:

Conductorul de navigație din interiorul funcției și al compoziției

Acest parametru specifică dacă controlul ActiveX este afișat în bara de navigare a exploratorului sau nu. Eliminați parametrul PinToNameSpaceTree din elementul "Computer", ascunzându-l astfel în panoul de navigare. Pas cu pas:

  • Obțineți drepturi complete la cheia de registry
  • Eliminați parametrul PinToNameSpaceTree.
  • Reporniți Explorer.

Computerul a dispărut din bara de navigare:

Conductorul de navigație din interiorul funcției și al compoziției

Cum se adaugă un element ActiveX în bara de navigare Explorer, aflată în spațiul de nume al Desktop-ului

După cum puteți ghici, acest lucru se poate face prin adăugarea unui parametru șir în PinToNameSpaceTree ShellFolder -podrazdel ActiveX obiect prezent în spațiul de nume desktop. De exemplu, să examinăm adăugarea Coșului de gunoi.

  • În CLSID Dump, localizați subcheia potrivită a obiectului ActiveX "Trash" și deschideți-o în registru.
    Conductorul de navigație din interiorul funcției și compoziției
  • Obțineți toate drepturile asupra subsecțiunii
  • Creați un parametru șir PinToNameSpaceTree cu o valoare goală.
  • Reporniți Explorer.
    Conductorul de navigație din interiorul funcției și al compoziției
  • Cum se adaugă un obiect ActiveX arbitrar în bara de navigare Explorer care nu se află în spațiul de nume al Desktop-ului

    Ca exemplu, vom adăuga faimosul Mod de Dumnezeu. dosarul Toate sarcinile.

    Astfel, deblocăm ActiveX pentru vizualizare.
  • Apoi creați un parametru gol PinToNameSpaceTree în secțiunea:


    Ca urmare, la primul și al doilea punct, ajungem aici în felul următor:

    Conductorul de navigație din interiorul funcției și al compoziției

  • Acum, trebuie să adăugați GodMode în spațiul de nume al Desktop-ului, astfel încât bara de navigare să-l numere ca "a lui". Pentru aceasta vom crea subsecțiunea E de ajuns.
    Conductorul de navigație din interiorul funcției și al compoziției
  • Reporniți Explorer.
  • Rularea Explorer-ului, veți găsi că elementul "Toate sarcinile" este afișat atât pe desktop cât și pe panoul de navigare. Dacă al doilea am realizat, atunci pictograma de pe desktop nu are nevoie de noi deloc.
    Conductorul de navigație din interiorul funcției și al compoziției

    Ar trebui eliminat.

    Un pic de teorie
    Instrumentul Desktop Icoane din Windows 7 vă permite să ascundeți afișarea pictogramelor de sistem de pe desktop, cum ar fi Rețea, Computer, Grup de acasă. Acum știi că aceste elemente din Windows 7 sunt elemente ActiveX. Dezactivarea afișării acestor pictograme din punct de vedere tehnic este o lucrare cu setările registrului de registry

    Aici pot fi reprezentați parametrii DWORD ale căror nume corespund cu GUID-urile obiectelor ActiveX ascunse, iar valorile: 0 - afișarea elementului sau 1 - ascunderea elementului. Puteți utiliza acest mecanism ascunzând un element de pe desktop adăugat pe bara de navigare.
    • Accesați cheia de registry
    • Creați un nou parametru DWORD, utilizați GUID-ul ActiveX ascuns ca nume de parametru și utilizați unitatea ca valoare.
      În cazul nostru, vom arăta astfel:

      Conductorul de navigație din interiorul funcției și compoziției

      Există o singură întrebare și este posibil să adăugați absolut orice catalog din bara de navigare (nu ca un favorit, ci ca un obiect independent). Nu au GUID-uri.

      Trebuie să generați un GUID nou și unic, puteți utiliza acest http // www.guidgenerator.com / online-guid-generator.aspx

      Apoi, descrie-ți directorul în CLASE ceva de genul asta

      Și apoi adăugați, așa cum este scris în articol.

      0_o. Mulțumesc, Serghei Tkachenko. Informații foarte utile. Și nu vor avea consecințe, de exemplu, dacă ștergeți manual acest director.

      @ Egor
      Se va deschide doar din bara de navigare. Alte consecințe nu vor fi

      Sergey, vă rugăm să vă înregistrați în win7 64 ActiveX.

      Trebuie să lucrați.

      @Tur
      Nu sa întâlnit. Dați fișierul * .ocx?

      Dar aici este întrebarea cum să faceți acest lucru pe Win 8, aici niște parametri nu există, despre care scrieți.

      Să abordăm exemple specifice.

      Există o modalitate de a le schimba în bara de navigare?

      SortOrderIndex, tastați DWORD, în sistemul zecimal setați ordinea elementelor afișate







      Articole similare

      Trimiteți-le prietenilor: