MsiGetProductCodeA function (msi.h)
The MsiGetProductCode function returns the product code of an application by using the component code of an installed or advertised component of the application. During initialization, an application must determine under which product code it has been installed or advertised.
Syntax
UINT MsiGetProductCodeA(
[in] LPCSTR szComponent,
[out] LPSTR lpBuf39
);
Parameters
[in] szComponent
This parameter specifies the component code of a component that has been installed by the application. This will be typically the component code of the component containing the executable file of the application.
[out] lpBuf39
Pointer to a buffer that receives the product code. This buffer must be 39 characters long. The first 38 characters are for the GUID, and the last character is for the terminating null character.
Return value
Value | Meaning |
---|---|
|
The configuration data is corrupt. |
|
The product code could not be determined. |
|
An invalid parameter was passed to the function. |
|
The function completed successfully. |
|
The specified component is unknown. |
Remarks
During initialization, an application must determine the product code under which it was installed. An application can be part of different products in different installations. For example, an application can be part of a suite of applications, or it can be installed by itself.
Note
The msi.h header defines MsiGetProductCode as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Installer 5.0 on Windows Server 2012, Windows 8, Windows Server 2008 R2 or Windows 7. Windows Installer 4.0 or Windows Installer 4.5 on Windows Server 2008 or Windows Vista. Windows Installer on Windows Server 2003 or Windows XP. See the Windows Installer Run-Time Requirements for information about the minimum Windows service pack that is required by a Windows Installer version. |
Target Platform | Windows |
Header | msi.h |
Library | Msi.lib |
DLL | Msi.dll |