You are currently offline, waiting for your internet to reconnect

How to programmatically check for the presence of a Windows Installer-based product by using its product code

INTRODUCTION
Windows Installer provides APIs that let a user query the Windows Installer database for the presence of a particular product. Each product is uniquely identified by its product code, which is a GUID.This article provides code samples that show how to programmatically check for the presence of a Windows Installer-based product by using its product code.
MORE INFORMATION

Call the API from Visual C++

The following is an example of how you can call the MsiGetProductInfoExW() method in Visual C++ to detect the presence of a specific product. The product is specified by its unique product code GUID.
TCHAR szVersion[20];DWORD cchVersion = 20;BOOL fInstalled = (ERROR_SUCCESS == MsiGetProductInfoEx (TEXT("{ProductCode}"), NULL, MSIINSTALLCONTEXT_MACHINE, INSTALLPROPERTY_VERSIONSTRING, szVersion, &cchVersion));
In this code example fragment, the fInstalled Boolean variable will contain a TRUE or FALSE value, depending on whether the product that is specified is installed or not installed.

Call the API from VBScript

The following is an example of how you can call the ProductInfo() method on the WindowsInstaller.Installer object in Microsoft Visual Basic Script to detect the presence of a specific product. The product is specified by its unique product code GUID.
 Dim msi : Set msi = CreateObject("WindowsInstaller.Installer")On Error Resume NextDim version : version = msi.ProductInfo("{ProductCode}", "VersionString")Dim installed : installed = ( Err.Number = 0 )
In this code example fragment, the installed variable will contain a 0 or 1 value, depending on whether the product that is specified is installed or not installed.

Note The ProductCode property that is passed to the functions in both examples here include braces ({ }) inside the quotation marks.For more information about Windows Installer, visit the following Microsoft Windows Installer MSDN Web page:For more information about how to obtain the latest version of Windows Installer for your computer, visit the following Microsoft Web page: For more information, visit the following Microsoft Web pages: Note about the "Applies to" sectionIn addition to the products that are listed in the "Applies to" section, the information in this article also applies to the following product:
  • Windows Installer 4.0
Windows Installer MSI product code script API
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.
Properties

Article ID: 974653 - Last Review: 07/01/2010 04:23:00 - Revision: 2.0

Microsoft Windows Installer 4.5, Microsoft Windows Installer 3.1, Microsoft Security Essentials

  • kbexpertiseinter kbsecurity kbsecvulnerability kbsurveynew KB974653
Feedback