Возвращаемые значения пользовательских действий JScript и VBScript
Пользовательские действия, написанные в JScript или Visual Basic, Scripting Edition (VBScript) могут вызывать необязательную функцию. Эти функции должны возвращать одно из значений, показанных в следующей таблице.
Возвращаемое значение | Ценность | Описание |
---|---|---|
msiDoActionStatusNoAction | 0 | Действие не выполняется. |
msiDoActionStatusSuccess | IDOK = 1 | Действие выполнено успешно. |
msiDoActionStatusUserExit | IDCANCEL = 2 | Преждевременное завершение пользователем. |
msiDoActionStatusFailure | IDABORT = 3 | Неустранимая ошибка. Возвращается, если во время синтаксического анализа или выполнения JScript или VBScript возникает ошибка. |
msiDoActionStatusSusSuspend | IDRETRY = 4 | Приостановленная последовательность для возобновления позже. |
msiDoActionStatusFinished | IDIGNORE = 5 | Пропустить оставшиеся действия. Не ошибка. |
Обратите внимание, что установщик Windows преобразует возвращаемые значения из всех действий при записи возвращаемого значения в файл журнала. Например, если возвращаемое значение действия отображается как 1 (один) в файле журнала, это означает, что действие возвращает msiDoActionStatusSuccess. Дополнительные сведения об этом переводе см. в ведения журнала возвращаемых значений действия.
Чтобы вернуть значение, отличное от успешного выполнения пользовательского действия скрипта, необходимо использовать целевой объект функции для пользовательского действия. Целевая функция указана в целевом столбце таблицы CustomAction .
В следующем примере скрипта показано, как вернуть успех или сбой из пользовательского действия 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
Если этот VBScript был внедрен в двоичную таблицу пакета установки myCA.vbs, то запись CustomAction Table для скрипта будет следующим:
Действие | Тип | Источник | Цель |
---|---|---|---|
MyCustomAction | 6 | MyCA.vbs | MyVBScriptCA |