SafeArrayDestroy

This function destroys an existing array descriptor and all of the data in the array. If objects are stored in the array, Release is called on each object in the array.

HRESULT SafeArrayDestroy( 
  SAFEARRAY FAR* psa 
); 

Parameters

Return Values

The following table shows the HRESULT values that can be returned by this function.

Value Description
S_OK Success.
DISP_E_ARRAYISLOCKED The array is currently locked.
E_INVALIDARG The item pointed to by psa is not a safearray descriptor.

Remarks

Passing invalid (and under some circumstances NULL) pointers to this function causes an unexpected termination of the application.

Example

STDMETHODIMP_(ULONG) CEnumPoint::Release()
{
  if(--m_refs == 0){
    if(m_psa != NULL)
    SafeArrayDestroy(m_psa);
    delete this;
    return 0;
  }
  return m_refs;
}

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.