Admin Production ni-theme
Current Publication

CA_VariantGetSafeArray

LabWindows/CVI

CA_VariantGetSafeArray

HRESULT CA_VariantGetSafeArray (VARIANT *variant, unsigned int arrayType, LPSAFEARRAY *value);

Purpose

Copies the safe array in a variant into a safe array variable.

On success, CA_VariantGetSafeArray marks the variant parameter as empty.

CA_VariantGetSafeArray returns an error if the variant does not contain a safe array.

Parameters

Input
Name Type Description
arrayType unsigned int Type of the safe array.

arrayType can contain any of the fundamental data types for variants, safe arrays, and properties except for CAVT_EMPTY, CAVT_NULL, CAVT_CSTRING, and CAVT_OBJHANDLE.

If you do not know the type of the safe array, call CA_VariantGetType and pass its return value as the arrayType. CA_VariantGetSafeArray ignores the CAVT_ARRAY modifier.
Output
Name Type Description
variant VARIANT Pointer to a variant that contains a safe array.

CA_VariantGetSafeArray marks the variant as empty on success.
value LPSAFEARRAY Safe array that CA_VariantGetSafeArray copies from the variant.

Use CA_SafeArrayDestroy to free the returned safe array.

Return Value

Name Type Description
status HRESULT A value indicating whether an error occurred. Negative error codes indicate function failure.

Error codes are defined in CVIversion\include\cviauto.h and <Program Files>\National Instruments\Shared\MSDTRedistributables\SDKHeaderFiles\8.1\winerror.h. The LabWindows/CVI ActiveX Library explicitly returns error codes. Other error codes in winerror.h are generated by ActiveX servers and passed on to you by the LabWindows/CVI ActiveX Library.

You can use CA_GetAutomationErrorString to get the description of an error code or CA_DisplayErrorInfo to display the description of the error code.

Additional Information

Library: ActiveX Library

Include file: cviauto.h

LabWindows/CVI compatibility: LabWindows/CVI 5.0 and later