GetHGlobalFromILockBytes
Retrieves a
global memory handle to a byte array object created using the CreateILockBytesOnHGlobal function.
WINOLEAPI GetHGlobalFromILockBytes(
|
ILockBytes * pLkbyt, |
//Points
to the byte array object |
|
HGLOBAL * phglobal |
//Points
to the current memory handle for the specified byte array |
|
); |
|
Parameters
pLkbyt
[in] Points
to the ILockBytes interface on the byte array object previously created
by a call to the CreateILockBytesOnHGlobal function.
phglobal
[out] Points
to the current memory handle used by the specified byte array object.
Return Values
S_OK
Indicates the
handle was returned successfully.
E_INVALIDARG
Indicates
invalid value specified for the pLkbyt parameter. It can also indicate
that the byte array object passed in is not one created by the CreateILockBytesOnHGlobal function.
Comments
After a call
to CreateILockBytesOnHGlobal,
which creates a byte array object on global memory, GetHGlobalFromILockBytes
retrieves a pointer to the handle of the global memory underlying the byte
array object. The handle this function returns might be different from the original
handle due to intervening calls to the GlobalRealloc function.
The contents
of the returned memory handle can be written to a clean disk file, and then
opened as a storage object using the StgOpenStorage function.
This function
only works within the same process from which the byte array was created.
See Also