HOWTO: Troubleshoot "Member Not Found" 0x80020003 Error (172108)
The information in this article applies to:
- Microsoft Platform Software Development Kit (SDK) 1.0
This article was previously published under Q172108 SUMMARY
This article describes some common causes of the OLE Automation error -
2147352573 (80020003 hex) and suggested troubleshooting steps.
The error may be shown as DISP_E_MEMBERNOTFOUND.
MORE INFORMATIONCause 1
You are calling IDispatch::Invoke() with wFlags set only to DISPATCH_METHOD
and the dispid identifies a property.
Resolution 1
The Win32 SDK documentation for IDispatch::Invoke() states that if the
dispid represents a property, you must also set the DISPATCH_PROPERTYGET
flag. This problem commonly occurs when you use Microsoft Visual C++ to
generate class wrappers from the Microsoft Office 95 type libraries. You
have to explicitly modify the generated .cpp file for any InvokeHelper()
call that retrieves a property to use the DISPATCH_PROPERTGET flag. If you
use the Microsoft Office 97 type libraries, this is done automatically by
the Microsoft Visual C++ Class Wizard.
Cause 2
You are using the wrong IDispatch pointer.
Resolution 2
This typically occurs when you use OLE Automation with the Microsoft Office
97 applications, or any application that has a hierarchical object model.
You may have initialized a COleDispatchDriver class, representing an object
X, with the IDispatch pointer for an object Y. This error may or may not
occur with Microsoft Office 95, or other applications with only one
IDispatch implementation. This is because object X and object Y could both
be implemented through one IDispatch interface, and thus no conflict will
occur.
Cause 3
You are using an invalid dispid.
Resolution 3
The server does not recognize the dispid you have specified in the call to
IDispatch::Invoke(). Verify that this is the correct dispid, possibly
through IDispatch::GetIDsOfNames().
REFERENCES
For more information on IDispatch or OLE Automation, read Tech note TN039
"MFC/OLE Automation Implementation."
For more information on type libraries and how to use them with Microsoft
Visual C++, see:
Microsoft Win32 Software Development Kit Help; search on: "type libraries,
importing with ClassWizard".
For additional information, please see the following article in the
Microsoft Knowledge Base:
165273
BUG: XL97 Errors Using OLE Automation
Modification Type: | Minor | Last Reviewed: | 7/11/2005 |
---|
Keywords: | kbFAQ kbhowto KB172108 |
---|
|