Tratamento de erros em arquivos HTML do Assistente
Quando você cria um assistente com uma interface de usuário, o seu projeto inclui arquivos. htm. Use esses arquivos para personalizar o seu projeto. Consulte Os arquivos de HTML para obter mais informações.
Seu projeto deve incluir o tratamento de erros. O código a seguir fornece um exemplo de tal código.
Para manipular erros em HTML
Quando você valida os campos, se você chamar um método de validação em uma DLL (que deve definir as informações de erro), chame ReportError com sem parâmetros.
function ValidateInput() { if (!window.external.ValidateFile(HEADER_FILE.value)) { ReportError(); HEADER_FILE.focus(); return false; } }
Quando você valida campos, se você validar o campo usando o script de HTML, ligue para SetErrorInfo primeiro e, em seguida, chame ReportError com sem 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; }
Chame ReportError com parâmetros:
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; } }
Se você deve voltar para o Novo projeto ou Add New Item caixa de diálogo retorno 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;