Partilhar via


Retornando mensagens de erro de ações personalizadas

Esta secção descreve como enviar mensagens a partir de ações personalizadas que executam uma parte da instalação, chamando uma biblioteca de vínculo dinâmico ou um script. Observe que Ação Personalizada Tipo 19 envia apenas uma mensagem de erro especificada, retorna falha e encerra a instalação. O tipo de ação personalizada 19 não executa nenhuma parte da instalação.

Para enviar uma mensagem de erro de uma ação personalizada que usa uma de biblioteca de vínculo dinâmico (DLL), faça a chamada de ação personalizada MsiProcessMessage. Observe que as ações personalizadas iniciadas por um DoAction ControlEvent podem enviar mensagens pelo método Message, mas não podem enviar uma mensagem com o MsiProcessMessage. Em sistemas anteriores ao Windows Server 2003, as ações personalizadas iniciadas por um DoAction ControlEvent não podem enviar mensagens através dos métodos MsiProcessMessage ou Message. Para obter mais informações, consulte Enviando mensagens para o Windows Installer usando MsiProcessMessage.

Para exibir uma mensagem de erro de dentro de uma ação personalizada usando uma DLL

  1. A ação personalizada deve chamar MsiProcessMessage e passar os parâmetros hInstall, eMessageTypee hRecord. O identificador para a instalação, Custom Action Type 19, pode ser fornecido para a ação personalizada conforme descrito em Acessando a sessão atual do instalador a partir de dentro de uma ação personalizada ou através de MsiOpenProduct ou MsiOpenPackage.
  2. O parâmetro eMessageType deve especificar um dos tipos de mensagem listados em MsiProcessMessage.
  3. O parâmetro hRecord da funçãoMsiProcessMessage depende do tipo de mensagem. Consulte como enviar mensagens para o Windows Installer usando o MsiProcessMessage. Se a mensagem contiver dados formatados, introduza a mensagem na tabela Erro utilizando a formatação descrita em Formatado.

Para enviar uma mensagem de erro de uma ação personalizada que usa Scripts, a ação personalizada pode chamar o método Message do objeto Session.

Para exibir uma mensagem de erro de uma ação personalizada usando um script

  1. A ação personalizada deve chamar o método Message do objeto Session e passar os parâmetros tipo e registro.
  2. O parâmetro tipo deve especificar um dos tipos de mensagem listados no método Message.
  3. O parâmetro do registro do método Mensagem depende do tipo de mensagem. Se a mensagem contiver dados formatados, introduza a mensagem na tabela Erro utilizando a formatação descrita em Formatado.

Ações personalizadas que utilizam arquivos executáveis não conseguem enviar uma mensagem ao chamar MsiProcessMessage ou o método Message, pois não conseguem obter um identificador para a instalação.

Valores de retorno de ação personalizada