Función SafeArrayDestroy (oleauto.h)

Destruye un descriptor de matriz existente y todos los datos de la matriz. Si los objetos se almacenan en la matriz, se llama a Release en cada objeto de la matriz.

Sintaxis

HRESULT SafeArrayDestroy(
  [in] SAFEARRAY *psa
);

Parámetros

[in] psa

Descriptor de matriz creado por SafeArrayCreate.

Valor devuelto

Esta función puede devolver uno de estos valores.

Código devuelto Descripción
S_OK
Correcto.
E_INVALIDARG
El argumento psa no es válido.
DISP_E_ARRAYISLOCKED
La matriz está bloqueada.

Comentarios

Las matrices seguras de variante tendrán la función VariantClear llamada en cada miembro y matrices seguras de BSTR tendrá la función SysFreeString llamada en cada elemento. Se llamará a IRecordInfo::RecordClear para liberar referencias de objeto y otros valores de un registro sin desasignar el registro.

Ejemplos

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

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado oleauto.h
Library OleAut32.lib
Archivo DLL OleAut32.dll