Control the Control Panel

Whether you're a fan of the new Control Panel or not, there's a lot you can do to make it more palatablelike hiding applets you never use, recategorizing the ones you do use, and displaying all applets in a simple-to-use cascading menu.

When I first started using XP, one of the things that annoyed me most was its new Control Panel. Yes, the big new icons for running applets are certainly pretty, but the Control Panel's several-layer organization forces you to click far too many times to get to the applet you want. And its clutter of applets that I rarely, if ever, use makes it even more difficult and confusing.
My first reaction was to click the Switch to Classic View button to do away with the new design, but the Classic View has its problems as well: its long, alphabetized list of thumbnails is just as difficult to navigate as the new Control Panel.
The solution? Start by cleaning up the Control Panel, hiding applets that you rarely, if ever, use. Note that when you hide the applets, you can still use them; you just won't see their icons in the Control Panel.
In this hack, you'll not only find out ways you can control the Control Panel, but you'll also see how you can apply that knowledge to create different customized Control Panels.

2.3.1. Hide Unused Applets with the Registry

To hide unused applets using the Registry, run the Registry Editor [Hack #83] and go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\don't load.
The key, as its name implies, determines which Control Panel applet icons are not loaded into the Control Panel. You'll still be able to run those applets from the command line after you hide them (as explained later in this hack); you just won't be able to see their icons in the Control Panel.
To hide an applet, create a new String value whose name is the filename of the applet you want to hide. For example, to hide the Mouse Control dialog box, the String value would be main.cpl. See Table 2-1 for a list of Control Panel applets and their filenames.

Table 2-1. Control Panel applets and their filenames
Applet
Filename
System Properties
sysdm.cpl
Display Properties
desk.cpl
Network Connections
ncpa.cpl
Accessibility Options
access.cpl
Add or Remove Programs
appwiz.cpl
Add Hardware Wizard
hdwwiz.cpl
Internet Properties
Inetcpl.cpl
Region and Language Options
intl.cpl
Game Controllers
joy.cpl
Mouse Properties
main.cpl
Sound and Audio Devices
mmsys.cpl
User Accounts
nusrmgr.cpl
ODBC Data Source Administrator
odbccp32.cpl
Power Options Properties
Powercfg.cpl
Phone and Modem Options
telephon.cpl
Time and Date Properties
timedate.cpl
Speech Properties
sapi.cpl


Create separate String values for each applet you want to hide, then exit the Registry. The applets will vanish from the Control Panel. To make a hidden applet appear again, delete its string value from this same registry key.

2.3.2. Hide Unused Applets with XP Pro's Group Policy Editor

If you have XP Professional, you don't need to get your hands dirty with the Registry to hide unused applets; instead, you can use XP Professional's exceedingly useful Group Policy Editor to accomplish the same task. The Group Policy Editor is primarily used for setting network and multiuser policies and rights, but it can also be used to customize the way XP looks and works. (For example, to use it to hack away at the Start menu and taskbar, see [Hack #10] .) Run the Group Policy Editor by typing gpedit.msc at the Run prompt or command line.
Once you've run it, go to User Configuration\Administrative Templates\Control Panel, the section that handles the Control Panel. As you can see when you get there, you can do a lot more than hide the Control Panel's unused applets in this section of the Group Policy Editor; you can also control many other aspects of how the Control Panel looks and functions.
Now right-click "Show only specified Control Panel applets," and choose Properties. You'll see the screen pictured in Figure 2-3.

Figure 2-3. Disabling Control Panel applets in the Group Policy Editor


Get ready for a bit of counterintuitive selecting. To disable Control Panel applets, you must choose the Enabled radio button because you're enabling the feature to show only certain Control Panel applets. Strange, but true.
When you do this, you'll hide all applets in the Control Panel, which is a bit draconian. If you don't want to see any applets at all for some odd reason, you're done; just click OK. But you'll most likely want to show some applets, so to add them, click the Show button. The Show Contents screen appears. Click Add, and you're ready to list all the Control Panel applets that you want to appear. For each item that you want to appear, type in its Control Panel filename, which you can find in Table 2-1. For example, if you want the Date and Time dialog box to appear, type in timedate.cpl.
You can also use Tweak UI [Hack #8] to hide Control Panel applets.
When you've listed all the Control Panel applets that you want to appear, click OK and exit the Group Policy Editor. Only the applets you've chosen to display will now appear in the Control Panel.
This technique is most useful when you're hiding most of the applets in the Control Panel and you want to display only a few. There's another way to use the Group Policy Editor to hide applets, and it's better suited for when you want to hide only a few applets. In User Configuration\Administrative Templates\Control Panel, double-click "Hide specified Control Panel applets" and choose Enabled. After you click Enabled, choose Show Add and type in the Control Panel filename (which you can find in Table 2-1) for each applet you want to hide. Click OK in each dialog box that appears. When you exit the Group Policy Editor, the specified applets will no longer appear in the Control Panel.
To customize other aspects of how the Control Panel works, follow the same instructions as outlined previouslyright-clicking the item you want to change, choosing Properties, and then picking your options.

How to Run Hidden Applets

Hiding applets cleans up the Control Panel, but leaves you with another problemwhat if you need to run an applet whose icon you've hidden? This is simple to do. At the Run box or command line, type in the name of the applet you want to runsuch as Inetcpl.cpl for the Internet Properties appletsand press Enter. See Table 2-1 for a list of filenames.


2.3.3. Recategorize Control Panel Applets

Hiding applets goes only partway toward cleaning up the Control Panel. You can also recategorize applets and put them in any category you want. For example, by default, the Mouse Properties applet can be found in the Printers and Other Hardware category, but if you prefer that it instead be found in Accessibility Options, you can move it there.
To put an applet into any category you want, you need two pieces of information: the filename of the applet (for example, main.cpl for the Mouse Properties dialog box), and the Registry value for each Control Panel category (for example, 0x00000007 (7) for Accessibility Options). For filenames of each applet, see Table 2-1. For the Registry value for each Control Panel category, see Table 2-2. With these two pieces of information in hand, you can recategorize any or all Control Panel applets.

Table 2-2. Control Panel categories and their Registry value data
Control panel category
Value data
Accessibility Options
0x00000007 (7)
Add or Remove Programs
0x00000008 (8)
Appearance and Themes
0x00000001 (1)
Date, Time, Language, and Regional Options
0x00000006 (6)
Network and Internet Connections
0x00000003 (3)
Other Control Panel Options
0x00000000 (0)
Performance and Maintenance
0x00000005 (5)
Printers and Other Hardware
0x00000002 (2)
Sounds, Speech, and Audio Devices
0x00000004 (4)
User Accounts
0x00000009 (9)
No category
0xffffffff


To recategorize a Control Panel applet, run the Registry Editor [Hack #83] and go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Extended Properties\{305CA226-D286-468e-B848-2B2E8E697B74}2. The key {305CA226-D286-468e-B848-2B2E8E697B74}2 is the container that holds all Control Panel categories. (Remember that it's safest to back up your Registry first [Hack #86] .)
Now find the Registry key of the applet you want to recategorize. The filename of the applet will appear on the end of the key; for example, %SystemRoot%\system32\main.cpl is the Mouse Properties dialog box. Turn to trusty Table 2-1 for a list of other filenames for Control Panel applets.
Change the key's DWORD value to the value of the Control Panel category into which you want the applet to appear, as detailed in Table 2-2. For example, if you want the applet to appear in the Performance and Maintenance category, give it a value of 5. The value will then be displayed in the Registry as 0x00000005(5).
When you're done, exit the Registry. The applet will now appear in the new category.

2.3.4. Display Control Panel Applets in a Cascading Menu

If you're a "just the facts, ma'am" type, you'll want to bypass the Control Panel altogether. Rather than clicking effete icons, you can instead force XP to display Control Panel applets in a cascading menu when you choose Control Panel from the Start button, as shown in Figure 2-4.

Figure 2-4. Turning the Control Panel into a cascading menu for quick access to applets


To force the Control Panel to display as a cascading menu, right-click the taskbar and choose Properties Start Menu. Click the Customize button and choose the Advanced tab. In the Control Panel heading, choose "Display as a menu." Click OK twice.

2.3.5. Build Customized Control Panels

Armed with all this Control Panel hackery, you can build customized Control Panels. For example, you can build a Control Panel for computer newbies, which hides the more technical applets and categories. Hide the applets in the Network and Internet Connections category, the Performance and Maintenance category, and the Sounds, Speech, and Audio Devices categorythat way, newbies can't get into trouble by making changes that will affect the system in unexpected ways.
For system administrators, group all system-type applets into a single category, such as Network and Internet Connections. You'd probably want to keep all the existing applets there, but also add the Administrative Tools, Scheduled Tasks, and System applets to it, as well as the Printers and Faxes applet. (If the administrator has to handle other hardware, such as scanners, add the Scanners and Cameras applet as well.)
For those who like to hack their systems and want instant, stripped-down access to customization tools, take all the applets that are now in Network and Internet Connections, and all those in Performance and Maintenance, and group them into the Appearance and Themes category. Then force the Control Panel to display as a cascading menu, and all of the hackery-type applets will be available instantly because the Appearance and Themes category is at the top of the cascading menu and all the relevant applets will be available directly from it.