Compartilhar via


Função MsiSetExternalUIA (msi.h)

A função msiSetExternalUI habilita um manipulador de interface do usuário externo. Esse manipulador de interface do usuário externo é chamado antes do manipulador de interface do usuário interno normal. O manipulador de interface do usuário externo tem a opção de suprimir a interface do usuário interna retornando um valor diferente de zero para indicar que ele lidou com as mensagens. Para obter mais informações, consulte Sobre a interface do usuário.

Sintaxe

INSTALLUI_HANDLERA MsiSetExternalUIA(
  [in] INSTALLUI_HANDLERA puiHandler,
  [in] DWORD              dwMessageFilter,
  [in] LPVOID             pvContext
);

Parâmetros

[in] puiHandler

Especifica uma função de retorno de chamada que está em conformidade com a especificação de INSTALLUI_HANDLER.

[in] dwMessageFilter

Especifica quais mensagens manipular usando o manipulador de mensagens externo. Se o manipulador externo retornar um resultado diferente de zero, essa mensagem não será enviada para a interface do usuário, em vez disso, a mensagem será registrada se o registro em log tiver sido habilitado. Para obter mais informações, consulte a função MsiEnableLog.

Valor Significado
INSTALLLOGMODE_FILESINUSE
Arquivos em informações de uso. Quando essa mensagem é recebida, uma de diálogo FilesInUse deve ser exibida.
INSTALLLOGMODE_FATALEXIT
Término prematuro da instalação.
INSTALLLOGMODE_ERROR
As mensagens de erro são registradas.
INSTALLLOGMODE_WARNING
As mensagens de aviso são registradas.
INSTALLLOGMODE_USER
As solicitações do usuário são registradas em log.
INSTALLLOGMODE_INFO
As mensagens de status que não são exibidas são registradas em log.
INSTALLLOGMODE_RESOLVESOURCE
Solicitação para determinar um local de origem válido.
INSTALLLOGMODE_RMFILESINUSE
Arquivos em informações de uso. Quando essa mensagem é recebida, uma de diálogo MsiRMFilesInUse deve ser exibida.
INSTALLLOGMODE_OUTOFDISKSPACE
Não havia espaço em disco suficiente.
INSTALLLOGMODE_ACTIONSTART
O início das novas ações de instalação é registrado em log.
INSTALLLOGMODE_ACTIONDATA
O registro de dados com a ação de instalação é registrado em log.
INSTALLLOGMODE_COMMONDATA
Os parâmetros para inicialização da interface do usuário são registrados.
INSTALLLOGMODE_PROGRESS
informações de da barra de progresso. Essa mensagem inclui informações sobre unidades até o momento e o número total de unidades. Para obter uma explicação do formato da mensagem, consulte a função MsiProcessMessage. Essa mensagem só é enviada para uma interface do usuário externa e não é registrada em log.
INSTALLLOGMODE_INITIALIZE
Se essa não for uma instalação silenciosa, o básico de interface do usuário foi inicializado. Se essa for uma instalação de de interface do usuário completa, a de interface do usuário completa ainda não foi inicializada. Essa mensagem só é enviada para uma interface do usuário externa e não é registrada em log.
INSTALLLOGMODE_TERMINATE
Se um de interface do usuário completo estiver sendo usado, o de interface do usuário completo será encerrado. Se essa não for uma instalação silenciosa, a de interface do usuário básica ainda não foi encerrada. Essa mensagem só é enviada para uma interface do usuário externa e não é registrada em log.
INSTALLLOGMODE_SHOWDIALOG
Enviado antes da exibição da caixa de diálogo de de interface do usuário completa. Essa mensagem só é enviada para uma interface do usuário externa e não é registrada em log.
INSTALLLOGMODE_INSTALLSTART
A instalação do produto começa.

A mensagem contém o ProductName e o ProductCode do produto.

INSTALLLOGMODE_INSTALLEND
Instalação de extremidades do produto.

A mensagem contém o ProductName, o ProductCode e o valor retornado do produto.

[in] pvContext

Ponteiro para um contexto de aplicativo que é passado para a função de retorno de chamada. Esse parâmetro pode ser usado para verificação de erros.

Valor de retorno

O valor retornado é o manipulador externo definido anteriormente ou zero (0) se não houver nenhum manipulador definido anteriormente.

Observações

Para restaurar o manipulador de interface do usuário anterior, a segunda chamada é feita para msiSetExternalUI usando o INSTALLUI_HANDLER retornado pela primeira chamada para MsiSetExternalUI e especificando zero (0) para dwMessageFilter.

O manipulador de interface do usuário externo apontado pelo parâmetro puiHandler não tem controle total sobre a interface do usuário externo, a menos que MsiSetInternalUI seja chamado com o parâmetro dwUILevel definido como INSTALLUILEVEL_NONE. Se MsiSetInternalUI não for chamado, o nível de interface do usuário interno usará como padrão INSTALLUILEVEL_BASIC. Como resultado, qualquer mensagem não manipulada pelo manipulador de interface do usuário externo é tratada pelo Windows Installer. A inicial "Preparando para instalar. . A caixa de diálogo ."sempre será exibida mesmo que o manipulador de interface do usuário externo manipule todas as mensagens.

MsiSetExternalUI só deve ser chamado de um aplicativo de inicialização de . Não é possível chamar MsiSetExternalUI de uma ação personalizada.

Nota

O cabeçalho msi.h define MsiSetExternalUI como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows Installer 5.0 no Windows Server 2012, Windows 8, Windows Server 2008 R2 ou Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 no Windows Server 2008 ou Windows Vista. Windows Installer no Windows Server 2003 ou Windows XP. Consulte os Requisitos de Run-Time do Windows Installer para obter informações sobre o service pack mínimo do Windows exigido por uma versão do Windows Installer.
da Plataforma de Destino Windows
cabeçalho msi.h
biblioteca Msi.lib
de DLL Msi.dll

Consulte também

interface e funções de log