Função MsiSourceListAddSourceExA (msi.h)
A função MsiSourceListAddSourceEx adiciona ou reordena o conjunto de fontes de um patch ou produto em um contexto especificado. Ele também pode criar uma lista de origem para um patch que não existe no contexto especificado.
Sintaxe
UINT MsiSourceListAddSourceExA(
[in] LPCSTR szProductCodeOrPatchCode,
[in, optional] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] DWORD dwOptions,
[in] LPCSTR szSource,
[in, optional] DWORD dwIndex
);
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 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 do produto ou patch. Esse parâmetro pode conter um dos valores a seguir.
[in] dwOptions
O valor dwOptions determina a interpretação do valor szProductCodeOrPatchCode e o tipo de fontes a serem limpas. Esse parâmetro deve ser uma combinação de uma das seguintes constantes MSISOURCETYPE_ e uma das seguintes constantes MSICODE_ .
[in] szSource
Origem para adicionar ou mover. Espera-se que esse parâmetro contenha apenas o caminho sem o nome do arquivo. O nome do arquivo já está registrado como "PackageName" e pode ser manipulado por meio de MsiSourceListSetInfo. Esse argumento é necessário.
[in, optional] dwIndex
Esse parâmetro fornece o novo índice para a origem. Todas as fontes são indexadas na lista de origem de 1 para N, em que N é a contagem de fontes na lista. Cada fonte na lista tem um índice exclusivo.
Se MsiSourceListAddSourceEx for chamado com uma nova origem e dwIndex definido como 0 (zero), a nova fonte será acrescentada à lista existente. Se dwIndex estiver definido como 0 e a origem já existir na lista, nenhuma atualização será feita na lista.
Se MsiSourceListAddSourceEx for chamado com uma nova origem e dwIndex definido como um valor diferente de zero menor que a contagem (N), a nova fonte será colocada no índice especificado e as outras fontes serão indexadas novamente. Se a origem já existir, ela será movida para o índice especificado e as outras fontes serão indexadas novamente.
Se MsiSourceListAddSourceEx for chamado com uma nova origem e dwIndex definido como um valor diferente de zero maior que a contagem de fontes (N), a nova fonte será acrescentada à lista existente. Se a origem já existir, ela será movida para o final da lista e as outras fontes serão indexadas novamente.
Valor retornado
A função MsiSourceListAddSourceEx retorna os valores a seguir.
Valor | Significado |
---|---|
|
O usuário não tem a capacidade de adicionar ou mover uma origem. Não indica se o produto ou patch foi encontrado. |
|
Os dados de configuração estão corrompidos. |
|
Não foi possível acessar o serviço Windows Installer. |
|
A origem foi inserida ou atualizada. |
|
O produto especificado é desconhecido. |
|
O patch especificado é desconhecido. |
|
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 as políticas DisableBrowse, AllowLockdownBrowse e AlwaysInstallElevated .
Observação
O cabeçalho msi.h define MsiSourceListAddSourceEx 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 |
Confira também
Sem suporte no Windows Installer 2.0 e nas versões anteriores