Opening a Rooted Explorer

To open a rooted Explorer for the namespace you have created, you must provide a way to start the new instance of EXPLORER.EXE, using the /root switch on the command line. There are several ways to accomplish this. For example, you can either call ShellExecute directly, or you can create a shortcut file that contains one of the following as a command line:

  • If the junction point is an item under the desktop:

explorer.exe /e,/root,::{CLSID of item}

  • If the junction point is an item under My Computer:

explorer.exe /e,/root,,::{20D04FE0 - 3AEA - 1069 - A2D8 - 08002B30309D}

\::{CLSID of item}}

  • If the junction point is a file system folder:

explorer.exe /e,/root, [path to a junction point]

When the Explorer is opened using the /root::{CLSID} option, it sets the junction point object as the root of hierarchy and calls its IShellFolder.

When the user opens a junction point object or one of its subfolders, the Explorer lets it create a view object by calling IShellFolder::CreateViewObject and requesting an IShellView interface. The Explorer then calls IShellView::CreateViewWindow to allow it to create the view window of its folder. One of the parameters passed is a pointer to the IShellBrowser interface which allows the extension to communicate with the Explorer. The view object is able to add menu items to the menu bar, add toolbar buttons, display status information on the status bar, and/or process shortcut keys.

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database