What ActiveX Features Does LabWindows/CVI Support?
Primary Software: LabWindows/CVI Development Systems>>Full Development System
Primary Software Version: 8.1
Primary Software Fixed Version: N/A
Secondary Software: N/A
Problem: What type of ActiveX support does LabWindows/CVI offer?
Solution: The following is a list of the ActiveX components that LabWindows/CVI supports.
ActiveX Controls:
- As of LabWindows/CVI 6.0 and later, ActiveX containers are supported, which allows embedding ActiveX controls into the user interface. Once inside the User Interface Editor, you can select Create » ActiveX or right-click on the user interface and choose ActiveX to insert an ActiveX control. This brings up an ActiveX dialog box where you can select the type of object you want to insert into your user interface. You can create an ActiveX Control or ActiveX document. You can also create either of these ActiveX objects from an existing file.
ActiveX Automation:
- Server: LabWindows/CVI has the ability to act as an automation server. This means that you can control the CVI Development Environment within other automation controllers. For example, you can move files in and out of LabWindows/CVI projects, compile a file, or build a project from within some other application. For examples of using LabWindows/CVI as an automation server select Help » Find Examples and then navigate to Communicating with External Applications » ActiveX » CVI.
LabWindows/CVI also provides the option to make a LabWindows/CVI application an ActiveX server. A built-in ActiveX Server Wizard (Tools » Create ActiveX Server...) provides an easy way to create and edit ActiveX Server projects. For more information, refer to the Building ActiveX Servers in LabWindows/CVI tutorial as well as the LabWindows/CVI Help (Select Help » Contents and type "Create ActiveX Server Wizard" under the Index tab).
- Client: When LabWindows/CVI acts as an ActiveX client, it can access other applications that act as ActiveX servers, such as Microsoft Excel, Microsoft Word, and LabVIEW. You can use the ActiveX Controller Wizard under Tools » Create ActiveX Controller... to create an instrument driver for an ActiveX server. Refer to the Using the ActiveX Automation Wizard to Generate Code in LabWindows/CVI KnowledgeBase for more information.
The wizard also includes support for ActiveX events and dual interfaces.
- Support for Events: Some ActiveX server objects generate events in addition to providing methods for you to call from an ActiveX client program. ActiveX servers specify the events they generate as a collection of methods in an event object. For each event object you select, the ActiveX Controller Wizard generates a set of functions you can use to register callbacks for each event. LabWindows/CVI calls the callbacks when the server generates the events.
- Dual Interface Support: When an interface is labeled "dual" in the type library, this denotes that the interface offers binding through IDispatch and through a vTable. IDispatch offers support for late binding to properties and methods. VTable binding offers higher performance since this method is called directly instead of through
IDispatch::Invoke.
LabWindows/CVI 5.5 and later can use the ActiveX Controller Wizard to generate instrument drivers that use dual interfaces to access the server more efficiently.
- Property Get and Set Functions - The ActiveX Controller Wizard allows you to specify how it generates functions to access properties of objects in the server. You can select:
- Per Property - Generates property get/set functions for each property in the server.
- Per Object - Generates property get/set functions for each object in the server.
- Per Server - Generates single GetProperty and SetProperty functions through which you get and set properties for all objects in the server.
-
Debugging: LabWindows/CVI 8.1 introduced ActiveX server interface breakpoint functions which allows you to programmatically control breakpoints when you debug your code through through the LabWindows/CVI ActiveX server interface. You can use these functions to create and configure breakpoints, line tags, and excluded lines.
Related Links: Developer Zone Tutorial: Building ActiveX Servers in LabWindows/CVI KnowledgeBase 1V2DM98M: Using the ActiveX Automation Wizard to Generate Code in LabWindows/CVI KnowledgeBase DIRECT-3U8TUK: What Are ActiveX and ActiveX Automation? MSDN: Microsoft ActiveX Controls Overview MSDN: Introduction to ActiveX Controls MSDN: Introduction to Introduction to ActiveX Control Containers
Attachments:
Report Date: 03/02/2000
Last Updated: 01/16/2008
Document ID: 1V18J38M