Función SafeArrayAllocDescriptor (oleauto.h)
Asigna memoria para un descriptor de matriz seguro.
Sintaxis
HRESULT SafeArrayAllocDescriptor(
[in] UINT cDims,
[out] SAFEARRAY **ppsaOut
);
Parámetros
[in] cDims
Número de dimensiones de la matriz.
[out] ppsaOut
Descriptor de matriz seguro.
Valor devuelto
Esta función puede devolver uno de estos valores.
Código devuelto | Descripción |
---|---|
|
Correcto. |
|
El argumento psa no era válido. |
|
No se pudo bloquear la matriz. |
Comentarios
Esta función permite la creación de matrices seguras que contienen elementos con tipos de datos distintos de los proporcionados por SafeArrayCreate. Después de crear un descriptor de matriz mediante SafeArrayAllocDescriptor, establezca el tamaño del elemento en el descriptor de matriz, una llamada a SafeArrayAllocData para asignar memoria para los elementos de la matriz.
Ejemplos
En el ejemplo siguiente se crea una matriz segura mediante las funciones SafeArrayAllocDescriptor y SafeArrayAllocData .
SAFEARRAY *psa;
unsigned int ndim = 2;
HRESULT hresult = SafeArrayAllocDescriptor( ndim, &psa );
if( FAILED( hresult ) )
return ERR_OutOfMemory;
(psa)->rgsabound[ 0 ].lLbound = 0;
(psa)->rgsabound[ 0 ].cElements = 5;
(psa)->rgsabound[ 1 ].lLbound = 1;
(psa)->rgsabound[ 1 ].cElements = 4;
hresult = SafeArrayAllocData( psa );
if( FAILED( hresult ) ) {
SafeArrayDestroyDescriptor( psa )
return ERR_OutOfMemory;
}
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | oleauto.h |
Library | OleAut32.lib |
Archivo DLL | OleAut32.dll |