LAVA Forums Buy cool LAVA gear Forums RSS Feed

Welcome Guest ( Log In | Register )

> Related links

Visit our LabVIEW Wiki Code Distribution Portal


Tags
(This content has not been tagged yet)
 
Reply to this topic Start new topic
> Finding Suspend When Called
jdunham
post Sep 9 2008, 06:41 PM
Post #1


Very Active
***

Member
Posts: 200
Joined: 6-March 05
From: Mountain View, CA
Member No.: 1764
Using LabVIEW Since:1994
LV:8.5 ,. ,.
United States us_california Nothing Selected


I sent this in as a tech support issue, but I am posting it here for tips and/or comment:

QUOTE
We have a large application with multiple developers, and we ship the code with our product, which runs 24x7x365. If any VI or subVI instance is set to "Suspend When Called" (SWC) and the panel is not included in the build, then the built application will put up a "Null Window" dialog box, even if debugging is not enabled.

We can actually search the VI hierarchy for VIs with SWC set, and check this before building (this is the kind of thing the App Builder should do for you!!!), but there is no way to check that a subvi instance does not have this setting enabled in the subvi's popup menu.

It is very easy to leave this on by accident and forget about it, and have this setting end up in the build. If the VI is not used frequently, then it's possible that it won't show up during testing, but having an unplanned dialog box come up will cause major problems. It's basically a showstopper.

Obviously if there is a way to find or disable this in my exe's I would like to know, but if I am correct that there is no way, I would like to try to get this prioritized for a future release.

From an overall view, it is important that LabVIEW make it very difficult to have unexpected dialog boxes produced by a built executable.


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
Ad
post Sep 9 2008, 06:41 PM
Post #















Tags
(This content has not been tagged yet)
Go to the top of the page
Quote Post
Darren
post Sep 9 2008, 07:11 PM
Post #2


Very Active
***

NI
Posts: 213
Joined: 14-March 06
From: Austin, TX
Member No.: 4441
Using LabVIEW Since:1999
LV:8.6 ,8.5 ,8.0
us_texas United States Nothing Selected


I agree...it seems to me we should turn off this setting for subVIs in a built EXE. I made sure the App Builder team is aware of this thread. For now, you can use the attached VI Analyzer Test (saved in 8.6) to detect this situation in your VIs before you build an EXE. Place this LLB in [LabVIEW Data]\VI Analyzer Tests, then launch Tools > VI Analyzer > Analyze VIs and the SubVI Suspend When Called test will be one of the tests you can run. Note that in LabVIEW 8.6, you do not need to have the VI Analyzer Toolkit installed in order to run tests...the UI and Engine for the VI Analyzer are now part of core LabVIEW...the toolkit now consists of the toolkit's original test suite and the VI-based analysis API.

Let me know if you have any questions,
-D

Edit: I forgot that LAVA replaces spaces in file names with underscores. When you detach and save this LLB, make sure it is named "SubVI Suspend When Called.llb", and not "SubVI_Suspend_When_Called.llb", which is what LAVA will provide as the default filename.

This post has been edited by Darren: Sep 10 2008, 02:17 AM
Attached File(s)
Attached File  SubVI_Suspend_When_Called.llb ( 36.18K ) Number of downloads: 35
 


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
jdunham
post Sep 9 2008, 09:28 PM
Post #3


Very Active
***

Member
Posts: 200
Joined: 6-March 05
From: Mountain View, CA
Member No.: 1764
Using LabVIEW Since:1994
LV:8.5 ,. ,.
United States us_california Nothing Selected


QUOTE (Darren @ Sep 9 2008, 12:11 PM) *
I agree...it seems to me we should turn off this setting for subVIs in a built EXE. I made sure the App Builder team is aware of this thread. For now, you can use the attached VI Analyzer Test (saved in 8.6) to detect this situation in your VIs before you build an EXE. Place this LLB in [LabVIEW Data]\VI Analyzer Tests, then launch Tools > VI Analyzer > Analyze VIs and the SubVI Suspend When Called test will be one of the tests you can run. Note that in LabVIEW 8.6, you do not need to have the VI Analyzer Toolkit installed in order to run tests...the UI and Engine for the VI Analyzer are now part of core LabVIEW...the toolkit now consists of the toolkit's original test suite and the VI-based analysis API.

Let me know if you have any questions,
-D


I guess it's possible that some misguided soul will design suspend-when-called into a built executable as a lame way of interacting with the user. I also heard (on LAVA) that debugging a built EXE works if you run a computer with the development system installed, though I haven't tried it. So it seems like there should be a possibility to get SWC to work in a built EXE, but you should have to jump through some hoops to make it happen rather than being on by default.

Thanks for the heads up about the analyzer. I will definitely add that to our pre-build check as we migrate to 8.6.

Jason


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic

 




Time is now: 1st December 2008 - 07:58 PM