When an error occurs, objects invoked through IDispatch can return DISP_E_EXCEPTION and pass the details in the pexcepinfo parameter (an EXCEPINFO structure) to IDispatch::Invoke. Refer to the EXCEPINFO structure in Chapter 5, "Dispatch Interface and API Functions," and see "Passing Exceptions Through VTBLs" later in this chapter.