background image

LabWindows/CVI Release Notes for Windows

24

©

 National Instruments Corporation

Changes to Existing Functions

For 

GetPrintAttribute

 and 

SetPrintAttribute

, the last parameter is the attribute 

value. In previous versions of LabWindows/CVI, this is an integer. Now the parameter is a 
variable type argument. This change does not require any modifications to your source code.

The attribute 

ATTR_FLOATING

 has the following new constants:

The constant 

VAL_FLOAT_APP_ACTIVE

 specifies to make the panel floating, or topmost, 

only when the application is active. The constant 

VAL_FLOAT_ALWAYS

 maintains the panel 

as floating or topmost even when the application is not active.

When LabWindows/CVI displays a popup panel, such as when you call 

FileSelectPopup

 

or 

InstallPopup

, all LabWindows/CVI panels with the 

ATTR_FLOATING

 attribute set to 

either 

VAL_FLOAT_APP_ACTIVE

 or 

VAL_FLOAT_ALWAYS

 do not float while the popup is 

displayed. In previous versions of LabWindows/CVI, a floating window can cover the popup 
window, preventing an interaction with the popup window.

LoadPanel

LoadPanelEx

LoadMenuBar

, and 

LoadMenuBarEx

 now work on 

.tui

 files 

and on 

.uir

 files. Whereas 

.uir

 files are in binary format and load quickly, 

.tui

 files are 

in text format and load slowly. You can save a 

.tui

 file by using the Save in Text Format 

command in the Options menu of the User Interface Editor. Because text format files load 
slowly, National Instruments recommends that you continue to use 

.uir

 files. The ability to 

load 

.tui

 files makes it possible for user-written wizards to generate user interface files that 

you can load programmatically. 

Details on Loading Panels and Menubars from .tui Files

When you call 

LoadPanel

 or 

LoadPanelEx

 on a 

.tui

 file, the panel resource ID parameter 

must be the header number of the 

.tui

 file section in which the panel is defined. For example, 

if the section header for the desired panel is 

[Panel003]

, pass 

3

 as the panel resource ID.

LoadPanel

 or 

LoadPanelEx

 loads all the controls in the 

.tui

 file with section headers in 

the form 

[Panel

NNN_ControlYYY]

, where 

NNN

 is the panel resource ID and 

YYY

 is 001 or 

greater. The control numbers must start at 001 and be consecutive. To pass a control ID to 
other User Interface Library functions, pass 

YYY

 + 1. For instance, if the section header is 

[Panel003_Control001]

 for a control on which you want to set an attribute value, pass 

2

 

as the control ID parameter to 

SetCtrlAttribute

.

When you call 

LoadMenuBar

 or 

LoadMenuBarEx

 on a 

.tui

 file, the menubar ID parameter 

must be the header number of the 

.tui

 file section in which the panel is defined. For example, 

if the section header for the desired menubar is 

[MenuBar003]

, pass 

3

 as the menubar ID.

LoadMenuBar

 or 

LoadMenuBarEx

 loads all the menus and menu items in the 

.tui

 file with 

section headers in the form 

[MenuBar

NNN_. . .]

, where 

NNN

 is the menubar ID passed to 

  0

VAL_FLOAT_NEVER

  1

VAL_FLOAT_APP_ACTIVE

–50

VAL_FLOAT_ALWAYS

Summary of Contents for Window

Page 1: ... the IVI Engine 6 What s New and Different in LabWindows CVI 5 0 6 New Features 6 Changes to System Requirements 7 Toolslib Instrument Drivers 7 Multithreading Limitations on Toolslib Instruments 7 New Sample Programs 7 Changes to the LabWindows CVI Development Environment 9 Debugging DLLs in Windows 95 NT 9 DLL Debugging Menu Item Windows 95 NT Only 9 Select External Process 10 Automatic Generati...

Page 2: ...tem Printer Settings 19 Obsolete Value for X and Y Resolution 20 Warning of Modified Behavior 20 Revised Constant Names 20 Application of Attributes to Text Printing 21 New Print Attributes 21 New Panel Attributes 22 New Control Attributes 22 New System Attribute 22 Resolution Adjustment 23 User Interface Editor Changes 23 Changes to Existing Functions 24 Details on Loading Panels and Menubars fro...

