Névtérbővítmény helyének megadása
A névtérbővítmény gyökerét a Windows Intéző általában mappaként jeleníti meg fa- és mappanézetben is. Ahhoz, hogy a Windows Intéző megjeleníthesse a bővítmény fájljait és almappáit, meg kell adnia, hogy a gyökérmappa hol található a Shell névtérhierarchiájában. Ezt a helyet nevezik csatlakozási pontnak.
- Virtuális mappák használata csatlakozási pontokként
- Fájlrendszermappák használata csatlakozási pontokként
- Névtérbővítmény nézetének megnyitása
A bővítmények csatlakozási pontjának meghatározásának legegyszerűbb módja, ha a gyökérmappát egy rendszerszintű virtuális mappa almappájának tekinti. Ezt a csatlakozási pontot virtuális csatlakozási pontnak nevezzük. A Asztali és Saját számítógép mappák a virtuális csomópontok tipikus helyei, de a távoli számítógépen vagy a Saját hálózati helyek, Internet Explorerés Vezérlőpult mappák alatt is meghatározhatók.
Virtuális csomópont definiálásához hozzon létre egy alkulcsot annak a kulcsnak, amely a megfelelő virtuális mappát jelöli, és az alkulcsot nevezze el az Ön bővítményének osztályazonosítójának (CLSID) sztring formájával. A regisztrált CLSID a következőképpen jelenik meg.
HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER
Software
Microsoft
Windows
CurrentVersion
Explorer
Virtual Folder Name
NameSpace
{Extension CLSID}
(Default) = Junction Point Name
virtuális mappanév az alábbi táblázat egyik alkulcsa.
Hely | Virtuális mappa neve |
---|---|
Vezérlőpult | Vezérlőpult |
Asztal | Asztali gép |
Teljes hálózat | HálózatiKörnyezet\TeljesHálózat |
Saját számítógép | SajátGép |
Saját hálózati helyek | Hálózati környezet |
Távoli számítógép | Távszámítógép |
Felhasználói fájlok | FelhasználóiFájlok |
A távoli bővítményeket inicializálni kell IRemoteComputer.
A fájlrendszermappák kétféleképpen határozhatók meg csomópontként. A legegyszerűbb módszer egy mappa létrehozása a megfelelő helyen, majd egy pont hozzáfűzése a mappa nevéhez, utána pedig a bővítmény CLSID-jének sztring formája következik. A Windows Intézőben csak a mappa neve látható. Az alábbi példa létrehoz egy csomópontot a MyFolder megjelenítendő nevével.
MyFolder.{Extension CLSID}
Másik lehetőségként egy hagyományosan elnevezett mappát is megadhat csomópontként a következő módon:
- A mappa írásvédetté tétele.
- A mappa rendszermappává tételéhez hívja meg PathMakeSystemFolder.
- Rejtett Desktop.ini fájl elhelyezése a bővítmény CLSID azonosítóját tartalmazó mappában.
Desktop.ini egy szabványos szövegfájl, amely bármely mappához hozzáadható a mappa viselkedésének bizonyos aspektusainak testreszabásához. A fájl használatáról a Mappák testreszabása Desktop.inicímű témakörben olvashat bővebben. Ha csomópontként szeretne definiálni egy mappát, az [. A Desktop.ini ShellClassInfo] szakaszának tartalmaznia kell a bővítmény CLSID azonosítóját az alábbiak szerint:
[.ShellClassInfo]
CLSID={Extension CLSID}
Amikor egy felhasználó egy csomóponti pontot keres, a Windows Intéző automatikusan létrehozza a gyökérmappa nézetét. Nézetet úgy is létrehozhat, hogy explicit módon elindítja a Explorer.exe-t a bővítmény CLSID azonosítójával argumentumként. Ezzel a módszerrel például elindíthatja a bővítmények nézetét egy helyi menüből vagy parancsikonból. Például, ha egy MyExtension nézetet szeretne elindítani, amely tartalmaz egy fa nézetet, használhatja a következő parancssort.
%SystemRoot%\Explorer.exe /e,::{MyExtension CLSID}
Egy másik parancssztring használható egy objektum nézetének elindításához a bővítményen belül. Ez a funkció hasznos lehet például egy mappanézetet használó bővítmény esetében, amely lehetővé teszi a felhasználók számára, hogy több tömörített fájl egyikének tartalmát megtekintik.
%SystemRoot%\Explorer.exe /e,::{MyExtension CLSID},objectname
A objektumnév paraméter a megtekinteni kívánt objektum neve. A Windows Intéző a nevet a megfelelő PIDL-re alakítja át, és a PIDL-t átadja az új mappaobjektum IPersistFolder::Initialize metódusának.
Megjegyzés
A CLSID sztring előtt kettőspontnak kell lennie (::) vagy a parancs sikertelen lesz. A korábban bemutatott két minta parancssorban használt perjel (/e) jelző arra utasítja a Windows Intézőt, hogy jelenítsen meg egy fa nézetet. A zászlót vesszővel kell elválasztani a két kettősponttól. Ha nem szeretne fanézetet, hagyja ki az /e jelölőt és a vesszőt.