Admin Production ni-theme
Current Publication

CA_VariantGetSafeArrayPtr

LabWindows/CVI

CA_VariantGetSafeArrayPtr

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

Purpose

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

CA_VariantGetSafeArrayPtr returns an error if the variant does not contain a pointer to a safe array.

Parameters

Input
Name Type Description
variant const VARIANT * Pointer to a variant that contains a pointer to a safe array.
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_VariantGetSafeArrayPtr ignores the CAVT_ARRAY modifier.
Output
Name Type Description
value LPSAFEARRAY * Safe array pointer that CA_VariantGetSafeArrayPtr copies from the variant.

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