Page 3: ... 32 Changes to the Utility Library 32 Multithreading 32 Corrections and Clarifications to the Documentation 32 New Utility Library Functions 33 Changes and Clarifications to Existing Utility Library Functions 33 Changes to the Easy I O for DAQ Library 34 New ActiveX Automation Library 34 Active X Automation Library Function Overview 34 Using ActiveX Automation Object Handles from Multiple Threads ...

Page 4: ...gher Personal computer using at least a 33 MHz 486 or higher microprocessor VGA resolution or higher video adapter Minimum of 16 MB of memory 50 MB free hard disk space Microsoft compatible mouse Note The dialog box the Edit Instrument Attributes command displays requires an 800 by 600 video adapter resolution Minimum System Requirements for Windows 3 1 To run LabWindows CVI for Windows 3 1 you mu...

Page 5: ...ption to install the complete Windows SDK from the CD ROM version of the LabWindows CVI FDS Full Development System Some Windows SDK header and import library files are installed with the disk version and the CD ROM version for the LabWindows CVI Base Package The Windows SDK help file is available only with the CD ROM version of the LabWindows CVI FDS National Instruments suggests you install the ...

Page 6: ... IVI Engine to use IVI Intelligent Virtual Instruments drivers on a system The IVI Engine is installed as part of LabWindows CVI for Windows 95 NT and Windows 3 x LabWindows CVI for Windows 95 NT includes a separate set of IVI Engine distribution disks or a directory on the CD ROM that has its own installation program so you can make copies for distribution with your application On Windows 3 x the...

Page 7: ...uments under the toolslib subdirectory are not multithread safe custctrl animate fp custctrl daqchart fp custctrl easytab fp custctrl movectrl fp custctrl pwctrl fp custctrl scroll fp custctrl toolbar fp toolbox regexpr fp toolbox toolbox fp New Sample Programs Table 2 lists new samples Table 1 New Toolslib Instrument Drivers Filename Description toolslib custctrl cviogl fp 3D OpenGL plotting cont...

Page 8: ...berg Marquardt method parsevls prj Demonstrates Parseval s theorem polyfit1 prj Demonstrates data conditioning for PolyFit transmit prj Simulates a transmission and receiver system thd prj Total Harmonic Distortion stat prj Simple statistics example stability prj Evaluates the stability of the system samples custctrl cviogl ogldemo prj 3D graph plotting using CVIOGL instrument driver ogldraw prj U...

Page 9: ...e Build menu to Dynamic Link Library If the DLL Debugging command is enabled when you create a DLL LabWindows CVI includes debuggable code in your DLL and generates an extra file that contains a symbol table and source position information necessary for debugging The extra file has the same pathname as the DLL except that its extension is cdd samples sdk stdio demo prj Uses SDK to change Standard ...

Page 10: ...ents to an external program The Run Project item in the Run menu then changes to Run xxx exe where xxx exe is the filename of the external program When you execute the Run xxx exe command LabWindows CVI starts the external process and attaches to it for debugging If you have set any breakpoints in the source files for the DLL LabWindows CVI honors them LabWindows CVI stores external program pathna...

Page 11: ...s you set in files that are not in the project Also when you unload the project breakpoints and tags in non project files remain in effect To accommodate DLL debugging LabWindows CVI 5 0 now saves all breakpoints and tags in the project regardless of whether the files to which they apply are in the project When you unload the project LabWindows CVI removes all breakpoints and tags from any non pro...

Page 12: ...Refer to the Application of Attributes to Text Printing and New Print Attributes sections in the Changes to the User Interface Library section later in this document Edit Menu The Find and Replace commands of the Edit menu of the Function Tree Editor window and the Function Panel Editor window open dialog boxes similar to the Find and Replace dialog boxes in the Source window which allow you to se...

Page 13: ...r to the Create ActiveX Automation Controller Windows 95 NT Only section in Chapter 3 Project Window of the LabWindows CVI User Manual for more information on how to use this feature Create IVI Intelligent Virtual Instruments Instrument Driver Use the Create IVI Instrument Driver command and the IVI wizard to create the source file include file and function panel file for controlling an instrument...

Page 14: ...path and base filename as an instrument driver function panel fp file The text cursor must be over the name of a function that has a function panel in the fp file Generate Source for Instrument Driver Functions LabWindows CVI 5 0 includes two new menu items for generating source for instrument driver functions Generate Source for Function Panel in the Function Panel Editor window and Generate New ...

