Função MsiGetProductPropertyA (msi.h)

A função MsiGetProductProperty recupera as propriedades do produto. Essas propriedades estão no banco de dados do produto.

Sintaxe

UINT MsiGetProductPropertyA(
  [in]      MSIHANDLE hProduct,
  [in]      LPCSTR    szProperty,
  [out]     LPSTR     lpValueBuf,
  [in, out] LPDWORD   pcchValueBuf
);

Parâmetros

[in] hProduct

Manipule para o produto obtido de MsiOpenProduct.

[in] szProperty

Especifica a propriedade a ser recuperada. Diferencia maiúsculas de minúsculas.

[out] lpValueBuf

Ponteiro para um buffer que recebe o valor da propriedade. O valor será truncado e encerrado em nulo se lpValueBuf for muito pequeno. Este parâmetro pode ser nulo.

[in, out] pcchValueBuf

Ponteiro para uma variável que especifica o tamanho, em caracteres, do buffer apontado pelo parâmetro lpValueBuf . Na entrada, esse é o tamanho total do buffer, incluindo um espaço para um caractere nulo de terminação. Se o buffer passado for muito pequeno, a contagem retornada não incluirá o caractere nulo de terminação.

Se lpValueBuf for nulo, pcchValueBuf poderá ser nulo.

Retornar valor

A função MsiGetProductProperty retorna os valores a seguir.

Valor Significado
ERROR_INVALID_PARAMETER
Um parâmetro inválido foi passado para a função.
ERROR_INVALID_HANDLE
Um identificador inválido foi passado para a função .
ERROR_MORE_DATA
Um buffer é muito pequeno para manter todo o valor da propriedade.
ERROR_SUCCESS
A função foi concluída com êxito.
 
 

Comentários

Quando a função MsiGetProductProperty retorna, o parâmetro pcchValueBuf contém o comprimento da cadeia de caracteres armazenada no buffer. A contagem retornada não inclui o caractere nulo de terminação. Se o buffer não for grande o suficiente, MsiGetProductProperty retornará ERROR_MORE_DATA e MsiGetProductProperty conterá o tamanho da cadeia de caracteres, em caracteres, sem contar o caractere nulo.

Observação

O cabeçalho msi.h define MsiGetProductProperty como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Installer 5.0 no Windows Server 2012, no Windows 8, no Windows Server 2008 R2 ou no Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 no Windows Server 2008 ou no Windows Vista. Windows Installer no Windows Server 2003 ou no Windows XP. Confira os Requisitos de tempo de execução do Windows Installer para obter informações sobre o service pack mínimo do Windows exigido por uma versão do Windows Installer.
Plataforma de Destino Windows
Cabeçalho msi.h
Biblioteca Msi.lib
DLL Msi.dll

Confira também

Funções de consulta de produto