Função MsiQueryComponentStateA (msi.h)
A função MsiQueryComponentState retorna o estado instalado de um componente. Essa função pode consultar um componente de uma instância de um produto instalado em contas de usuário diferentes do usuário atual, desde que o produto não seja anunciado no contexto por usuário não gerenciado para uma conta de usuário diferente do usuário atual. O processo de chamada deve ter privilégios administrativos para obter informações de um produto instalado para um usuário diferente do usuário atual.
Sintaxe
UINT MsiQueryComponentStateA(
[in] LPCSTR szProductCode,
[in] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCSTR szComponentCode,
[out] INSTALLSTATE *pdwState
);
Parâmetros
[in] szProductCode
Especifica o GUID do ProductCode para o produto que contém o componente.
[in] szUserSid
Especifica o SID (identificador de segurança) da conta na qual a instância do produto que está sendo consultado existe. Se dwContext não for MSIINSTALLCONTEXT_MACHINE, nulo especificará o usuário atual.
[in] dwContext
O contexto de instalação da instância do produto que está sendo consultada.
[in] szComponentCode
Especifica o componente que está sendo consultado. GUID do código do componente, conforme encontrado na coluna ComponentID da tabela Component .
[out] pdwState
Estado de instalação do componente para a instância de produto especificada. Esse parâmetro pode retornar um dos seguintes valores ou nulos.
Valor | Significado |
---|---|
|
O componente é instalado localmente. |
|
O componente está instalado para ser executado a partir da origem. |
Retornar valor
A função MsiQueryComponentState retorna os valores a seguir.
Valor | Significado |
---|---|
|
O processo de chamada deve ter privilégios administrativos para obter informações de um produto instalado para um usuário diferente do usuário atual. |
|
Os dados de configuração estão corrompidos. |
|
Um parâmetro inválido foi passado para a função. |
|
A função foi concluída com êxito. |
|
A ID do componente não identifica um componente conhecido. |
|
O código do produto não identifica um produto conhecido. |
|
Falhas que não podem ser inscritas em nenhum código de erro do Windows. |
|
Buffer muito pequeno para obter o SID do usuário. |
Para obter mais informações, consulte Mensagens de erro exibidas.
Comentários
Observação
O cabeçalho msi.h define MsiQueryComponentState 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. 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 |
Confira também
Funções de seleção do instalador
Sem suporte no Windows Installer 2.0 e nas versões anteriores