Discover MMC features that belong in your toolbox

In "The Mighty Win2K Microsoft Management Console, Part 1," September 2000, I explained the basics of Microsoft Management Console (MMC) and promised to follow up with some of my favorite MMC discoveries. I found too many cool MMC features to fit in this column, so I whittled my preferred tools down to a few I think you'll like, too. (For more information about MMC features, see Zubair Ahmad, "Getting the Most out of the Microsoft Management Console," http:// www.win2000mag.com/, InstantDoc ID 7415.)

Gathering Information
One of my favorite MMC features is that you can gather and save information in a selective and logical way. (You probably share my frustration that you can't save and then print information when you use Windows NT 4.0's management tools.)

To save information about an MMC object, select the object and choose Save as Text File from the console window's Action menu. (Not all objects offer this option. For example, you can't use this feature on an organizational unit—OU—because the command isn't available.) You can then print or distribute the saved text file throughout your organization. For example, you might want to print a list of a computer's IRQ assignments (or any other hardware information you want to keep handy) and tape the list on a computer for quick reference.

You can also select an object and choose Export List from the Action menu to save the information as a tab- or comma-delimited file. Load the data into a spreadsheet to examine it from any angle, sort algorithm, or pivot table view you want.

Taskpads
Taskpad View (the taskpad feature) is a wonderful MMC tool that lets you present snap-in components in an easy-to-use interface. Administrators typically create taskpads to prevent inexperienced users from accessing MMC objects. For example, you can design taskpads that hide some or all of the objects in the console window's Tree pane, thereby reducing the odds of user error (which in turn reduces your own level of aspirin consumption).

To create a taskpad, open the console window and select the snap-in object you want to use as the target of your taskpad. Choose New Taskpad View from the Action menu to launch the New Taskpad View Wizard. (Alternatively, you can right-click a snap-in object and select the command from the shortcut menu.)

The New Taskpad View Wizard lets you choose how your taskpad will display the snap-in object's items and tasks, as Figure 1, page 170, shows. For example, you might want to display text descriptions of the tasks you include or create Info Tip descriptions of items that users can access. The wizard also lets you automatically include tree objects that are of the same type as the object you selected.

Name the taskpad if you want to change the default name that the OS automatically selects, which is the associated object's name. If you create multiple taskpads with different tasks for the same object, renaming each taskpad is a good idea. Add text for the optional description so that users can easily understand what the taskpad does.

After you complete your New Taskpad View Wizard selections, click Next to open the New Tasks Wizard. This wizard lets you create the tasks you want to allow users to use the task list to perform. You can add menu commands, scripts, and executables. Name each task, give it a description, and select an icon to accompany its listing. Add as many tasks as you like to the taskpad, then click Finish to exit the wizard.

Save the taskpad with a descriptive filename. Taskpads have the file extension .msc, just as standard console files do. If you created your taskpad from a pre-existing console that already has a filename, use the Save As command to create a separate taskpad file. You can distribute the taskpad to users or place it on a network share. Figure 2 shows a taskpad I created for the Performance Logs and Alerts snap-in.

Controlling Console-File Users
If you distribute or permit access to console files instead of permitting access to taskpads only, you can still control the amount of damage users might wreak on MMC's contents. You just need to apply restrictions before you save and share a console file. From the MMC window, choose Console and select Options to open the Options dialog box, which Figure 3 shows. Then, select one of the following modes from the Console mode drop-down list:

  • Author mode permits full rights (i.e., anything you can do, the user can do).
  • User mode - full access gives users access to all MMC management tools for all console tree objects. However, users can't add or remove snap-ins or change the console-file options. (The Save commands aren't available from the Console menu because changes that don't affect snap-in relationships are automatically saved.)
  • User mode - limited access, multiple window restricts users from opening new windows in the console. This mode also restricts users from working in any area of the console tree that wasn't visible when you saved the console file. (Selecting this mode also applies the User mode - full access restrictions.)
  • User mode - limited access, single window applies the same restrictions that User mode - limited access, multiple window does. The difference is that only one window appears, so users can't access the controls that permit working with multiple windows.

The ability to restrict how MMC displays objects (i.e., what is visible in the left console window pane) is a useful administrative tool. Readers and clients often ask me a question related to this MMC feature: Why does the system ask you whether you want to save changes if you've merely expanded an MMC object and otherwise haven't changed anything? The answer is that the system is asking whether you want to save the current view because the fact that you changed the view is important.

Task-Free Consoles
You can create task-free consoles that don't contain tools and distribute the consoles throughout a company. For example, I've created consoles that have point-and-click icons for Web pages and sent the console files as email attachments. The console files are easier for the recipient to use than email messages with multiple URLs.

Figure 4 shows an example of a useful task-free console file that you can send to users through push, pull, or email technologies. The file is a permanent shortcut to important company internal or private Web sites. Users can add this file to their Programs menu or to the Quick Launch toolbar.

Building Advanced Custom Consoles
You don't need to limit consoles to maintenance and management chores. Because MMC provides robust support for a variety of technologies, you can design consoles for almost any task or display that you can imagine.

Microsoft Internet Explorer (IE) is an integral part of MMC's framework, and by extension, so are the features that IE supports. Dynamic HTML (DHTML), XML, Extensible Style Language (XSL), Cascading Style Sheets (CSS), Windows Media Player, and other technologies that you use for the Web can help you design imaginative ways to display information in consoles. With some scripting and COM components, you can use consoles to create incredible effects such as animation and multimedia displays. You can combine your imagination and these capabilities to create some dynamite material for your company's intranet.

MMC Annoyances
Although MMC can simplify your administrative life, I've encountered a few problems while working with it. For example, part of my laboratory testing for Active Directory (AD) included manipulating the MMC Active Directory Users and Computers snap-in (the snap-in that administrators probably open most frequently). One of AD's greatest boons is that it lets you move computers and users among domains and OUs, which is a task that the MMC interface makes relatively easy.

I decided to test the Active Directory Users and Computers snap-in's filtering feature. I selected the domain object in MMC and chose View to display the Filter Options. I selected Create Custom Filter and specified User, Group Membership in the Find Custom Search dialog box. I then selected Is (exactly) as the condition and entered the group name in the Value text box, which Figure 5 shows. The filter didn't work because selecting the Users container produced a blank right pane instead of displaying the users. MMC didn't even list my name, and I'm a domain administrator. Unfortunately, I can't find online Help or a Microsoft Knowledge Base article for this topic.

Another MMC annoyance is that Lightweight Directory Access Protocol (LDAP) filters have Starts with (*string) and Ends with (string*) conditions, but not an "Includes" (*string*) condition, which is a serious impediment to designing the filters I need. This topic also lacks Help files, which is frustrating.

A Final Word About MMC
MMC is a powerful tool (despite a few annoyances), and I think you'll find MMC snap-ins absolutely habit-forming as you use them more often. If you've created some fancy, powerful, bells-and-whistles console files, I'd like to hear about them. (I'm always looking for ideas I can borrow.)