Getting Application Information

The product database contains information about a product. For more information on obtaining product information with enumeration functions, see Initializing an Application.

To get product information

  1. Verify that a product is installed by calling the MsiQueryProductState function.

  2. Open the database and obtain a handle to it by calling the MsiOpenProduct function.

    If the database is contained in an installation package, call the MsiOpenPackage function.

  3. Use the open handle to obtain product properties with the MsiGetProductProperty function, and to obtain descriptive feature information with the MsiGetFeatureInfo function.

    If you want to obtain product information using the product code, rather than using the open database handle, call the MsiGetProductInfo function instead of MsiGetProductProperty.

  4. Close an open installation handle by calling the MsiCloseHandle function.

    The MsiCloseAllHandles function is a diagnostic function and should not be used to close handles you know to be open. It is acceptable to call the MsiCloseAllHandles function when the application closes to ensure that all handles have been closed.