Поделиться через


AfxThrowOleDispatchException

Используйте эту функцию, чтобы создавать исключение внутри функции ole-автоматизации.

void AFXAPI AfxThrowOleDispatchException( 
   WORD wCode, 
   LPCSTR lpszDescription, 
   UINT nHelpID = 0  
); 
void AFXAPI AfxThrowOleDispatchException( 
   WORD wCode, 
   UINT nDescriptionID, 
   UINT nHelpID =   -1  
);

Параметры

  • wCode
    Для кода ошибки в приложение.

  • lpszDescription
    Учтное описание ошибки.

  • nDescriptionID
    Идентификатор ресурса для словесного описания ошибки.

  • nHelpID
    Контекст справки для файла справки приложения (.HLP).

Заметки

Сведения, эта функция может отображаться при управлении приложением (Microsoft Visual Basic или другое клиентское приложение ole-автоматизацией).

Пример

// 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;
}

Требования

Header: <afxdisp.h>

См. также

Ссылки

Класс COleException

Основные понятия

Макросы и глобальные объекты MFC