Tipo de ação personalizado 17
Essa ação personalizada chama uma DLL (biblioteca de link dinâmico) escrita em C ou C++.
Fonte
A DLL é instalada com o aplicativo durante a sessão atual. O campo Origem da tabela CustomAction contém uma chave para a tabela arquivo . O local do código de ação personalizado é determinado pela resolução do caminho de destino para este arquivo; portanto, essa ação personalizada deve ser chamada depois que esse arquivo tiver sido instalado e antes de ser removido.
Valor do tipo
Inclua o valor a seguir na coluna Type da tabela CustomAction para especificar o tipo numérico básico.
Constantes | Hexadecimal | Decimal |
---|---|---|
msidbCustomActionTypeDll + msidbCustomActionTypeSourceFile | 0x011 | 17 |
Alvo
A DLL é chamada por meio do ponto de entrada nomeado no campo Destino da tabela CustomAction, passando um único argumento que é o identificador para a sessão de instalação atual. O nome do ponto de entrada especificado na tabela deve corresponder ao exportado da DLL. Observe que se a função de entrada não for especificada por um . Arquivo DEF ou por uma especificação do vinculador /EXPORT: o nome pode ter um sublinhado à esquerda e um sufixo "@4". A função chamada deve especificar a convenção de chamada __stdcall.
Opções de processamento de retorno
Inclua bits de sinalizador opcionais na coluna Tipo da tabela CustomAction para especificar opções de processamento de retorno. Para obter uma descrição das opções e dos valores, consulte Opções de Processamento de Retorno de Ação Personalizada.
Opções de agendamento de execução
Inclua bits de sinalizador opcionais na coluna Tipo da tabela CustomAction para especificar opções de agendamento de execução. Essas opções controlam a execução múltipla de ações personalizadas. Para obter uma descrição das opções, consulte Opções de Agendamento de Execução de Ação Personalizada.
Opções de execução do In-Script
Inclua bits de sinalizador opcionais na coluna Type da tabela CustomAction para especificar uma opção de execução no script. Essas opções copiam o código de ação no script de execução, reversão ou confirmação. Para obter uma descrição das opções, consulte Opções de Execução In-Script de Ação Personalizada.
Valores retornados
Consulte valores de retorno da ação personalizada.
Observações
Uma ação personalizada que chama uma DLL (biblioteca de vínculo dinâmico) requer um identificador para a sessão de instalação. Se essa também for uma ação personalizada de execução adiada, a sessão poderá não existir mais durante a execução do script de instalação. Para obter informações sobre como uma ação personalizada desse tipo pode obter informações de contexto, consulte Obtendo informações de contexto para ações personalizadas de execução adiada.
Ações personalizadas são executadas em um thread separado e podem ter acesso limitado ao sistema. Ações personalizadas que são executadas bloqueiam assíncronamente o thread principal no encerramento da sequência atual ou da sessão de instalação até que retornem.
As ações personalizadas que fazem referência a um arquivo instalado como sua origem, como a DLL (Tipo de Ação Personalizada 17), devem seguir as seguintes restrições de sequenciamento:
- A ação personalizada deve ser sequenciada após a ação CostFinalize. Isso é para que a ação personalizada possa resolver o caminho necessário para localizar a DLL.
- Se o arquivo de origem ainda não estiver instalado no computador, as ações personalizadas adiadas (no script) desse tipo deverão ser sequenciadas após a ação InstallFiles.
- Se o arquivo de origem ainda não estiver instalado no computador, as ações personalizadas não adiadas desse tipo deverão ser sequenciadas após a ação InstallFinalize.
Tópicos relacionados