Udostępnij za pośrednictwem


Zwracane wartości akcji niestandardowych JScript i VBScript

Akcje niestandardowe napisane w JScript lub Visual Basic, Scripting Edition (VBScript) mogą wywoływać opcjonalną funkcję. Te funkcje muszą zwrócić jedną z wartości przedstawionych w poniższej tabeli.

Wartość zwracana Wartość Opis
msiDoActionStatusNoAction 0 Akcja nie jest wykonywana.
msiDoActionStatusSuccess IDOK = 1 Akcja została ukończona pomyślnie.
msiDoActionStatusUserExit IDCANCEL = 2 Przedwczesne zakończenie przez użytkownika.
msiDoActionStatusFailure IDABORT = 3 Nieodwracalny błąd. Zwracany, jeśli podczas analizowania lub wykonywania skryptu JScript lub VBScript wystąpił błąd.
msiDoActionStatusSuspend IDRETRY = 4 Wstrzymana sekwencja, która ma zostać wznowiona później.
msiDoActionStatusFinished IDIGNORE = 5 Pomiń pozostałe akcje. Nie jest to błąd.

 

Należy pamiętać, że Instalator Windows tłumaczy zwracane wartości ze wszystkich akcji, gdy zapisuje wartość zwracaną w pliku dziennika. Jeśli na przykład wartość zwracana akcji jest wyświetlana jako 1 (jeden) w pliku dziennika, oznacza to, że akcja zwróciła wartość msiDoActionStatusSuccess. Aby uzyskać więcej informacji na temat tego tłumaczenia, zobacz rejestrowanie wartości zwracanych akcji.

Aby zwrócić wartość inną niż powodzenie z niestandardowej akcji skryptu, należy użyć obiektu docelowego funkcji dla akcji niestandardowej. Funkcja docelowa jest określona w kolumnie Target CustomAction Table.

Poniższy przykładowy skrypt pokazuje, jak zwrócić powodzenie lub niepowodzenie z akcji niestandardowej 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

Jeśli ten skrypt VBScript został osadzony w tabeli Binary pakietu instalacyjnego jako MyCA.vbs, wpis CustomAction Table dla skryptu będzie następujący:

Akcja Typ Źródło Cel
MyCustomAction 6 MyCA.vbs MyVBScriptCA