LabWindows/CVI

SetProjectDebuggingLevel

SetProjectDebuggingLevel

LabWindows/CVI ActiveX Server Interface

CVI_AppSetProjectDebuggingLevel (CAObjHandle objectHandle, ERRORINFO *errorInfo, enum CVIEnum_CVIDebuggingLevels level, long *returnValue);


Note  This function signature is shown as it appears when you create a client using the LabWindows/CVI ActiveX Controller Wizard. If you create a client for the LabWindows/CVI ActiveX server interface using a different development environment, this function might be exposed differently. Some of the parameters documented here, such as objectHandle or errorInfo, are not applicable if you write a client using a different development environment.

Purpose

Sets the debugging level for all configurations for the current project. The debugging level applies only if you select a debug configuration for the project. If you select a release configuration for the project, LabWindows/CVI compiles all source files without debugging information.

Parameters

Input
Name Type Description
objectHandle CAObjHandle Specifier for a particular ActiveX object that is currently in memory. Obtain this handle from CVI_NewApp, CVI_OpenApp, CVI_ActiveApp, or an ActiveX method or property.

All of the methods that you can apply to a particular object are grouped under a single class in the function tree. The name of the class corresponds to the type of the object to which this handle refers.
level enum CVIEnum_CVIDebuggingLevels The debugging level for the current project. You can specify one of the following constants:

  • CVI_DEBUGGING_LEVEL_NO_RUNTIME_CHECKING (0)—With this debugging level, you can set breakpoints and use the Variables and Call Stack window. However, you have no protection from run-time memory errors, and you cannot use the Run»Break on»Library Errors option.
  • CVI_DEBUGGING_LEVEL_STANDARD (1)—With this debugging level, you can set breakpoints, use the Variables and Call Stack window, and use the Run»Break on»Library Errors option. You also have protection from run-time memory errors.
  • CVI_DEBUGGING_LEVEL_EXTENDED (2)—With this debugging level, you have the same benefits that the CVI_DEBUGGING_LEVEL_STANDARD debugging level offers, with added user protection that validates every attempt to free dynamically allocated memory by verifying that the address you pass is actually the beginning of an allocated block.
Output
Name Type Description
errorInfo ERRORINFO * When an ActiveX server function fails with the error code DISP_E_EXCEPTION, descriptive information about the error code is stored in this parameter. The descriptive information can include the error code, source, and description. It also can include a help file and help file context ID.

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

You may pass NULL for this parameter.
returnValue long * The value that the LabWindows/CVI ActiveX server function returns. A negative value indicates that the LabWindows/CVI ActiveX server function returned an error.

You can use GetCVIAutomationServerErrorString to get the description of a LabWindows/CVI ActiveX server error code.

Return Value

Name Type Description
status HRESULT A value indicating whether an error occurred. A negative error code indicates function failure.

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 ActiveX Library error code.