Page 15: ...utes User Defined Entries in Tools Menu You can install your own entries in the Tools menu Each entry invokes an executable with optional command line arguments Use the Tools Menu Options command from the Options menu of the Project window to add your own entries to the Tools menu Tools Menu Options The new Tools Menu Options command in the Options menu of the Project window allows you to add your...

Page 16: ...ins information on the various changes in the User Interface Library including the following Direct printing replaces bitmap printing on all Windows platforms The print dialog boxes change on all Windows platforms You can now use the Window system settings for some print attributes Two new attributes keep track of the current printer Six attributes that previously applied only to graphics printing...

Page 17: ...VE_TRANSPARENCY_MASK to remove the mask When you use REMOVE_TRANSPARENCY_MASK the color of the pixels that were transparent under the old mask are unpredictable You can set the value of these pixels in the bits parameter The following text is incorrect in the Using Callback Functions to Respond to User Interface Events section of Chapter 3 Programming with the User Interface Library in the LabWind...

Page 18: ...he print dialog boxes interact with attributes when used in a program Previously if you selected a different printer in the dialog box the User Interface Library did not retain the name of the selected printer Every time the print dialog box appeared the printer selection was reset to the current system printer Now the library stores the name of the printer you select in a new attribute ATTR_PRINT...

Page 19: ...e value When the user clicks on OK in the printer specific dialog box LabWindows CVI stores the current value of the control as the attribute value If the function invokes the common print dialog box but the user never invokes the printer specific dialog box LabWindows CVI stores the system setting as the attribute value when the user clicks on OK in the common dialog box If you suppress the dialo...

Page 20: ...cific dialog box most likely you should use the modified value in subsequent print calls Warning of Modified Behavior When the Run time Engine for LabWindows CVI 5 0 is installed it overwrites previous versions of the Run time Engine Thus executables on a computer with the new Run time Engine use the new print dialog box In addition any executable that used VAL_USE_PRINTER_DEFAULT for ATTR_PRINT_X...

Page 21: ...TTR_PRINTER_NAME_LENGTH Number of characters in currently selected printer ATTR_SYSTEM_PRINT_DIALOG_ONLY Specifies to display only the Windows printer specific dialog box do not show the LabWindows CVI print dialog box ATTR_PRINT_BOLD Text is bold ATTR_PRINT_FONT_NAME Name of current font ATTR_PRINT_FONT_NAME_LENGTH Number of characters in current font value ATTR_PRINT_ITALIC Text is in italics AT...

Page 22: ... for which LabWindows CVI allows scaling ATTR_MIN_WIDTH_FOR_SCALING Smallest panel width for which LabWindows CVI allows scaling ATTR_RESOLUTION_ADJUSTMENT Panel scaled when displayed on different screen resolutions read only ATTR_HAS_TASKBAR_BUTTON Panel has its own taskbar button ATTR_AUTO_SIZING Specifies whether LabWindows CVI resizes command button when text is changed valid values VAL_ALWAYS...

Page 23: ...TTR_RESOLUTION_ADJUSTMENT to obtain the setting that LabWindows CVI saved in the uir file User Interface Editor Changes Changes in the User Interface Editor accommodate the new panel and system attributes The Other Attributes dialog box that you can invoke from the Edit Panel dialog box now has controls for the following items Scale Contents on Resize Minimum Height for Rescaling Minimum Width for...

Page 24: ...ce Editor Because text format files load slowly National Instruments recommends that you continue to use uir files The ability to load tui files makes it possible for user written wizards to generate user interface files that you can load programmatically Details on Loading Panels and Menubars from tui Files When you call LoadPanel or LoadPanelEx on a tui file the panel resource ID parameter must ...

Page 25: ...ws CVI 5 0 to create new baseline tui files for all your uir files New Functions The following nine new functions in the User Interface Library are listed in alphabetical order GetScaledCtrlDisplayBitmap creates a bitmap object that contains a snapshot image of the current appearance of the specified control GetScaledPanelDisplayBitmap creates a bitmap object that contains a snapshot image of the ...

Page 26: ...t mouse pointing devices with wheels such as the Microsoft IntelliPoint Mouse The mouse wheel allows you to scroll up or down in any panel listbox control or textbox control that contains a vertical scrollbar Changes to the Programmer Reference Manual This section contains several additions to the LabWindows CVI Programmer Reference Manual Stack Size The maximum stack size on Windows 3 1 has incre...

