Compartilhar via


Interceptação de erro

Databinding, interceptação de erro é fornecido de duas fontes: eventos de erro ou objetos de erro.

Erro de interrupção por meio de eventos de erro

Controle de dados ADO e os controles de dados RDO RemoteData controle tem eventos de erro.Normalmente, você pode definir um manipulador de eventos de erro.Os manipuladores de evento tem a seguinte assinatura.

void CMyDlg::OnErrorAdodc1(long ErrorNumber,
                           BSTR* FAR Description,
                           long Scode,
                           LPCTSTR Source,
                           LPCTSTR HelpFile,
                           long HelpContext,
                           BOOL FAR* fCancelDisplay)

Geralmente o campo Descrição é preenchido, mas os campos ErrorNumber e Scode são preenchidos apenas em caso de erros COM.Um manipulador de eventos padrão é exibir o campo de descrição na caixa de mensagem.Por exemplo:

{
   USES_CONVERSION;   
// note: have to include the ATL file ATLConv.h to use the ATL conversion macros
   ::AfxMessageBox(OLE2T(*Description), MB_OK);
}

No entanto, como o controle de dados ADO e o controle RemoteData RDO já configuradas para interceptar eventos de erro, nenhuma codificação é necessário.

Trapping de objetos de erro do erro

ADO e RDO tem objetos de erro.Ao gerar classes wrapper, o controle RemoteData RDO gera invólucros para objetos de erro, mas não o controle de dados ADO.

Controle de dados ADO exibe automaticamente as mensagens de erro do ADO.

Consulte também

Referência

Ligação de dados com controles de ActiveX no Visual C++