Compartir a través de


Control de errores en los archivos HTML del asistente

Cuando se crea un asistente con interfaz de usuario, el proyecto incluye archivos .htm.Estos archivos se utilizan para personalizar los proyectos.Vea Los archivos HTML para obtener más información.

En todo proyecto se debería incluir algún procedimiento de control de errores.El siguiente código proporciona un ejemplo de dicho control de errores.

Control de errores en HTML

  1. Al validar los campos, si llama a un método de validación de una DLL (donde debería establecerse la información sobre errores), deberá llamar sin parámetros a ReportError.

    function ValidateInput()
    {
       if (!window.external.ValidateFile(HEADER_FILE.value))
       {
          ReportError();
          HEADER_FILE.focus();
          return false;
       }
    }
    
  2. Al validar campos, si los valida sólo con el script HTML, deberá llamar primero a SetErrorInfo y, a continuación, a ReportError sin parámetros.

    function OnWhatever()
    {
       if (!ValidateInput())
          window.external.ReportErrror();
       ....
    }
    
    function ValidateInput()
    {
       .....
    
       if (HEADER_FILE.value == IMPL_FILE.value)
       {
          var L_ErrMsg_Text = "Header and implementation files cannot have the same name.";
          SetErrorInfo(L_ErrMsg_Text);
          bValid = false;
       }
       if (TYPE.value == "")
       {
          var L_ErrMsg4_Text = "Type cannot be blank.";
          SetErrorInfo(L_ErrMsg4_Text);
          bValid = false;
       }
       return bValid;
    }
    
  3. Llame con parámetros a ReportError:

    function ValidateInput()
    {
       if (!IsListed(strType))
       {
          var L_Invalid2_Text = "The variable type should be one of the types listed.";
          window.external.ReportError(L_Invalid2_Text);
          VariableType.focus();
          return false;
       }
    }
    
  4. Si ha de volver al cuadro de diálogo Nuevo proyecto o Agregar nuevo elemento, devuelva VS_E_WIZBACKBUTTONPRESS:

    try
    {
       oCM   = window.external.ProjectObject.CodeModel;
    }
    catch(e)
    {
       var L_NCBError_Text = "Cannot access the Class View information 
    file. Class View information will not be available.";
       window.external.ReportError(L_NCBError_Text);
       return VS_E_WIZARDBACKBUTTONPRESS;
    

Vea también

Conceptos

Archivos creados para un asistente

Personalizar un asistente