Before I start discussing the shell, it might be a good idea to define what, exactly, the shell is in terms of Windows. Simply put, the shell is a graphical user interface provided by Windows that allows you to access the various components of the operating system. Sounds good, huh? When you think about it, almost everything you do within Windows begins with the shell (unless you do everything from a DOS window or from console mode in Windows NT and Windows 2000). This includes running software, accessing files, configuring your system, and so on.
provided by Windows is contained within the program
Explorer.exe. For those of you who have been
using Windows since the 16-bit days, you might think of Explorer as a
glorified version of File Manager, Windows 3.1’s utility for
accessing the filesystem. This could not be farther from the truth.
Explorer is really much more than a file manager. It provides a view
of your entire system and the means to interact with it. Not only can
you access files and create directories, you can configure your
printer, schedule tasks, and even surf the Internet. Throughout the
course of this book, we will use the terms shell and Explorer
interchangeably. They really are one and the
You should also know that Explorer is always running. What you think of as Explorer—the browser program that allows you to navigate directories and access your files—is actually a secondary thread in the Explorer process. The primary instance of Explorer is the Desktop. You really are using the shell more than you might think.
On the surface, Explorer seems to be the Swiss Army knife of applications—the one application that lets you do everything. But this is not really the case. In actuality, Explorer is comprised of many different components working together to create the illusion of uniformity.
These components are built using the Component Object Model, or COM. And using this same technology, you can use Visual Basic to write components that fit seamlessly into the heart of Windows using documented interfaces. You actually have the power to extend the functionality of Windows itself.