Page 27: ...rocess termination is not well defined Thus the DLLs you want to call might not be in memory when your DllMain receives the PROCESS_ATTACH or PROCESS_DETACH message It is always safe to call into the LabWindows CVI Run time Engine in a run state change callback as long as you do so before calling CloseCVIRTE Releasing Resources when a DLL Unloads Clarification When a program terminates the operati...

Page 28: ...odules in the Programmer Reference Manual for a detailed discussion of run state change callbacks Changes to the ANSI C Library This section contains information on changes to the ANSI C Library and corrections to the documentation Time and Date Functions The time and date functions of the ANSI C Library include several changes Time Zone Bugs Fixed on Windows 95 NT In the previous version of LabWi...

Page 29: ... NT If you pass GetRS232ErrorString an error code of 1 Unknown System Error on Windows 95 NT the function calls the Windows SDK GetLastError function and translates the return value into a Windows message string Input Queue Size Clarification If you pass an odd number for inputQueueSize on Windows NT when calling OpenComConfig LabWindows CVI rounds it to the next highest even number The Microsoft ...

Page 30: ...lar function call save the return value from the function call in a variable Multithreading Limitations Do not use XModemReceive or ComToFile in two threads at the same time if the target file in both calls is the Standard Output Changes to the DDE Library This section contains information on changes to the DDE Library and corrections to the documentation Corrections In the previous version of the...

Page 31: ...ent functions calls that apply to the connection in the same thread in which you called ConnectToDDEServer Changes to the TCP Library This section contains information on enhancements to the TCP Library Multithreading The TCP Library is now multithread safe when used on Windows 95 NT in a standalone executable or in a DLL called from a standalone executable New TCP Library Functions The following ...

Page 32: ...ion contains information on two new functions in the Utility Library and corrections and clarifications to the documentation Multithreading The Utility Library is now multithread safe when used on Windows 95 NT in a standalone executable or in a DLL called from a standalone executable No restrictions exist Corrections and Clarifications to the Documentation GetCurrentPlatform returns kPlatformWin1...

Page 33: ...MapPhysicalMemory CVIRTEHasBeenDetached indicates whether Windows 95 NT has detached the LabWindows CVI Run time Engine from your standalone executable process Changes and Clarifications to Existing Utility Library Functions For Delay and SyncWait on Windows 95 NT and UNIX the respective delay and interval parameters might now suspend the execution of the current thread while waiting for the speci...

Page 34: ...can invoke this wizard with the Create ActiveX Automation Controller command in the Tools menu Note This library is available only on Windows 95 NT Active X Automation Library Function Overview ActiveX Automation formerly called OLE Automation allows applications to make their unique features available to scripting tools and other applications An ActiveX Automation server is the application that e...

Page 35: ...dows 95 you can use an ActiveX Automation object handle only in the thread that created it This limitation does not exist if you install DCOM for Windows 95 You can find DCOM for Windows 95 in the DCOM directory on your LabWindows CVI CD You also can download DCOM for Windows 95 from Microsoft s Web or FTP site Additions to the ActiveX Automation Library Function Reference For the functions CA_Var...

Page 36: ...nction parameter discussion Use CA_DiscardObjHandle to free the returned CAObjHandle For the functions CA_VariantGet1DArray and CA_VariantGet2DArray add the following text to the function parameter discussion Use CA_FreeMemory to free the returned array New IVI Library The IVI Intelligent Virtual Instruments Library gives developers a structured framework for creating VXIplug play instrument drive...

Page 37: ...oInverse Test Positive Definiteness CheckPosDef Create Special Complex Matrix CxSpecialMatrix Complex Dot Product CxDotProduct Complex Transpose CxTranspose Complex Determinant CxDeterminant Complex PseudoInverse Matrix CxPseudoInverse Complex Trace CxTrace Complex Invert Matrix CxGenInvMatrix Solution of Complex Linear Eqs CxGenLinEqs Complex Multiply Matrices CxMatrixMul Complex Outer Product Cx...

Page 38: ...lease of LabWindows CVI 5 0 You must rebuild the DLL before you try to debug the DLL inside the LabWindows CVI development environment No Support for Multiple Monitor Systems LabWindows CVI 5 0 does not support systems with multiple monitors including Windows 98 Windows NT 5 0 and third party solutions for Windows 95 NT 4 0 Dynamically Loading DLL Created in Third Party Compiler Might Lose Handles...

Page 39: ......

Reviews: