FIX: Assertion with an Insertable OLE ControlLast reviewed: February 3, 1998Article ID: Q177641 |
The information in this article applies to:
SYMPTOMSIf you try to handle a WM_LBUTTONDOWN message to get access to the IOleContainer interface for an insertable OLE Control, the following Assertion Error occurs:
Debug Assertion Failed! Program: ... File: wincore.cpp Line: 871 CAUSEThis problem is cause by COleClientItem::XOleClientSite::GetContainer not pushing the container's module state. As a result, the container attempts to assert that the container's view window is present in the control module's HWND map.
RESOLUTIONTo correct this problem, include the following in the call to COleClientItem::XOleClientSite::GetContainer function:
STDMETHODIMP COleClientItem::XOleClientSite::GetContainer (LPOLECONTAINER **ppContainer) { #ifdef _DEBUG METHOD_PROLOGUE_EX(COleClientItem, OleClientSite) #else METHOD_PROLOGUE_EX_(COleClientItem, OleClientSite) #endif } STATUSMicrosoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug was corrected in Visual C++, 32- bit Edition version 4.1.
MORE INFORMATIONThe assertion error is caused by the following sequence:
Steps To Reproduce the Problem
|
Additional query words: 4.10
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |