CA_MethodInvokeV
HRESULT CA_MethodInvokeV (CAObjHandle objectHandle, ERRORINFO *errorInfo, int methodId, unsigned int returnType, void *returnValue, size_t parameterCount, unsigned int parameterTypes[], va_list parametersList);
Purpose
![]() |
Note This function has been superseded by CA_MethodInvokeVEx. The new function takes an additional parameter for interface id. Calling this function is equivalent to passing 0 for the interfaceId parameter. |
Invokes a method of an ActiveX server. Unlike CA_MethodInvoke, CA_MethodInvokeV accepts arguments to the server operation as a variable argument list.
![]() |
Note This function is used by the functions generated by the ActiveX Controller Wizard. It is not intended to be used directly. |
Parameters
Input | ||
Name | Type | Description |
objectHandle | CAObjHandle | 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. |
methodId | int | ID of the method you call; located in the server type library. |
returnType | unsigned int | Data type of the return value of the server method. returnType can be any of the fundamental data types for variants, safe arrays, and properties except CAVT_NULL. |
parameterCount | size_t | Number of arguments you pass that follow parameterTypes. |
parameterTypes | unsigned int [] | An array of parameter type descriptions. The size of the array must match the value passed in the parameterCount parameter. parameterTypes can contain any of the fundamental data types for variants, safe arrays, and properties except CAVT_NULL or CAVT_EMPTY. You can use the CAVT_ARRAY modifier on all data types except CAVT_CSTRING and CAVT_OBJHANDLE. For parameters you pass by reference, you can use the CAVT_BYREFI, CAVT_BYREFO, or CAVT_BYREFIO modifier. |
parametersList | va_list | The list of arguments to the ActiveX server function passed as a variable argument list initialized with the va_start macro. The number of arguments passed must match the count passed in the parameterCount parameter. |
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 the server method returns. Pass a pointer to a variable of the data type returnType specifies. |
Return Value
Name | Type | Description |
status | HRESULT | A value indicating whether an error occurred. Function failure is indicated by a negative error code. Error codes are defined in CVIversion\include\cviauto.h and <Program Files>\National Instruments\Shared\MSDTRedistributables\SDKHeaderFiles\8.1\winerror.h. You can use CA_GetAutomationErrorString to get the description of an error code or CA_DisplayErrorInfo to display the description of the error code. If the error code is DISP_E_EXCEPTION (0x80020009 or -2147352567), then the errorInfo parameter contains additional error information. You can use CA_DisplayErrorInfo to display the error information. |
Additional Information
Library: ActiveX Library
Include file: cviauto.h
LabWindows/CVI compatibility: LabWindows/CVI 5.0 and later