问题
There is a method to create a namespace extension rooted in a particular folder.
It involves creating folder with a name like:
My Custom NSE.{785EE551-DEE1-4F57-A8C9-0EF76F346A29}
And Windows Explorer will automatically host the NSE of that clsid at that location.
But for the life of me i cannot find the syntax anymore. It used to be on MSDN in the namespace extension documentation, and it listed the 3 ways to get your namespace into Windows Explorer - that this was one of them.
What's the syntax - it's driving me crazy!
回答1:
i found it. There are 3 ways to get your namespace extension into "My Computer"
Specifying a Namespace Extension's Location
a) Add entry to the registry
\Software
\Microsoft
\Windows
\CurrentVersion
\Explorer
\(Virtual Folder Name)
\Namespace
\{785EE551-DEE1-4F57-A8C9-0EF76F346A29}
Where "Virtual Folder Name" can be one of
- MyComputer
- Desktop
- ControlPanel
- NetworkNeighborhood
- NetworkNeighborhood\EntireNetwork
- RemoteComputer
b) Create a folder named
My Custom NSE.{785EE551-DEE1-4F57-A8C9-0EF76F346A29}
c) Create a read-only system folder, create a desktop.ini file, and to it add:
[.ShellClassInfo]
CLSID={785EE551-DEE1-4F57-A8C9-0EF76F346A29}
You can also host the shell namespace extension in a separate copy of explorer:
%SystemRoot%\Explorer.exe /e,::{785EE551-DEE1-4F57-A8C9-0EF76F346A29}
来源:https://stackoverflow.com/questions/279336/how-to-host-a-rooted-namespace-extension-in-windows-explorer