Função MsiSourceListForceResolutionA (msi.h)
A função MsiSourceListForceResolution força o instalador a pesquisar uma fonte de produto válida na próxima vez que uma origem for necessária. Por exemplo, quando o instalador executa uma instalação ou reinstalação, ou quando requer o caminho para um componente que está definido para ser executado a partir da origem.
Sintaxe
UINT MsiSourceListForceResolutionA(
[in] LPCSTR szProduct,
[in] LPCSTR szUserName,
[in] DWORD dwReserved
);
Parâmetros
[in] szProduct
O ProductCode do produto a ser modificado.
[in] szUserName
O nome de usuário para uma instalação por usuário. O nome de usuário deve estar sempre no formato DOMAIN\USERNAME (ou MACHINENAME\USERNAME para um usuário local).
Uma cadeia de caracteres vazia ou NULL para uma instalação por computador.
[in] dwReserved
Reservado para uso futuro. Esse valor deve ser definido como 0.
Retornar valor
A função MsiSourceListForceResolution retorna os valores a seguir.
Valor | Significado |
---|---|
|
O chamador não tem acesso suficiente para forçar a resolução do produto. |
|
Os dados de configuração estão corrompidos. |
|
O usuário especificado não é um usuário válido. |
|
A função não pôde ser concluída. |
|
Não foi possível acessar o serviço de instalação. |
|
Um parâmetro inválido foi passado para a função. |
|
A função foi bem-sucedida. |
|
O produto especificado é desconhecido. |
Comentários
Um administrador pode modificar instalações por computador, suas próprias instalações não gerenciadas por usuário e as instalações gerenciadas por usuário para qualquer usuário. Um não administrador só pode modificar instalações por computador e suas próprias instalações por usuário (gerenciadas ou não gerenciadas).
Se o nome de usuário for uma cadeia de caracteres vazia ou NULL, a função funcionará na instalação por computador do produto. Nesse caso, se o produto estiver instalado apenas como por usuário, a função retornará ERROR_UNKNOWN_PRODUCT.
Se o nome de usuário não for uma cadeia de caracteres vazia ou NULL, ele especificará o nome do usuário cuja instalação do produto é modificada. Se o nome de usuário for o nome de usuário atual, a função primeiro tentará modificar uma instalação não gerenciada do produto. Se nenhuma instalação não gerenciada do produto puder ser encontrada, a função tentará modificar uma instalação gerenciada por usuário do produto. Se nenhuma instalação gerenciada ou não gerenciada por usuário do produto puder ser encontrada, a função retornará ERROR_UNKNOWN_PRODUCT, mesmo que o produto seja instalado por computador.
Essa função não pode modificar uma instalação não gerenciada para qualquer usuário além do usuário atual. Se o nome de usuário não for uma cadeia de caracteres vazia ou NULL, mas não for o usuário atual, a função verificará apenas uma instalação gerenciada por usuário do produto para o usuário especificado. Se o produto não estiver instalado como gerenciado por usuário para o usuário especificado, a função retornará ERROR_UNKNOWN_PRODUCT, mesmo que o produto seja instalado por computador.
Observação
O cabeçalho msi.h define MsiSourceListForceResolution 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 |