Registry Settings
The registry plays a critical role in defining the shell extensions available for particular filesystem objects. In this section, we’ll look at how the registry is used to define the shell extensions for particular file types, as well as how it determines the scope of a particular shell extension.
File Associations
There are two entries in the registry that
are associated with files of a specific type: the file association
key and the application identifier key. For example, in Figure 3.6, HKEY_CLASSES_ROOT\.rad
is
a file association key. The file association key merely points to the
application identifier key; that is, its default value contains the
name of the application identifier key, which in the case of Figure 3.6 is
HKEY_CLASSES_ROOT\radfile
. The application
identifier key contains the shellex
subkey
(shellex
stands for “shell
extension”), which defines the specific handler types and the
CLSIDs of the objects designated to handle them. Some handlers, like
context menu handlers and property page handlers, require a named
value that points to the proper CLSID. This can be any name, but it
must be unique at the level in which it
resides
.
Figure 3-6. Registry settings for shell extensions of a specific file type
Once Explorer has the CLSID for the component that is implementing a particular shell extension, it can find the physical location of the component ...
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.