IExternalConnection::ReleaseConnection
Decrements an
object s count of its strong external connections (references).
HRESULT ReleaseConnection(
DWORD extconn, |
//Type of external connection |
DWORD dwreserved, |
//Used by OLE to pass connection information |
BOOL fLastReleaseCloses |
//Indicates whether connection is last one or not |
); |
|
Parameters
extconn
[in] Type of
external connection to the object. The only type of external connection
currently supported by this interface is strong, which means that the object
must remain alive as long as this external connection exists. Strong external
connections are represented by the value EXTCONN_STRONG = 0x0001, which is defined
in the enumeration EXTCONN.
dwreserved
[in] Passes
information about the connection. This parameter is reserved for use by OLE.
Its value can be zero, but not necessarily. Therefore, implementations of ReleaseConnection
should not contain blocks of code whose execution depends on whether a zero
value is returned.
fLastReleaseCloses
[in] TRUE
specifies that if the connection being released is the last external lock on
the object, the object should close. FALSE specifies that the object should
remain open until closed by the user or another process.
Return Value
DWORD value
The number of
connections to the object; used for debugging purposes only.
Remarks
If fLastReleaseCloses
equals TRUE, calling ReleaseConnection causes the object to shut
itself down. Calling this method is the only way in which a DLL object, running
in the same process space as the container application, will know when to close
following a silent update.
See Also