BUG: E_NOINTERFACE Returned When Interface Properly Registered

Last reviewed: October 10, 1996
Article ID: Q148373
The information in this article applies to:
  • Microsoft OLE libraries included with: Microsoft Windows NT, version 3.51

SYMPTOMS

When 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.

CAUSE

A 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.

STATUS

Microsoft 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.

REFERENCES

For 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
KBCategory: kbprg kbbuglist kbfixlist
KBSubcategory: LeTwoArc


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: October 10, 1996
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.