Microsoft KB Archive/280579

From BetaArchive Wiki

Article ID: 280579

Article Last Modified on 3/20/2007



APPLIES TO

  • Microsoft Internet Explorer 5.01, when used with:
    • Microsoft Windows 2000 Standard Edition
  • Microsoft Internet Explorer (Programming) 5.01 SP1, when used with:
    • Microsoft Windows 2000 Standard Edition
  • Microsoft Internet Explorer 5.5, when used with:
    • Microsoft Windows 2000 Standard Edition



This article was previously published under Q280579

SUMMARY

By design in Windows 2000, members of the Users group cannot install ActiveX controls from the Internet without modifying the rights of the group. However, some administrators may want to allow the Users group to install some ActiveX controls. This article describes how to publish a control in the Active Directory to facilitate this functionality.

MORE INFORMATION

Preparing the Control

The ActiveX control must be packaged as an Installer Package (.msi) file instead of as a standard Internet Explorer cabinet (.cab) file. The .msi file can be created by using Visual Studio Installer. For the ActiveX control to be listed properly in the Active Directory, it must be set up to register through the .msi file instead of registering automatically.

To create the installation package, follow these steps:

  1. Add the control to the Visual Installer package. To do this, click Add Files on the Project menu, and add your compiled control file to the project.
  2. Determine the CLSID. To do this, either use the OLE View tool that ships with Microsoft Visual Studio, or look it up in the registry.
  3. Open the Target Machine/Associations section of the project.
  4. Under COM Object, add the control CLSID.
  5. Under Type Libraries, add the control type library ID. If you are using a Microsoft Visual Basic (VB) control, it is the same as the CLSID by default.
  6. Continue packaging the control as you normally would (that is, add any additional files and registry entries) by using Visual Installer.
  7. Place the .msi file for the control on a public share on the network.

Publishing the Control

After the MSI has been created, the Active Directory must be made aware of the control. The control must be added as a published control in the user portion of a policy for the appropriate Organizational Unit (OU). After the control has been published properly, you should see it in Add/Remove programs for any of the users in the OU.

After you have prepared the control and confirmed that the control can be seen in Add/Remove programs, you need to set up a registry entry in Windows 2000 that causes Internet Explorer to check the Active Directory for an installation package for the control. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

241163 How to publish ActiveX controls in Windows 2000 using IntelliMirror


After the registry changes are made, Internet Explorer installs the control from the Active Directory under the permissions of the Administrator who published the control. The control is installed when the user visits a Web page that contains the control. The method that is described works based on the CLSID of the control as referenced on the Web page that hosts the control. This solution works no matter what the codebase refers to. Because most Web pages that use ActiveX controls on the Internet already have a codebase that clearly cannot be modified to point to a local installation location, this method makes controlled installation possible in the environment. No changes are necessary for the Web page itself.

REFERENCES

To download Visual Studio Installer 1.1, visit the following Microsoft Developer Network (MSDN) Web site:

For more information about how to inspect COM components by using the TypeLib Information Object Library (TLI), visit the following MSDN Web site:

For more information about developing Web-based solutions for Microsoft Internet Explorer, visit the following Microsoft Web sites:


Additional query words: msi

Keywords: kbhowto KB280579