Microsoft lets you plug in the tools you need

We've all been waiting for Microsoft to release Windows NT 5.0, with all its new features and tools. With the new release, NT's management tools will see some welcome changes. One new tool that's already making news is the Microsoft Management Console (MMC). The MMC provides a new plug-in framework and Explorer-like interface for managing tools. Most of NT 5.0's management tools will plug into the MMC. So imagine how surprised I was after I downloaded Internet Information Server (IIS) 4.0 to discover that this latest version of Microsoft's Web server uses the MMC as its management interface.

But the surprises don't end there--IIS 4.0 and the MMC together provide many new features. (Keep in mind that I prepared this article with IIS 4.0 Beta 2. Most of the features will stay the same in the final release, but you can expect some changes.) When I began exploring the MMC interface, I turned up several uses for IIS 4.0. For example, you can now create multiple Active Server Pages (ASP) applications under one virtual root. You can also set many options at the virtual root level, instead of globally, for your entire Web server.

The MMC functions the same way as Developer Studio, which provides the host environment for Visual InterDev, Visual C++, and Visual J++. The components are Object Linking and Embedding (OLE) servers that conform to the MMC model. Microsoft, third-party providers, and anyone else who develops an application conforming to the MMC standard can develop snap-in components.

The snap-in design of MMC tools is interesting. Developers can build a snap-in that runs within the MMC only or that runs both within the MMC and as a standalone program. This functionality provides a framework that third-party vendors can use for building applications that work in a traditional manner and also work as part of the MMC.

Getting Started with the MMC
You can start the MMC from the Start menu by selecting Internet Information Service Manager from the Programs, Internet Information Server menu. The MMC interface appears with its Explorer-like look and feel, as you see in Screen 1, page 140.

After I opened the MMC, I created a new window. The MMC interface lets me look at components of the Web server in one window (shown as Console Root\IIS\topgun in the upper part of Screen 1) and a particular virtual directory (e.g., ExAir, as shown in the lower part of Screen 1) in another window. Notice how the title bar shows the full path to the object you are currently working with. As with NT Explorer, you can display windows in different ways, such as tiled or manually sized. You can also close any windows you are not using.

The left pane of each window you open is the Scope pane for that window. The Scope pane includes the namespace of all components that the current MMC session can manage. The Scope pane contains components such as IIS, and has links to Web sites, folders, and other items. You can toggle the Scope pane on and off by right-clicking an object and selecting Scope Pane from the context menu.

The right pane of each window is the Results pane. When you select an item in the Scope pane, the MMC displays the details for the item in the Results pane. Screen 2, page 140, shows a good example of the MMC in action. This screen shows the usual Scope pane, but the Results pane shows the home page of Microsoft's Web site (http://www.microsoft.com). To display this result, I right-clicked the IIS folder in the Scope pane and selected Create New. I then selected Link to Web Address and entered the URL I wanted to link to. After I entered Microsoft's URL and closed the dialog box, the MMC added the www.microsoft.com entry to the IIS node in the namespace shown in the Scope pane. When I clicked this new link, Microsoft's Web site appeared in the Results pane for browsing--cool.

In addition to Web links, you can add other items to the namespace in the Scope pane. Right-click in the Scope pane, and select the Create New submenu, and you can add an MMC folder and ActiveX controls. MMC folders act as containers that hold other folders and ActiveX controls. After a few minutes of using the MMC, you can quickly see how it becomes the center of your management world. You can add tools, folders, Web sites, and more into the MMC, resulting in a complete set of information for a particular task at your fingertips.

The Action and View buttons below the main MMC button bar let you access the commands that you want to use on your objects. Other buttons in the MMC provide quick access to other functions. For example, buttons to the right of the Delete and Key Manager buttons in Screen 1 let you access NT tools such as Performance Monitor and Event Viewer. This functionality is where MMC's power comes into play. Imagine you're working in the MMC and you want to monitor your system's performance with Performance Monitor--one click and Performance Monitor is running.

The MMC presents its services through an intuitive GUI--you no longer have to slog through many levels of hierarchical menus to find the option you need. Once you get used to the look and feel of the MMC, you will find all the options for performing tasks and changing settings for tools such as IIS or Microsoft Transaction Server (MTS). Right-clicking any object in the MMC usually brings up a context menu for that object, and the Properties option on the context menu lets you access settings for that object. For example, to access the properties for IIS, right-click the application name. Select the Properties option from the menu, and you will see the settings for IIS.

You can save the current settings for the MMC at any time by clicking the Save button on the toolbar or selecting Save from the File menu in the main MMC window. The MMC saves its settings in an .msc file. If you look at the title bar in Screens 1 and 2, you see that the MMC is using the file iis.msc. This filename is the default for MMC after you download IIS 4.0. By default, IIS 4.0 places its MMC files in the \WinntRoot\System32\InetSrv folder.

The MMC file stores the current settings for your MMC workspace just like many other NT tools. When you select Internet Service Manager from the Programs menu, you are selecting a shortcut, which executes the following command:

C:\WINNT\system32\mmc.exe C:\WINNT\System32\inetsrv\iis.msc

This command starts mmc.exe and passes it the full path to the iis.msc file.

You can use different MMC files by opening each file with the Open option on the File menu or by clicking the Open icon on the toolbar. You can also open an MMC file by double-clicking the filename in Explorer or creating an icon on the desktop or Start menu for the MMC file. Finally, you can email MMC files or put them on a network share so that everyone can access them.

Managing IIS 4.0 with the MMC
Now that you understand the basics of the MMC's operations, you can begin to learn how to use the MMC interface to manage IIS. One of the first steps I took after installing IIS 4.0 was to create a new Web site. I decided this task would be a good test of the features that the MMC and the IIS snap-in provide.

To start the creation process, I right-clicked the server name in the Scope pane. Next, I selected the Create option, and selected Create New and Web Site to start the New Web Site Wizard.

The New Web Site Wizard walked me through a series of dialog boxes during the Web site creation process. The first dialog box let me enter a description for the new Web site I was creating. The next dialog box, as you see in Screen 3 , determined the TCP/IP address and port number for the site (Screen 3 shows the default values for these settings).

Screen 4 shows the next dialog box, which asked me to enter the name of the subdirectory for my Web site's home directory. I discovered that the subdirectory you enter in this dialog box must already exist--the New Web Site Wizard won't create this subdirectory for you.

Next, the New Web Site Wizard asked me to configure access permissions for my Web site, as you see in Screen 5. I checked the Allow Script Access (the default options allow only Read access). After I configured the access permissions, I clicked Finish to create my Web site. The new Web site appeared in the Results pane when I selected the server's name.

Changing a Site's Configuration
You can change almost any property or parameter you set during installation at some later point. The easiest way to make these changes is to right-click the site name (in either pane of the MMC), and select Properties from the context menu. A Properties dialog box similar to the one you see in Screen 6 appears. Each page in the Properties dialog box lets you set options related to that particular page. When you first access the Properties dialog box, you see the Web Site properties page. You can see from Screen 6 that you can quickly change some settings, such as the site description and the site's TCP/IP address.

You entered some of the settings on the Properties pages when you created the Web site, and other settings are the default values that come with the default Web site (a standard Web site that ships with IIS 4.0 and points to any subdirectories under \wwwroot, the default site directory). You can use the Properties pages to modify the default Web site, just like any other site.

Onward and Upward
The new MMC management feature plays a major part in IIS 4.0, but it's by no means the only feature. You have to dig into IIS 4.0 to discover additional features and how they work. Some of these features include

* Integration with other products, such as MTS, Internet News Server, and Site Analyst

* New ASP features, such as the integration with MTS, the new script debugger, and new options for Visual Basic Script

* The ability to create a hierarchy of virtual directories

* New IIS Web site features, such as new options for each site, settings for the default Web site, isolation of applications, and the handling of FrontPage Server Extensions for each Web site

* The Posting Acceptor, which lets you post information from a browser to a Web site

IIS 4.0 contains many other options hidden behind the GUI. I'll discuss many of these options in future articles.