Partager via


Gestion des erreurs dans les fichiers HTML d'Assistant

Mise à jour : novembre 2007

Quand vous créez un Assistant avec une interface utilisateur, votre projet inclut les fichiers .htm. Utilisez ces fichiers pour personnaliser votre projet. Pour plus d'informations, consultez Les fichiers HTML.

Votre projet doit inclure une gestion des erreurs. Le code ci-dessous fournit un exemple d'un tel code.

Pour gérer les erreurs en HTML

  1. Lors de la validation des champs, si vous appelez une méthode de validation dans une DLL (qui doit définir l'information sur l'erreur), appelez ReportError sans paramètre.

    function ValidateInput()
    {
       if (!window.external.ValidateFile(HEADER_FILE.value))
       {
          ReportError();
          HEADER_FILE.focus();
          return false;
       }
    }
    
  2. Lors de la validation des champs, si vous validez le champ seulement à partir du script HTML, appelez SetErrorInfo d'abord, puis ReportError sans paramètre.

    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. Appelez ReportError avec des paramètres :

    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 vous devez revenir à la boîte de dialogue Nouveau projet ou Ajouter un nouvel élément, retourne VS_E_WIZBACKBUTTONPRESS :

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

Voir aussi

Concepts

Fichiers créés pour votre Assistant

Personnalisation de votre Assistant