Executive Summary:

Microsoft's Group Policy Software Installation works in conjunction with Microsoft Group Policy and Microsoft Active Directory (AD) to manage applications' life cycles, including their deployment. Unfortunately, not all applications are designed to be deployed with Group Policy Software Installation. For example, Microsoft Visio 2007 Viewer wasn't designed to be deployed that way. Although you can make some tweaks that enable you use Group Policy Software Installation for deployment, one possible consequence is that these applications don't register their file extensions, so the auto-install feature doesn't work. Using Microsoft Visio 2007 Viewer as an example, here's how you can use ADSI Edit to manually add the file extensions to the appropriate Group Policy Object (GPO), thereby fixing the problem.


Applications that you deploy with Group Policy Software Installation sometimes don’t register their file extensions. Consequently, when someone double-clicks a file that has an extension of one of those published applications, the autoinstall feature doesn’t work. This situation most often occurs in applications that weren’t designed for deployment through Group Policy Software Installation but were deployed anyway through some minor tweaks. (If you’re unfamiliar with Group Policy Software Installation, see technet2.microsoft.com/windowsserver/en/library/4bdaf0f7-b7ac-41a6-9d25-9eab6aa1965c1033.mspx.)

One way to solve the file extension problem is to use ADSI Edit to manually add the file extensions to the Group Policy Object (GPO) that publishes the applications. To show you how this solution works, let’s walk through the steps you’d use to add the file extension for Microsoft Visio 2007 Viewer, which unfortunately wasn’t designed for deployment through Group Policy Software Installation. Here are the steps you need to follow:

1. Download Visio 2007 Viewer (visioviewer.exe) from the Microsoft Download Center (www.microsoft.com/downloads/details.aspx?FamilyId=D88E4542-B174-4198-AE31-6884E9EDD524&displaylang=en). You’ll need WinZip to unzip this file. If you don’t have WinZip, you can use 7-Zip, which is freeware that you can download from www.7-zip.org.

2. Double-click visioviewer .exe. In the window that appears, right-click visioviewer.exe and select the option to extract the files to a new folder. After the extraction operation completes, the folder should contain five files, including vviewer.msi. Copy that folder to the share you use for GPO-installed packages.

3. Create a new GPO, go to the User Configuration\Software Installation folder in the Microsoft Management Console (MMC) Group Policy snap-in, and use the vviewer.msi file to publish the application. Because Microsoft didn’t create Visio 2007 Viewer with GPO installation in mind, the file extension .vsd doesn’t get registered.

4. Obtain the globally unique identifier (GUID) of the GPO you used to publish Visio 2007 Viewer. To get it, open the GPO and move to the root level, which is the level above Computer Configuration. Right-click and select Properties. The GUID appears in the Unique name field.

5. Use ADSI Edit to edit the GPO. (If you don’t have this tool installed already, you can find it in the Windows Server 2003 Support Tools.) Under the Start menu, select Run. In the Run dialog box, type adsiedit.msc and click OK. After ADSI Edit opens, go to the Action menu and select the Connect to option to open the Connection Settings dialog box. In the dialog box’s Connection Point section, click Select a well known Naming Context and select Domain from the list. In the Computer section, enter the name of your nearest domain controller (DC).

Click OK.

6. Navigate to Domain, DC=your AD domain’s LDAP name>,CN=System, CN=Policies,CN=your GPO’s GUID>,CN=User,CN=Class Store,CN=Packages. Here you’ll find representations for all your GPOs. If you have more than one GPO, you’ll have to manually find the correct one by doubleclicking each GPO and checking the value of the displayName attribute, which needs to be Visio Viewer in this case.

7. After you find the correct GPO, look for its fileExtPriority attribute and open it. (If you don’t see this attribute, clear the Show only attributes that have values check box.) In the dialog box that appears, enter the extensions you want to associate with this package. Visio 2007 Viewer’s extension is .vsd, so you’d enter

Continue to page 2

  .vsd: 0

Note that you must include the space between the colon (:) and the value of 0. Click Add. You can enter multiple extensions, following the procedure I just described.

That’s it! Now, whenever users double-click .vsd files, Visio 2007 Viewer will automatically get installed. Interestingly, if you add more extensions after the initial deployment of the package, you don’t have to wait for Group Policy to be refreshed for the change to take effect. It works instantly!

—Apostolos Fotakelis,
Systems Administrator,
Aristotle University of Thessaloniki,
and freelance IT consultant