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.

Quick Drop Enthusiasts

cancel
Showing results for 
Search instead for 
Did you mean: 

How do you debug a new QD VI ?

When you create a new QD VI from the template, you can't debug it.

The probe indicates that the VI is not executed.

George Zou
0 Kudos
Message 1 of 7
(8,967 Views)

Hi zou,

To debug it you will need to put a break point a the begining of your QD VI. And when it will be invoked the BD will pop and you will be able to place your probe in your code.

Hope that help you

Dany

LabVIEW ChampionArchitect
Message 2 of 7
(4,442 Views)

I see.  It has to be in the NI.LV.Editor "domain".

George Zou
0 Kudos
Message 3 of 7
(4,442 Views)

zou wrote:

"domain"

The official term is "application instance".

Message 4 of 7
(4,442 Views)

zou,

The easiest way to get going is to not use the quick drop to test the plugin.

Just create a new VI, and put your new plugin on the diagram. Wire a static VI reference to a DUT VI, and wire the required inputs (shift and combobox) with constants or meaningfull values.

Then simply make a selection in the DUT, and run the test VI. The behaviour should be exactly the same as invoking it in QD (since it does exactly the same as QD).

Be awair though, that doing this will give naming conflicts with the QD. Since your VI is in memory, invoking the function of your plugin from QD will not work correctly (or so I noticed a few times). So do your testing, debugging and tweaking the easy way, and do a final test after resetting LV.

Wiebe.

Message 5 of 7
(4,442 Views)

Hi Darren,

I am wondering what is the difference between NI.LV.Editor application instance and NI.LV.Dialog. And how should I get the application reference for them?

Thanks!

0 Kudos
Message 6 of 7
(4,442 Views)

Generally you don't get a reference to the private application instances.  Is this the point it is called Contexts?  I've seen the two terms used and I'm guessing it is a C vs LabVIEW thing. 

Using some super secret debug stuff you can get references to these instances, but why do you need to?  As others have said you can drop a break point, save it, then invoke your QD which will open that VI in that instance and you can probe around like normal. You could do goofy things too like using the "This VI" reference, then get the application reference from the VI ref.  After being invoked in the QD command the VI will run and can return that private instance.

0 Kudos
Message 7 of 7
(4,442 Views)