Tipo de Ação Personalizada 2
Essa ação personalizada chama um executável iniciado com uma linha de comando.
Fonte
O executável é gerado com base em um fluxo binário temporário. O campo Source da tabela CustomAction contém uma chave para a tabela Binary. A coluna Data da tabela Binary contém os dados de fluxo. Um fluxo separado é alocado para cada linha.
Novos dados binários podem ser inseridos por meio de um arquivo usando MsiRecordSetStream seguido de MsiViewModify para inserir o registro na tabela. Quando a ação personalizada é invocada, os dados de fluxo são copiados para um arquivo temporário, que é processado conforme o tipo de ação personalizada.
Valor de tipo
Inclua o valor a seguir na coluna Type da tabela CustomAction para especificar o tipo numérico básico.
Constantes | Hexadecimal | Decimal |
---|---|---|
msidbCustomActionTypeExe + msidbCustomActionTypeBinaryData | 0x002 | 2 |
Destino
A coluna Target da tabela CustomAction contém a cadeia de caracteres de linha de comando para o executável nomeado na coluna Source.
Opções de processamento de retorno
Inclua bits de sinalizador opcionais na coluna Type da tabela CustomAction para especificar as opções de processamento de retorno. Para ver uma descrição das opções e dos valores, confira Opções de processamento de retorno da ação personalizada.
Opções de agendamento de execução
Inclua bits de sinalizador opcionais na coluna Type da tabela CustomAction para especificar as opções de agendamento de execução. Essas opções controlam a execução múltipla de ações personalizadas. Para conferir uma descrição das opções, consulte Opções de agendamento de execução de ação personalizada.
Opções de execução no 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 para o script de execução, reversão ou confirmação. Para conferir uma descrição das opções, consulte Opções de execução no script de ação personalizada.
Valores de retorno
As ações personalizadas que são arquivos executáveis precisam retornar o valor 0, em caso de sucesso. O instalador interpreta qualquer outro valor retornado como uma falha. Para ignorar os valores retornados, defina o sinalizador de bits msidbCustomActionTypeContinue no campo Type da tabela CustomAction.
Comentários
Uma ação personalizada que inicia um executável usa uma linha de comando, que normalmente contém propriedades designadas dinamicamente. Se essa também for uma ação personalizada de execução adiada, o instalador usará CreateProcessAsUser ou CreateProcess para criar o processo quando a ação personalizada for invocada do script de instalação.
Quando uma tabela de banco de dados é exportada, cada fluxo é gravado como um arquivo separado na subpasta com o mesmo nome da tabela, usando a chave primária como o nome do arquivo (coluna Name da tabela Binary), com a extensão padrão ".ibd". O nome deverá usar o formato 8.3 se o sistema de arquivos ou o sistema de controle de versão não der suporte a nomes de arquivos longos. O arquivo morto persistente substitui os dados de fluxo pelo nome do arquivo usado, para que os dados possam ser localizados quando a tabela for importada.
Tópicos relacionados