IOleLink::UnbindSource

This method deactivates the connection between a linked object and its link source.

HRESULT UnbindSource(void);

Parameters

None.

Return Values

If the method succeeds, the return value is S_OK.

Remarks

You typically do not call IOleLink::UnbindSource directly. When it is necessary to deactivate the connection to the link source, your container typically calls the IOleObject::Close or IUnknown::Release method; the linked object's implementation of these methods calls IOleLink::UnbindSource. The linked object's IAdviseSink::OnClose implementation also calls IOleLink::UnbindSource.

The linked object's implementation of IOleLink::UnbindSource does nothing if the link source is not currently bound. If the link source is bound, IOleLink::UnbindSource calls the link source's IOleObject::Unadvise and IDataObject::DUnadvise implementations to delete the advisory connections to the link source. The IOleLink::UnbindSource method also calls the compound document's IOleClientSite::LockContainer implementation to unlock the containing compound document. This undoes the lock on the container and the advisory connections that were established in IOleLink::BindToSource. IOleLink::UnbindSource releases all the linked object's interface pointers to the link source.

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Requirements

OS Versions: Windows CE 3.0 and later.
Header: Oleidl.h, Oleidl.idl.
Link Library: Ole32.lib, Uuid.lib.

See Also

IAdviseSink::OnClose | IDataObject::DUnadvise | IOleLink::BindToSource | IOleObject::Close | IOleObject::Unadvise | IUnknown::Release

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.