Função MsiGetPatchInfoExW (msi.h)
A função MsiGetPatchInfoEx consulta informações sobre a aplicação de um patch em uma instância especificada de um produto.
Sintaxe
UINT MsiGetPatchInfoExW(
[in] LPCWSTR szPatchCode,
[in] LPCWSTR szProductCode,
[in] LPCWSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCWSTR szProperty,
[out, optional] LPWSTR lpValue,
[in, out] LPDWORD pcchValue
);
Parâmetros
[in] szPatchCode
Uma cadeia de caracteres terminada em nulo que contém o GUID do patch. Esse parâmetro não pode ser NULL.
[in] szProductCode
Uma cadeia de caracteres terminada em nulo que contém o GUID ProductCode da instância do produto. Esse parâmetro não pode ser NULL.
[in] szUserSid
Uma cadeia de caracteres terminada em nulo que especifica o SID (identificador de segurança) sob o qual a instância do patch que está sendo consultado existe. Usar um valor NULL especifica o usuário atual.
[in] dwContext
Restringe a enumeração a um contexto por usuário não gerenciado, gerenciado por usuário ou por computador. Esse parâmetro pode ser qualquer um dos valores a seguir.
[in] szProperty
Uma cadeia de caracteres terminada em nulo que especifica o valor da propriedade a ser recuperada. O parâmetro szProperty pode ser um dos seguintes:
Nome | Significado |
---|---|
|
Obtém o arquivo de patch armazenado em cache que o produto usa. |
|
Obtém o conjunto de transformações de patch que a última instalação de patch aplicou ao produto. Esse valor poderá não estar disponível para aplicativos não gerenciados por usuário se o usuário não estiver conectado. |
|
Obtém a última vez que este produto recebeu o serviço. O valor dessa propriedade é substituído sempre que um patch é aplicado ou removido do produto ou a Opção de Linha de Comando /v é usada para reparar o produto. Se o produto não tiver recebido reparos ou patches, essa propriedade conterá a hora em que ele foi instalado neste computador. |
|
Retorna "1" se o patch estiver marcado como possível de desinstalar a partir do produto. Nessa ocorrência, o instalador ainda pode bloquear a desinstalação caso esse patch seja exigido por outro patch que não pode ser desinstalado. |
|
Retorna "1" se esse patch estiver aplicado ao produto no momento. Retornará "2" se esse patch for substituído por outro patch. Retornará "4" se esse patch estiver obsoleto. Esses valores correspondem às constantes usadas pelo parâmetro dwFilter de MsiEnumPatchesEx . |
|
Obtém o nome de exibição registrado para o patch. Em patches que não incluem a propriedade DisplayName na tabela MsiPatchMetadata, o nome de exibição retornado é uma cadeia de caracteres vazia (""). |
|
Obtém a URL de informações de suporte registrada para o patch. Em patches que não incluem a propriedade MoreInfoURL na tabela MsiPatchMetadata, a URL de informações de suporte retornada é uma cadeia de caracteres vazia (""). |
[out, optional] lpValue
Esse parâmetro é um ponteiro para um buffer que recebe o valor da propriedade. Esse buffer deve ser grande o suficiente para conter as informações. Se o buffer for muito pequeno, a função retornará ERROR_MORE_DATA e definirá *pcchValue como o número de TCHAR no valor da propriedade, não incluindo o caractere NULL de terminação.
Se lpValue for definido como NULL e pcchValue for definido como um ponteiro válido, a função retornará ERROR_SUCCESS e definirá *pcchValue como o número de TCHAR no valor, não incluindo o caractere NULL de terminação. Em seguida, a função pode ser chamada novamente para recuperar o valor, com buffer lpValue grande o suficiente para conter *pcchValue + 1 caracteres.
Se lpValue e pcchValue forem definidos como NULL, a função retornará ERROR_SUCCESS se o valor existir, sem recuperar o valor.
[in, out] pcchValue
Ao chamar a função , esse parâmetro deve ser um ponteiro para uma variável que especifica o número de TCHAR no buffer lpValue . Quando a função retorna, esse parâmetro é definido como o tamanho do valor solicitado, quer a função copie ou não o valor para o buffer especificado. O tamanho é retornado como o número de TCHAR no valor solicitado, não incluindo o caractere nulo de terminação.
Esse parâmetro só poderá ser definido como NULL se lpValue também for NULL. Caso contrário, a função retornará ERROR_INVALID_PARAMETER.
Valor retornado
A função MsiGetPatchInfoEx retorna os valores a seguir.
Código de retorno | Descrição |
---|---|
|
A função falha ao tentar acessar um recurso com privilégios insuficientes. |
|
Os dados de configuração estão corrompidos. |
|
A função falha e o erro não é identificado em outros códigos de erro. |
|
Um parâmetro inválido é passado para a função . |
|
O valor não se encaixa no buffer fornecido. |
|
O patch é enumerado com êxito. |
|
O produto que szProduct especifica não está instalado no computador. |
|
A propriedade não é reconhecida. |
|
O patch não foi reconhecido. |
Comentários
Windows Installer 2.0: Sem suporte. Essa função está disponível a partir do Windows Installer versão 3.0.
Um usuário pode consultar dados de patch para qualquer instância do produto visível. O grupo de administradores pode consultar dados de patch para qualquer instância do produto e qualquer usuário no computador. Nem todos os valores estarão disponíveis para aplicativos não gerenciados por usuário se o usuário não estiver conectado.
Observação
O cabeçalho msi.h define MsiGetPatchInfoEx 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
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. Confira os Requisitos de tempo de execução do Windows Installer para obter informações sobre o Windows service pack mínimo exigido por uma versão do Windows Installer. |
Plataforma de Destino | Windows |
Cabeçalho | msi.h |
Biblioteca | Msi.lib |
DLL | Msi.dll |