The information in this article applies to:
SYMPTOMSWhen an OLE 1.0 object is inserted into an OLE 2.0 container document and then closed without an update being invoked, the correct streams for that object are not written to storage. Any subsequent attempt by the container to load the object will fail. CAUSEWhen the OLE 1.0 object is closed without an update, the OLE 2.0 container receives an IAdviseSink::OnClose() message without having first received an IClientSite::SaveObject() message. Unless the container takes steps to work around this problem, incorrect streams will be saved. RESOLUTIONTo protect against this scenario, OLE 2.0 containers that want data to be available after an OLE 1.0 object closes without updating can implement code similar to the following pseudocode:
Alternatively, the container could just delete any objects that call
IAdviseSink::OnClose() without first calling IClientSite::SaveObject().
STATUSMicrosoft has confirmed this to be a problem in the products listed at the beginning of this article. We are researching this problem and will post new information here as it becomes available. MORE INFORMATIONFor more information about known idiosyncrasies of embedding or linking OLE 1.0 objects into OLE 2.0 containers, please see the "Compatibility with OLE 1.0" section of the OLE SDK Help file. Additional query words: 1.00 2.00 2.01 3.50 4.00 toolkit kbbuglist
Keywords : kbole kbNTOS350bug kbNTOS351bug kbOLE200 kbWinOS95bug kbGrpCom kbDSupport |
Last Reviewed: October 26, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |