Make your own free website on
Introduction : Namespace extensions

Home| Main Subjects| Documentation| Downloads| Misscelaneous| FAQ| Search
Email me
Amir Israeli October 2000  Introduction : Namespace extensions

Explorer is a service that runs in the background of Win32 systems. The service is located in several files under Windows directory . Explorer.exe under Windows directory is an application that implements a view represention of the data represented by the service called Explorer. DLL's that are involved are Shell.dll, Shell32.dll ,shellwapi.dll and COM+OLE libraries.
Namespace is hyrerchical data structured being implemnted by explorer. as you can see on the view part : it represents many types of objects in "file-system-like" structure.
"file-system-like" because you can find virtual objects that do not exist as files and folders. The treeview window shows items of namespace that include the FOLDER attribute the list view part may show all objects (or part).
Web Browser control also uses shell functionality to "browse" (go to) some folder.

The namespace and shell is a huge subject to cover , thats why for a long time I postponed writing this documentation. Therefore this is an incomplete documentation that is supposed to hilight certain aspects of Explorer namespace.
The article assumes that you are femiliar with COM , Shell programming, Win API ,MFC. A good starting point is the reading "shellcc.chm" file within MSDN 6.0a (for old namespace introduction) some new features (IShellFolder2,IShellDetails ...) are available at MSDN 9.0. As you find in many cases documentation is poor. in some cases there are mistakes in member variables within function header.
for example :
BAD: IShellBrowser::BrowseObject( LPCITEMIDLIST pidl, UINT *wFlags );
GOOD: IShellBrowser::BrowseObject( LPCITEMIDLIST pidl, UINT wFlags );

Home  |  Links  |  About