Retornar valores de ações personalizadas JScript e VBScript
Ações personalizadas escritas em JScript ou Visual Basic, Scripting Edition (VBScript) podem chamar uma função opcional. Essas funções devem retornar um dos valores mostrados na tabela a seguir.
Valor de retorno | Valor | Descrição |
---|---|---|
msiDoActionStatusNoAction | 0 | Ação não executada. |
msiDoActionStatusSuccess | IDOK = 1 | Ação concluída com êxito. |
msiDoActionStatusUserExit | IDCANCEL = 2 | Terminação prematura por usuário. |
msiDoActionStatusFailure | IDABORT = 3 | Erro irrecuperável. Retornado se houver um erro durante a análise ou execução do JScript ou VBScript. |
msiDoActionStatusSuspend | IDRETRY = 4 | Sequência suspensa a ser retomada posteriormente. |
msiDoActionStatusFinished | IDIGNORE = 5 | Ignore as ações restantes. Não é um erro. |
Observe que o Windows Installer converte os valores retornados de todas as ações ao gravar o valor retornado no arquivo de log. Por exemplo, se o valor retornado da ação aparecer como 1 (um) no arquivo de log, isso significa que a ação retornou msiDoActionStatusSuccess. Para obter mais informações sobre essa tradução, consulte registro em log de valores de retorno de ação.
Para retornar um valor diferente do sucesso de uma ação personalizada de script, você deve usar um destino de função para a ação personalizada. A função de destino é especificada na coluna Destino do da Tabela CustomAction.
O exemplo de script a seguir mostra como retornar êxito ou falha de uma ação personalizada do VBScript.
Function MyVBScriptCA()
If Session.Property("CustomErrorStatus") <> "0" Then
'return error
MyVBScriptCA = 3
Exit Function
End If
' return success
MyVBScriptCA = 1
Exit Function
End Function
Se esse VBScript tiver sido inserido na tabela binária do pacote de instalação como MyCA.vbs, a a entrada da Tabela CustomAction para o script seria o seguinte:
Ação | Tipo | Fonte | Alvo |
---|---|---|---|
MyCustomAction | 6 | MyCA.vbs | MyVBScriptCA |