Q: Where can I find the latest version of the Outlook antispam update?

A: Microsoft Office Outlook 2007 and Outlook 2003 include a Junk E-Mail Filter to help keep Inboxes free of spam messages. This filter is based on SmartScreen, a technology Microsoft developed following years of experience with the spam traps known as Hotmail, MSN, and now Windows Live. Spammers adapt, so administrators combating spam must constantly improve their tools. Microsoft releases updates to the Junk E-Mail Filter for both Outlook and Outlook Express (renamed Windows Mail in Windows Vista) approximately once a month.

Microsoft lists the available Junk E-Mail Filter updates in Knowledge Base article 872976, "How to obtain the latest Outlook Junk E-mail Filter update," at http://support.microsoft.com/kb/872976. This article is updated when new versions of the filter are released, but it’s not an official record and sometimes lags behind. For each Junk E-Mail Filter update, Microsoft assigns a unique Knowledge Base article number for the description and download instructions. A search of Office products in the Microsoft Download Center using "outlook junk e-mail filter update" returns the available downloads for Outlook 2007 and 2003 updates. Click the Release Date column heading to sort the results by release date, as shown in Figure 1. Here we see the latest updates were on March 11, 2008, for Outlook 2003 (Knowledge Base article 947944) and March 10, 2008, for Outlook 2007 (Knowledge Base article 947945).

The Junk E-Mail Filter updates are typically installed via Microsoft Update or Windows Server Update Services (WSUS). On Windows workstations running Outlook 2007 or 2003, the Control Panel shows the applied updates. In Windows XP, the Control Panel option is Add/Remove Programs, and in Vista it’s called Programs and Features. In Figure 2, the circled line shows the December 2007 Outlook Junk E-mail Filter update applied on a Vista workstation with Outlook 2007. This entry references Knowledge Base article 947945, which lists the versions of any files that have been changed for this update.

Two main files comprise the Outlook Junk E-mail Filter update—Outlfltr.dat and Outlfltr.dll. The location of these files depends on which versions of Outlook and Windows you’re running. In Outlook 2007, you can find these files under %programfiles%Microsoft Office\Office12\. In Outlook 2003, you can find these files under %programfiles%\Microsoft\Office\Office11.

Knowledge Base article 947945 shows that Outlfltr.dat was updated and should now represent version 12.0.6211.1416 of the file. It also shows the timestamp and size of the file. To verify these properties in Windows Explorer, navigate to the file, right-click the file, and select Properties from the context menu. The timestamp on the file might differ from the timestamp in the Knowledge Base article because of time zone differences. However, the size listed in the file's Properties should match the size in the Knowledge Base article. In XP, the Version tab shows the specific version of the file.

You can also obtain file properties through scripting either as a user with sufficient rights, or more likely as an administrator verifying updates. A couple of lines of VBScript can be called locally to retrieve file properties. For example, the GetFileVersion method of the FileSystemObject in VBScript returns the version. Here’s a very basic code snippet for this:

Set objFV = CreateObject("Scripting.FileSystemObject")<br>Wscript.Echo objFV.GetFileVersion("c:\program files\microsoft office\office12\outlfltr.dat")

You can save this script with a .vbs extension and run it from the command line to return the version of the file at the location identified in the second line of the script. The output will take the form of a small pop-up, as shown in Figure 3. The version number shown in Figure 3 matches the version outlined in Knowledge Base article 947945, which I mentioned earlier.

This VBScript works locally or within a logon script; however, Windows Management Instrumentation (WMI) can also be used to retrieve file version information on remote workstations. Here’s a sample WMI script to retrieve the file version of Outlfltr.dat in Outlook 2007:

strComputer = "."<br>Set objWMIService = GetObject _<br>    ("winmgmts:" & "!\\" & strComputer & "\root\cimv2")<br>Set outlkFiles = objWMIService.ExecQuery _<br>    ("Select * from CIM_DataFile where Name = " _<br>        & "'c:\\program files\\microsoft office\\office12\\outlfltr.dat'")<br>For Each objFile in outlkFiles<br>msgbox objfile.version<br>Next

This code can be saved with a .vbs extension and can be modified to retrieve more information, save the information to a file, and cycle through multiple workstations.