Compartir a través de


Valores devueltos de acciones personalizadas de JScript y VBScript

Las acciones personalizadas escritas en JScript o Visual Basic, Scripting Edition (VBScript) pueden llamar a una función opcional. Estas funciones deben devolver uno de los valores que se muestran en la tabla siguiente.

Valor devuelto Valor Descripción
msiDoActionStatusNoAction 0 Acción no ejecutada.
msiDoActionStatusSuccess IDOK = 1 La acción se completó correctamente.
msiDoActionStatusUserExit IDCANCEL = 2 Terminación prematura por parte del usuario.
msiDoActionStatusFailure IDABORT = 3 Error irrecuperable. Se devuelve si se produce un error durante el análisis o la ejecución de JScript o VBScript.
msiDoActionStatusSuspend IDRETRY = 4 Secuencia suspendida que se reanudará más adelante.
msiDoActionStatusFinished IDIGNORE = 5 Omita las acciones restantes. No es un error.

 

Tenga en cuenta que Windows Installer traduce los valores devueltos de todas las acciones cuando escribe el valor devuelto en el archivo de registro. Por ejemplo, si el valor devuelto de la acción aparece como 1 (uno) en el archivo de registro, significa que la acción devolvió msiDoActionStatusSuccess. Para obtener más información sobre esta traducción, consulte registro de valores devueltos de acción .

Para devolver un valor distinto del correcto de una acción personalizada de script, debe usar un destino de función para la acción personalizada. La función de destino se especifica en la columna Destino de la Tabla CustomAction.

En el siguiente ejemplo de script se muestra cómo devolver éxito o error desde una acción personalizada de 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

Si este VBScript se incrustara en la tabla binaria del paquete de instalación como MyCA.vbs, la entrada Tabla CustomAction para el script sería la siguiente:

Acción Tipo Fuente Blanco
MyCustomAction 6 MyCA.vbs MyVBScriptCA