Admin Production ni-theme
Current Publication

CA_MethodInvokeEx

LabWindows/CVI

CA_MethodInvokeEx

HRESULT CA_MethodInvokeEx (CAObjHandle objectHandle, ERRORINFO *errorInfo, const IID *interfaceId, int methodId, unsigned int returnType, void *returnValue, size_t parameterCount, unsigned int parameterTypes[], ...);

Purpose

Note   This function is used by the functions generated by the ActiveX Controller Wizard. It is not intended to be used directly.

Calls the methods of an ActiveX server. Unlike CA_MethodInvokeVEx, you pass the ActiveX function arguments as comma-separated parameters.

Parameters

Input
Name Type Description
objectHandle CAObjHandle An ActiveX object handle returned in an output parameter of an ActiveX server function or a function in the Creating ActiveX Objects class in this library.
interfaceId const IID * The interface id specifying the type of interface pointer to be used for the method access.

You must pass the UUID of an interface implemented by the object passed in the object handle parameter or zero to indicate the current interface id that is stored in that object handle.
methodId int The Id of the method being called.

This Id can be obtained from the object's type library.
returnType unsigned int The type of the return value of the function.

The return value can be any of the data types for variants and safe arrays except CAVT_NULL.
parameterCount size_t The number of arguments to be passed to the ActiveX server function.
parameterTypes unsigned int [] An array of parameter type descriptions. The size of the array must match the value passed in the parameterCount parameter.

Each entry in this array can be any of the data types for variants and safe arrays except CAVT_NULL.

If the parameter is a reference parameter, you can bitwise OR all the constants with the data type modifiers except for CAVT_EMPTY and CAVT_NULL.
automationFunctionParameters ... The list of arguments to the ActiveX server function.

The number of arguments passed must match the count passed in the parameterCount parameter. You must separate multiple arguments with commas.
Output
Name Type Description
errorInfo ERRORINFO When the ActiveX server method invoked by this function fails with the error code DISP_E_EXCEPTION, descriptive information about the error code is stored in this parameter. The descriptive information includes the error code, source, and description. The information also can include a help file and help file context.

When the ActiveX server method invoked by this function fails with the error codes DISP_E_PARAMNOTFOUND, DISP_E_TYPEMISMATCH, or E_INVALIDARG, the parameter position of the invalid argument can be stored in the errorParamPos member of this parameter.

This parameter can be NULL.
returnValue void * The value returned by the ActiveX server function.

Pass the address of a variable of the type specified in the returnType parameter.

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 6.0 and later