SafeArrayLock

This function increments the lock count of an array, and places a pointer to the array data in pvData of the array descriptor.

HRESULT SafeArrayLock(
  SAFEARRAY FAR* psa 
);

Parameters

Return Values

One of the values obtained from the returned HRESULT and described in the following table is returned.

Value Description
S_OK Success.
E_INVALIDARG The psa parameter was not a valid safearray descriptor.
E_UNEXPECTED The array could not be locked.

Remarks

The pointer in the array descriptor is valid until SafeArrayUnlock is called. Calls to SafeArrayLock can be nested. An equal number of calls to SafeArrayUnlock are required. Passing invalid (and under some circumstances NULL) pointers to this function causes an unexpected termination of the application.

An array cannot be deleted while it is locked.

Requirements

OS Versions: Windows CE 2.0 and later.
Header: Oleauto.h.
Link Library: Oleaut32.lib.

See Also

SafeArrayCreate

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.