Microsoft Management Console (MMC)
Microsoft Management Console (MMC)
Introduction
Microsoft Management Console (MMC) is a framework that hosts administrative tools, called snap-ins, on Windows operating systems. A snap-in is the basic component of MMC that provides the actual management of programs. Windows Vista®, Windows® XP, Windows Server® 2003, and Windows® 2000 use MMC to display snap-ins as consoles. Administrators can use MMC to administer networks, computers, services, and other system components.
MMC is designed to provide a programming platform for creating and hosting applications that manage Microsoft Windows environments and provides consistent and integrated user interface. MMC is a shell application and a framework that individual administrative tools can snap into.
MMC 3.0 is provided as the default MMC in Windows Vista and Windows Server 2003 R2. MMC 3.0 is also available as a downloadable OOB package for down-level operating systems, such as Windows XP and Windows Server 2003 (RTM) and will be provided as the default version in subsequent service packs of down-level operating systems, including Windows XP SP3 and Windows Server 2003 SP2.
New and Improved Features
MMC 3.0 provides many new and improved features and functionalities. These enhanced features include:
New Actions pane
New Add or Remove Snap-in dialog box
Improved error handling
Support for managed snap-ins built on the Microsoft® .NET Framework version 3.0 platform
MMC and Snap-ins run in different threads
Several new and upgraded snap-ins
New Actions Pane
An Actions pane is now available in MMC in Windows Vista. The Actions pane lists the commands that are available to users, based upon items selected in the tree or the results pane.
The Actions pane replaces Taskpad Views in MMC 2.0. However, the Taskpad View Wizard is available in MMC 3.0 to support snap-ins created in previous versions of MMC.
The Actions pane is located on the right side of the snap-in console. To show or hide the Actions pane, click the Show/Hide Actions Pane button in the toolbar, which is similar to the Show/Hide Tree button.
The Actions pane provides the snap-in developer with better clarity in communicating the facets of the management task to the end user.
The sub-sections of the Actions Pane provide:
Actions for the selected tree node
Actions for the selected item
A user-friendly description for a selected item
New Add or Remove Snap-ins Dialog Box
The Add or Remove Snap-ins dialog box makes it easy to add, organize, and remove snap-ins. The dialog box enables users to control which extensions are available and whether to enable snap-ins automatically that may be installed later. Users can organize snap-ins by nesting and rearranging them in the tree.
Improved Error Handling
MMC 3.0 logs actions. Therefore, it is easier to debug and incrementally improve snap-in code. MMC notifies the user of errors in snap-ins that could cause MMC to fail, and provides several options for responding to those errors. MMC 3.0 has the ability to isolate suspended snap-ins from the console.
Support for Managed Snap-ins Built on .NET Framework Platform.
MMC 3.0 supports managed snap-ins built on the .NET Framework programming model platform and provides full integration with Windows Forms, instead of using the OCX views that are available with MMC 2.0. The Standard Visual Studio designer and design guidelines are available for view design in MMC 3.0. These make it easier to maintain consistency in the design of snap-ins. This consistency results in a smoother and better end-user experience.
MMC and Snap-ins Run in Different Threads
MMC 2.0 provides one main thread for MMC and all snap-ins. In contrast, in MMC 3.0 each snap-in runs in its own thread, and the main thread in MMC 3.0 is a different thread from all snap-in threads.
Several New and Upgraded Snap-ins
Several new and upgraded snap-ins improve MMC. For instance, the Diagnostic Console incorporates various tools for tuning system performance and CPU performance and other resources. This information is displayed graphically in the resource view.
A new Reliability Monitor tracks applications and driver installations, along with the date they were installed. Reliability Monitor provides reliability statistics from Reliability Analysis Components and presents a graphical view of the variation in system stability and reliability.
User Benefits
User benefits for using MMC 3.0 include:
Enhanced reliability
Richer snap-ins
Reduced development cost and improved user experience
Backward Compatibility with MMC 2.0
Enhanced Reliability
MMC 3.0 includes new and enhanced application reliability with a built-in reliability monitoring service. These enhancements include:
Improved detection and reporting of snap-in problems—provides detection and optional reporting of MMC snap-in errors. If an error is detected, an error message and the name of the snap-in that experienced the problem is provided to the user.
Easier debugging—easier to debug and incrementally improve snap-in code because actions are logged.
Ability to isolate suspended snap-ins from the console—provides the ability to isolate from the console snap-ins that may be hanging.
For more information, see "What's New in MMC" in the Windows Software Development Kit (SDK).
Richer Snap-ins
MMC 3.0 provides functionally rich views that can be created using list, Windows Forms, and HTML. You can also use it to configure ASP.NET applications using IIS versions 6.0 and earlier. This makes snap-in design consistent across all snap-ins and platforms.
The following lists and describes examples of snap-ins available in MMC 3.0.
Snap-in |
Description |
---|---|
Device monitor snap-in |
Provides a central location for checking the status of a device installed on a computer and for updating the associated device drivers. |
Event management snap-in |
Views the event logs on a selected computer. |
Group Policy Manager |
Manages policy settings for the computer. |
Performance Diagnostics |
Provides a real-time view of system resources, specifically: CPU, memory, disk, network usage. |
Performance Monitor |
Enables users to create customized reports on a range of system counters, such a network, .NET platform, database, and other services. |
Print Manager |
Supports the location, installation, and management of printers and associated drivers. Manages printer operations including error conditions. |
Reliability Monitor |
Tracks information about software and hardware events, such as installations, updates, and failures. |
Resource management snap-in |
Displays system configuration information for hardware resources, components, and the software environment. |
Service management snap-in |
Manages services and service properties. |
Software installation snap-in |
Manages software distribution centrally in an organization. |
Storage management snap-in |
Displays and manages logical drives on a system. |
Task Scheduler |
Enables creation and management of reoccurring tasks. |
User management snap-in |
Manages users and local user groups on a selected computer. |
For convenience, users can create console files that group several of these snap-ins together. MMC supports two types of snap-ins: stand-alone snap-ins and snap-in extensions. Users can add a stand-alone snap-in, typically called a snap-in, to a console without first adding another item. A snap-in extension, typically called an extension, is always added to a snap-in or to another snap-in extension that already exists in the tree. When extensions are enabled, some snap-ins can operate on the objects controlled by that snap-in, such as a computer, printer, modem, or other device. For example, property sheet and view extensions can operate on the objects controlled by that snap-in. However, many namespace extensions, ones that provide a sub-node to the primary snap-in, do not operate on these objects; they have no access to the objects of the primary snap-in.
When users add a snap-in or extension to a console, it may appear as a new item in the tree, or the snap-in or extension may add shortcut menu items, additional toolbars, additional property pages, or wizards to a snap-in already installed in the console.
Reduced Development Cost and Improved User Experience
MMC 3.0 provides an asynchronous user interface model, which makes the console simpler to customize and actions discoverable. For information about improvements that can benefit software developers, see Developing for Microsoft Management Console (MMC 3.0) in the Windows SDK.
Backward Compatibility
MMC 3.0 supports snap-ins designed for MMC 2.0 and can be opened with a snap-in console that has been created using MMC 2.0. However, if the console is saved in MMC 3.0 format, the snap-in can no longer be opened using earlier versions of MMC using that console file.
Note MMC 2.0 cannot open with a snap-in console that is created using MMC 3.0.
How to Open MMC
Open MMC either through the Windows interface or at a command prompt.
To open MMC using the Windows interface
Click Start.
Click in the Start Search text box.
Type mmc.
Press ENTER.
To open MMC at a command prompt
Click Start.
Click in the Start Search text box and Type cmd.
Press ENTER.
At the command prompt, type mmc.
Press ENTER.
The following illustration shows Task Scheduler and Local Policy snap-ins in an open MMC.
The command-line option can be used to start MMC and open a saved snap-in console.
The following Syntax uses the command-line option to open a saved snap-in console: mmc <path\filename>.msc [/a] [/64] [/32]
The 64-bit command-line option has no effect on a 32-bit version of Windows. On a 64-bit computer, the 64-bit version of MMC is the default. If the console indicates that 32-bit snap-ins need to be loaded, the 64-bit version of MMC will automatically switch to the 32-bit version and load the snap-ins. Likewise, if the 32-bit version of MMC is launched but the console file indicates that 64-bit snap-ins are to be loaded, the 32-bit version of MMC automatically switches to the 64-bit version of MMC.
The following lists the parameters in the command-line syntax and provides definitions.
Parameter |
Description |
---|---|
<path\filename>.msc |
Starts MMC and opens a saved snap-in console. Specify the complete path and file name for the saved console file — otherwise MMC opens a new snap-in console. |
/a |
Opens a saved snap-in console in author mode. Use this parameter to make changes to saved consoles. |
/32 |
Opens the 32-bit version of MMC. When running a Microsoft 64-bit operating system, you can run 32-bit snap-ins by opening MMC with this command-line parameter. |
/64 |
Opens the 64-bit version of MMC. When running a Microsoft 64-bit operating system, you can run 64-bit snap-ins by opening MMC with this command-line parameter. |
System administrators can use environment variables to create command lines or shortcuts that do not depend on the explicit location of console files. For example, if the path to a console file is mmc c:\winnt\system32\console_name, administrators can use the expandable data string %Systemroot% to specify the location: mmc %Systemroot%\system32\console_name.msc. This is useful if tasks are delegated to others who are working on different computers.
How to Add and Remove Snap-ins
To add or remove a snap-in
On the File menu of an open MMC console, click Add/Remove Snap-in.
In the Available snap-ins list, select the snap-in to add and click Add to add the snap-in to the Selected snap-ins list.
Select a snap-in the list to read a brief description of the snap-in in the Description box at the bottom of the dialog box. (Some snap-ins may not have descriptions.)
Change the order of snap-ins in the snap-in console by selecting a snap-in in the Selected snap-ins list and clicking Move Up or Move Down.
Remove a snap-in by selecting it in the Selected snap-ins list and clicking Remove.
To finish adding or removing snap-ins, click OK.
The following illustration shows the new MMC Add Remove Snap-ins dialog box with some snap-ins selected.
Note
To move a snap-in already in the Selected snap-ins list to a different parent node, it must first be removed and then added to the different parent node.
If Local Policy or Group Policy restricts users from accessing certain snap-ins, those users cannot open snap-in consoles that contain those snap-ins.
Open an existing or saved MMC console by browsing to the snap-in console or clicking a shortcut to the snap-in console in Windows Explorer, then double-click the console. Users also can open an existing MMC console from another console in which they may be working by clicking the File menu, and then clicking Open.
Conclusion
The improvements in MMC 3.0 make it a richer development experience compared to MMC 2.0; it also provides increased reliability, richer snap-ins, integrated WinForm support, and improved usability.
MMC 3.0 is supported in Windows Server 2003 and for Windows XP. For information about MMC 3.0 updates for Windows Server 2003 and Windows XP, see the article "MMC 3.0 update is available for Windows Server 2003 and for Windows XP" at Microsoft Help and Support at https://support.microsoft.com/.