BUG: E_NOINTERFACE Returned When Interface Properly RegisteredLast reviewed: October 10, 1996Article ID: Q148373 |
The information in this article applies to:
SYMPTOMSWhen you attempt to marshal an interface that is far enough down the list of interfaces in the HKEY_CLASSES_ROOT\Interface section of the registry, OLE may return E_NOINTERFACE if the number of interfaces in the list exceeds a certain limit and if the interface being marshaled is beyond this limit in the list. This limit can vary and is usually between 350 and 550 interface registration entries.
CAUSEA problem in OLE's interface registration caching code causes this problem. The usual cause for E_NOINTERFACE is that the interface has not been registered correctly in the registry. However, if the interface has been registered correctly and the number of registered interfaces in the system exceeds the limit, the cause for E_NOINTERFACE could be this bug. Interfaces are listed in the interface section of the registry in ascending order of the text representation of their GUIDs. Consequently this problem only affects interfaces that have GUIDs with a text representation that causes them to be listed near the end of the list and beyond the limit.
STATUSMicrosoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This bug has been fixed in NT 3.51 service pack 5. It does not occur in Windows 95.
REFERENCESFor more information on the fix for this problem, please see the following article in the Microsoft Knowledge Base:
ARTICLE_ID: Q149722 TITLE : Windows NT Registry Has a Limit of 300 Interfaces |
Additional reference words: OLE2 2 2.0 2.00
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |