Supporting IDispatch and IErrorInfo
You can use the template class IDispatchImpl to provide a default implementation of the IDispatch Interface portion of any dual interfaces on your object.
If your object uses the IErrorInfo interface to report errors back to the client, then your object must support the ISupportErrorInfo Interface interface. The template class ISupportErrorInfoImpl provides an easy way to implement this if you only have a single interface that generates errors on your object.