Função MsiSourceListGetInfoA (msi.h)
A função MsiSourceListGetInfo recupera informações sobre a lista de origem de um produto ou patch em um contexto específico.
Sintaxe
UINT MsiSourceListGetInfoA(
[in] LPCSTR szProductCodeOrPatchCode,
[in, optional] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] DWORD dwOptions,
[in] LPCSTR szProperty,
[out, optional] LPSTR szValue,
[in, out, optional] LPDWORD pcchValue
);
Parâmetros
[in] szProductCodeOrPatchCode
O ProductCode ou o GUID de patch do produto ou patch. Use uma cadeia de caracteres terminada em nulo. Se a cadeia de caracteres tiver mais de 39 caracteres, a função falhará e retornará ERROR_INVALID_PARAMETER. Esse parâmetro não pode ser NULL.
[in, optional] szUserSid
Esse parâmetro pode ser um SID (identificador de segurança de cadeia de caracteres) que especifica a conta de usuário que contém o produto ou patch. O SID não é validado ou resolvido. Um SID incorreto pode retornar ERROR_UNKNOWN_PRODUCT ou ERROR_UNKNOWN_PATCH. Ao referenciar um contexto de computador, szUserSID deve ser NULL e dwContext deve ser MSIINSTALLCONTEXT_MACHINE.
[in] dwContext
Esse parâmetro especifica o contexto da instância de produto ou patch. Esse parâmetro pode conter um dos valores a seguir.
[in] dwOptions
O valor dwOptions especifica o significado de szProductCodeOrPatchCode.
Sinalizador | Significado |
---|---|
|
szProductCodeOrPatchCode é um GUID de código de produto. |
|
szProductCodeOrPatchCode é um GUID de código de patch. |
[in] szProperty
Uma cadeia de caracteres terminada em nulo que especifica o valor da propriedade a ser recuperada. O parâmetro szProperty pode usar um dos valores a seguir.
[out, optional] szValue
Um buffer de saída que recebe as informações. 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, não incluindo o caractere NULL de terminação.
Se szValue 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 o buffer szValue grande o suficiente para conter *pcchValue + 1 caracteres.
Se szValue e pcchValue estiverem definidos como NULL, a função retornará ERROR_SUCCESS se o valor existir, sem recuperar o valor.
[in, out, optional] pcchValue
Um ponteiro para uma variável que especifica o número de TCHAR no buffer szValue . 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 szValue também for NULL; caso contrário, a função retornará ERROR_INVALID_PARAMETER.
Valor retornado
A função MsiSourceListGetInfo retorna os valores a seguir.
Valor | Significado |
---|---|
|
O usuário não tem a capacidade de ler a lista de origem especificada. Isso não indica se um produto ou patch foi encontrado. |
|
Os dados de configuração estão corrompidos. |
|
Um parâmetro inválido é passado para a função . |
|
O buffer fornecido não é suficiente para conter os dados solicitados. |
|
A propriedade é recuperada com êxito. |
|
O patch não foi encontrado. |
|
O produto não foi encontrado. |
|
A propriedade de origem não foi encontrada. |
|
Uma falha interna inesperada. |
Comentários
Os administradores podem modificar a instalação de uma instância de patch ou produto que existe no contexto do computador ou em seu próprio contexto por usuário (gerenciado ou não gerenciado).) Eles podem modificar a instalação de uma instância de patch ou produto que existe no contexto por usuário gerenciado por usuário. Os administradores não podem modificar a instalação de outro usuário de uma instância de patch ou produto que existe no contexto não gerenciado por usuário desse outro usuário.
Os não administradores não podem modificar a instalação de uma instância de produto ou patch que existe no contexto por usuário de outro usuário (gerenciado ou não gerenciado).) Eles podem modificar a instalação de uma instância de produto ou patch que existe em seu próprio contexto por usuário não gerenciado. Eles podem modificar a instalação de uma instância de produto ou patch no contexto do computador ou no próprio contexto gerenciado por usuário somente se estiverem habilitados para procurar uma fonte de patch ou produto. Os usuários podem ser habilitados para procurar fontes definindo a política. Para obter mais informações, consulte Políticas DisableBrowse, AllowLockdownBrowse e AlwaysInstallElevated .
Observação
O cabeçalho msi.h define MsiSourceListGetInfo 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. Windows Installer 3.0 ou versões posteriores 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
Sem suporte no Windows Installer 2.0 e nas versões anteriores