AfxThrowOleDispatchException
Use esta função para lançar uma exceção dentro de uma função de automação OLE.
void AFXAPI AfxThrowOleDispatchException(
WORD wCode,
LPCSTR lpszDescription,
UINT nHelpID = 0
);
void AFXAPI AfxThrowOleDispatchException(
WORD wCode,
UINT nDescriptionID,
UINT nHelpID = -1
);
Parâmetros
wCode
Um código de erro específico do aplicativo.lpszDescription
Descrição textual do erro.nDescriptionID
Identificação do recurso para a descrição textual do erro.nHelpID
Um contexto de ajuda para Ajuda do aplicativo (.Arquivo HLP).
Comentários
As informações fornecidas para esta função podem ser exibidas pelo aplicativo indicações (Microsoft Visual Basic ou outro aplicativo de cliente de automação OLE).
Exemplo
// Sort is method of automation class CStrArrayDoc
long CStrArrayDoc::Sort(VARIANT* vArray)
{
USES_CONVERSION;
// Type check VARIANT parameter. It should contain a BSTR array
// passed by reference. The array must be passed by reference; it is
// an in-out-parameter.
// throwing COleDispatchException allows the EXCEPINFO structure of
// IDispatch::Invoke() to set
if (V_VT(vArray) != (VT_ARRAY | VT_BSTR))
AfxThrowOleDispatchException(1001,
_T("Type Mismatch in Parameter. Pass a string array by reference"));
// ...
// ...
return 0;
}
Requisitos
Cabeçalho: <afxdisp.h>