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 para seu aplicativo.lpszDescription
Descrição textual do erro.nDescriptionID
ID de recurso para a descrição textual do erro.nHelpID
Um contexto de ajuda para o arquivo de Ajuda (.hlp) do seu aplicativo.
Comentários
As informações fornecidas para esta função podem ser exibidas pelo aplicativo indicações (Microsoft Visual Basic ou em outro aplicativo 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>