PRB: IOleObject::IsUpToDate() and OLE 1.0 Link Objects (111613)
The information in this article applies to:
- Microsoft OLE Libraries for Windows and Win32s 2.01
- Microsoft OLE Libraries, when used with:
- the operating system: Microsoft Windows NT 3.5
- the operating system: Microsoft Windows NT 3.51
- the operating system: Microsoft Windows 95
This article was previously published under Q111613 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."
Modification Type: | Minor | Last Reviewed: | 3/3/2005 |
---|
Keywords: | KB111613 |
---|
|