From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabWindows/CVI Idea Exchange

Community Browser
Top Authors
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

Hello,

I would like a zoom (Ctrl + mouse wheel) when creating .uir panel.

Regards.

In cvicc (CVI compiler for Linux), there's an option -DDEFINE to define a macro, but no equivalent -U to undefine it. It would be useful because the macros defined in [Options][Build Options][Compiler defines] are indeed used by cvicc when compiling on Linux. If I need a project-level macro defined on Windows but not on Linux, I don't know how to remove it except by parsing it out of the prj file before compilation.

 

I recognized it's not possible any more to view a constant while debugging since CVI 2015.

Example: #define CONSTANT1      1

For example if I have a constant defined, I can then right click “view variable value”.

Normally CVI then shows me the value.

 

Since CVI 2015 this doesn’t work anymore. I also tried with CVI 2017.

In our code we use many structs where the fields are defined by a constant.

Now when the debugger can’t view the constant any more it also won’t view the value of the struct.

Example: #define CONSTANT1      1

Int struct[10];

struct[CONSTANT1]  = 5;

 

This is the main reason why I didn't upgrade from CVI 2010 to 2015.

is there something called VI Analyzer for Labwindows CVI for performing the unit testing and tracing the bug with the Cvi Environment ?

I have been looking for an easy way to resample data with either LabWindows/CVI or Measurement Studio and came across the Rational Resample VI for LabVIEW users. It would be great to have this functionality in LabWindows/CVI.

 

At the very least it would be good to have an Upsample method to insert zeros into a waveform/signal. Then an FIR interpolation filter can be used on the upsampled signal to interpolate the signal.

I miss it every time I try to replace a parameter or start typing a long function name and realize it's not the function I want. Or even just when I want to delete a single line and don't want to select the whole line, or sit there holding the backspace key while life passes me by.

 

It's especially annoying because CTRL+[arrow] navigates word by word. So this is half implemented already.

The CVI SavePanelState( ) and RecallPanelState( ) functions can be extremely useful.  Although the resulting panel state file is binary, it can however expose sensitive information with the use of even a simple tool like NotePad.  As a cumbersome workaround I had to use a command-line tool within my app, such as 7z, to compress and password protect the state file.   I suggest that CVI place a built-in protection into these functions.

I recently installed the LabWindows 2017 beta version on a lab PC and tried using it to run a project built with 2015 SP1.  Unfortunately it didn't work because of a bug I found in the beta: calling the NewBitmap or SetBitmapData function crashes the program if the number of bits per pixel is 1 or 4.

 

Uninstalling the beta is proving to be difficult.  I performed an uninstall on LabWindows 2017 and Run-Time Engine 2017 through the Windows control panel, but it made me uninstall LabWindows 2015 SP1, NI-DAQ, and LabVIEW as well (because they were all dependent on the RTE).  Windows appeared to run the uninstall successfully, but the RTE folder and DLLs were somehow not removed or changed.  So when I rebuilt and re-ran my project, it still linked with the 2017 RTE and still crashed.  I had to manually copy the 2015 RTE files from another PC.

 

Even after this, there are still some other elements of the 2017 version left on the PC, such as the activation manager.

 

I would like to NI change this so that when the user uninstalls a new RTE, it automatically restores whatever previous version was active before the update without the hassle of having to uninstall and reinstall LabWindows, LabVIEW, etc.

If a file is listed in a project, but it is doesn't exist anymore on the filesystem, CVI doesn't mark it in any way in the project tree.

If the file is an .uir, this brings to a strange behavior with "Find UI object" (see here).

I think that files non-existent on the filesystem should be marked mark in some way (color, special icon, ...) in the project tree.

The check can be done when the user opens and closes the project.

Based on this discussion, Strip Chart controls don't support cursors.

I think it would be great if this support would be added.

The best option would be to have an advanced cursor like the "Graph Cursors Control" available for Graphs.

 

Other text editors such as UltraEdit have the capability to trim white space from the end of lines.  This would be a useful feature, as sometimes extra white space can end up at the end of lines, and is annoying when copy/pasting, etc.  I would expect to find it under Options->Editor Preferences, similar to the tab/space settings.

To export enum types with a dll there is a fine menu "Generate Function Tree...". Using the Help Buttom, one finds is a description on how to use it. It is mentiond not to nest the different comment type. "Avoid nested comments or combinations of comment styles ...... (backslashes, stars, etc.), what I understand. - Unluckily, if one uses comma "," or semicolon ";" within a comment, the tool fails with "I n v a l i d enum typedef.", what I consider is a bug. This makes the tool less valuable, especially if one resuses C source code from thirdparties.

If you open a project with many sources and edit a file named zero.c, it takes ages until the browsing information for this file is created.

 

Suggestion: prioritize (all) opened source files when gathering the browsing information.

Hello,

 

it was very nice to see clang updated to version 3.3 in CVI2015; I wish this support of current versions of clang will be continued in the future, so I am hoping that with CVI2017 we might get clang 3.9 or 4.0 because of the following issues:

- many many bug fixes in clang

- improved diagnostics

- support of C11

- full support of OpenMP 3.1 and beyond

 

Thanks!!

At present, when you double-click on a .cws or .prj file the most recent version of the CVI IDE is launched with the selected .prj or .cws file loaded.

However, both project and workspace files include the release of CVI they are developed on, so it would be possible to search in the system whether that release is installed and open it instead of the most recent one. This is crucial when you need to modify a program already deployed to a customer but do not want / is not possible to update the target machine configuration installing a newer Run-Time module than the one already installed.

At present you have no control over this event, but consider also that in case you make modifications to the UIR files also, it may become difficult to revert to the original IDE format; for this reason when I need to update an old program I need firstly to open the project file in notepad to see which CVI release to use for this.

 

If automating the launch in the correct release is not possible, at least issue a warning stating the difference in the IDE release used with respect to the original one.

A useful CVI GUI tool would be the addition of sideways tree-style tab control.  I am surprised to see no mention of it in the forums.  Is there already some solution for it, or perhaps some Active-X that can do it?    Nevertheless, it would greatly modernize the GUI arsenal.

In the last few years JSON came out as new format for data objects consisting of attribute-value pairs, largely replacing XML.

LabVIEW has functions to handle JSON data, and LabVIEW Community has been developing a JSON Toolkit.

In the CVI board of the forum this is the only result for a "JSON" search (at the present).

 

I suggest to integrate into CVI a JSON library (for example JANNSON).

I think this is better than develop a proprietary library.

Hello,

 

working with larger UIs may result in scrollbars showing up in the UI editor. Hence it would be nice if hitting the 'PageUp' or 'PageDown' keys would scroll the page up or down, respectively. Also 'Home', 'End' and the four cursor keys should be supported, similar to their functionality in the text editor. 

 

Thanks!

I would consider it useful if the Build Output would state the total number of errors in a file - right now it says: 1 file with errors, but especially if you start with many errors I find it helpful to see if a change in code reduces the error count.

 

To my knowledge earlier versions of CVI provided this information, which disappeared with clang integration.

 

Related posts are here and here

The integration of some SCC software is officially supported in CVI (see this KB).

Unfortunately GIT is not officially supported, but its popularity has been increasing very much.

LabVIEW has a specific User Group in the community (Git User Group) and I think CVI should support the same integration