PRB: IOleObject::IsUpToDate() and OLE 1.0 Link Objects

ID: Q111613


The information in this article applies to:
  • Microsoft OLE Libraries for Windows and Win32s, version 2.01
  • Microsoft OLE Libraries, used with:
    • Microsoft Windows NT, versions 3.5, 3.51
    • Microsoft Windows 95


SYMPTOMS

An OLE 2.0 container application calls IOleObject::IsUpToDate to determine whether or not an OLE 1.0 link object is up to date. IsUpToDate() returns S_FALSE, even though the object is actually up to date.


CAUSE

The OLE 1.0 compatibility layer always considers OLE 1.0 link objects to be out of date. If the OLE 1.0 object is not running, the compatibility layer always returns S_FALSE to IOleObject::IsUpToDate().


MORE INFORMATION

This problem can occur whenever an OLE 2.0 container application loads a document that contains links to OLE 1.0 objects. As part of loading the document, the link container updates any out of date automatic links. To find the out of date links, the container calls IOleObject::IsUpToDate() on each link that has a link-update option of OLEUPDATE_ALWAYS.

As described above, IsUpToDate will always return S_FALSE for an OLE 1.0 object that is not running. The container application will then update the link object (which requires running the object's server), even if it was not actually out of date.

For more information on the known idiosyncrasies of embedding or linking OLE 1.0 objects into OLE 2.01 containers, see "Working with OLE 1 Servers" in the OLE SDK version 2.01 "Programmer's Reference."

Additional query words: 2.01 3.50 4.00

Keywords : kbole kbNTOS350 kbOLE100 kbOLE200 kbWinOS95 kbGrpCom kbDSupport
Version : WINDOWS:2.01,95; :
Platform : WINDOWS
Issue type :


Last Reviewed: October 26, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.