CDOLive LLC The Premier Resource for Microsoft Collaboration Data Objects             

In/Out Board Windows Scripting Host Script

This sample Microsoft Windows Scripting Host script can be used to run a scheduled job to generate an HTML file with the free/busy times of all Exchange Server mailboxes which are member of a particular distribution list. The script accepts a command line parameter that can be the Exchange distribution list. If omitted the default distribution list 'Everyone' is used.

The HTML output file looks similar to the built-in Microsoft Outlook Attendee Availability page on an appointment form:

The HTML output page can either be stored on a file share or a Web server since it doesn't contain any Active Server Pages or VBScript/JScript code.

This sample is especially useful if you want to provide an easy way for your receptionist to lookup who is currently in the office and who is not.

Known Issues

If you want to run this application on top of Microsoft Exchange 2000 Server you need to follow the steps outlined in the Microsoft Knowledge Base article Q166599 - XWEB: .MMP file Created by MS Exchange Active Server, even if the article talks about Exchange 5.0 Server and Internet Information Server 3.0. Otherwise CDO 1.21 will not be able to use a dynamic MAPI profile to logon anonymously to the Exchange 2000 Server.

This sample can be used only with Microsoft Outlook 98/2000 installed in 'Corporate or Workgroup Mode', using the MAPI provider to access Microsoft Exchange Server. Also it is possible to run it on a Microsoft Exchange Server 5.5 or Outlook Web Access 5.5 machine, because both install a MAPI subsystem and CDO 1.21.

The script needs to run in the security context of a valid Windows NT/2000 using a valid Exchange Server name and mailbox, because it is not possible with CDO 1.x to pull out Free/Busy data when using anonymous access.

The Exchange Server and mailbox name must be hardcoded into the script file. For more information take a look into the script file itself.

Do not hide the distribution list from the Exchange Global Address List otherwise the script will fail because it cannot access hidden distribution lists.

After installing the Outlook security update this sample will stop working properly because of changes made by Microsoft. For more info on the Outlook security update please check Outlook e-mail Security Update

Note that the Office/Outlook 2000 setup does not install CDO 1.21 by default. You need to run the Office/Outlook 2000 setup and add CDO 1.21 as custom option.


Make sure that Microsoft Outlook 98/2000 is installed in Corporate or Workgroup mode and running properly. Also make sure that CDO 1.21 is installed properly.

Note that Outlook 2000 does not install CDO 1.21 by default.

Make sure am Exchange distribution list with the names used either as command line parameter or in the script, exists in the Exchange Global Address List. Only Free/Busy times of this distribution list members are extracted and added to the HTML page to avoid loading all entries from the Global Address List.

Checked Build

If you would like to use this sample with another language version of Microsoft Exchange Server or Microsoft Outlook, it is possible that the sample will not work without modifications. Please consult the source code for more information. This sample is built and checked for a proper function using the following environment:

  • Microsoft Windows NT Server 4.0, with Service Pack 6a, US English - International
  • Microsoft Windows 2000 Server, with Service Pack 1, US English - International
  • Microsoft Windows Scripting Host 1.0/2.0, US English - International
  • Microsoft Internet Information Server 4.0, US English - International
  • Microsoft Internet Information Service 5.0, US English - International
  • Microsoft Exchange Server 5.5, with Service Pack 3/4, US English - International
  • Microsoft Exchange 2000 Server, US English - International
  • Microsoft Outlook 2000, with Service Release 1, US English - International
  • Microsoft Internet Explorer 4.01, with Service Pack 2, US English - International
  • Microsoft Internet Explorer 5.5, Service Pack 1, US English - International
Installation and Configuration
Component Description 4 Kbyte) Windows Scripting Host script The Microsoft Windows Scripting Host (WSH) file which can be used to create the HTML output.

You can run this WSH file manually and copy the output HTML file on a share that is accessible by all users or your Web Server.

Another way is to run it on a scheduled basis using the Windows NT Schedule Service or the Task Scheduler. If you want to do this make sure the NT/Windows 2000 Account used does have proper permissions to open the mailbox used in the WSH script file.