AfxThrowOleDispatchException
Utilisez cette fonction pour lever une exception dans une notion de fonction d'automation.
void AFXAPI AfxThrowOleDispatchException(
WORD wCode,
LPCSTR lpszDescription,
UINT nHelpID = 0
);
void AFXAPI AfxThrowOleDispatchException(
WORD wCode,
UINT nDescriptionID,
UINT nHelpID = -1
);
Paramètres
wCode
Un code spécifique d'erreur à votre application.lpszDescription
Description verbale de l'erreur.nDescriptionID
ID de ressource pour la description de l'erreur verbale.nHelpID
Un contexte d'aide pour le fichier d'aide de votre application (.HLP).
Notes
Les informations fournies à cette fonction peuvent être affichées par l'application pilotante (un Microsoft Visual Basic ou une NOTION application cliente Automation différente).
Exemple
// 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;
}
Configuration requise
Header: <afxdisp.h>