Chapter 11. Namespace Extensions

The Windows namespace is similar to the directory structure of a filesystem, but in addition to files, it also contains other objects, like printers, storage devices, and network resources. As Figure 11.1 shows, this namespace is a single hierarchy that begins with the Desktop and contains everything that is visible within Explorer. Namespace extensions provide the means for you to insert your own objects into this hierarchy. This allows you to browse your data as if it were just another object in the system, but it also provides the means for you to manipulate that data in a manner that is specific to your needs.

The namespace

Figure 11-1. The namespace

Consider the desktop for a moment (see Figure 11.1). The Desktop contains My Computer, Network Neighborhood, My Briefcase, and the Recycle Bin. My Computer in turn contains Printers, Control Panel, and Dial-Up Networking. If you examine the registry’s HKEY_CLASSES_ROOT\CLSID key for each of these objects, you will see that each of them is mapped to shell32.dll. In other words, these are all namespace extensions. Actually, everything you can see that is displayed in Explorer is being handled by a namespace extension—even the directories and files. Nothing is built-in. Explorer is literally a shell that’s a namespace browser.

Namespace Fundamentals

The topic of namespaces is monumental, to say the least. This chapter ...

Get VB Shell Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.