SafeArrayDestroy (Compact 2013)

3/26/2014

This function destroys an array descriptor and all data in the array.

If objects are stored in the array, Release is called on each object in the array.

Syntax

HRESULT SafeArrayDestroy( 
  SAFEARRAY FAR* psa 
); 

Parameters

Return Value

Returns the HRESULT values shown in the following table.

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

Header

oleauto.h

Library

oleaut32.lib

See Also

Reference

Automation Functions
SafeArrayCreate