This method removes the access restriction on a range of bytes previously restricted with IStream::LockRegion.
At a Glance
Header file: | Objidl.h |
Windows CE versions: | 2.0 and later |
Syntax
HRESULT UnlockRegion( ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType);
Parameters
libOffset
[in] Specifies the byte offset for the beginning of the range.
cb
[in] Specifies, in bytes, the length of the range to be restricted.
dwLockType
[in] Specifies the access restrictions previously placed on the range.
Return Values
One of the values described in the following table is returned.
Value | Description |
S_OK | The byte range was unlocked. |
E_PENDING | Asynchronous Storage only: Part or all of the stream’s data is currently unavailable. |
STG_E_INVALIDFUNCTION | Locking is not supported at all or the specific type of lock requested is not supported. |
STG_E_LOCKVIOLATION | The requested unlock cannot be granted. |
STG_E_REVERTED | The object has been invalidated by a revert operation above it in the transaction tree. |
Remarks
IStream::UnlockRegion unlocks a region previously locked with the IStream::LockRegion method. Locked regions must later be explicitly unlocked by calling IStream::UnlockRegion with exactly the same values for the libOffset, cb, and dwLockType parameters. The region must be unlocked before the stream is released. Two adjacent regions cannot be locked separately and then unlocked with a single unlock call.