LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Shared Variable Deployment not accessible in Build Specification

Hi everyone,

I have a large project developed in LV 8.6.1 from which I executed numerous applications. I converted the project in LV 11 sp1f1, everything works well in code, everything is saved.

I wanted to build executable without cod change for LV 11 here is what I found:

  1. Build the executable with Build Specifications inherited from LV 8.6 for which I checked on Use Labview 8.x file layout in Advanced. My application programmatically deploys all internal shared variables and when I wanted to access the Shared Variable Deployment in project in Build Specification then labview locked and I have to kill LV. Other time I did not access the Shared Variable Deployment and I start building executable when it looks the build progressing similar as in LV8.6 and last step before popping the attached error all the saved files in the build location were deleted.
  2. I set up a build specification just for this LV 11. Again I wanted to access the Shared Variable Deployment and again labview is looping something from which I had to kill labview. I opened it again, I skipped the shared variable deployment line and I build the application. Because my application programmatically deploys shared variables I included in builder the lvlib where shared variables belong. The build files does not includes this time as output the file *.lvlib for which my inherited LV8.6 code programmatic deploys shared variables.

My question is should I change the code (very large code) taking out the programmatic variables deployment and to relay on the build executable to do deploy them then what should I do with Shared Variable Deployment line in Build Specification which for my large application is not accessible or is any way to still use the shared variable as in LV8.6 but for which I need *.lvlib in build location.

Another important issue: when I launched my application built as I showed in previous second case, first thing that I see is that my application is not able to save errors (I have a log file where I save different drivers or communication errors). Any idea why application even without shared variable deployed is not able to write a text file? I am administrator of my computer with all rights.

Thank you,

Virginia

0 Kudos
Message 1 of 8
(3,096 Views)

Have you tried creating a new Build Specification based on the source VIs you are using?

 

The Shared Variable Deployment section of the Build Specifications window will allow you to set variable libraries to be deployed when the executable is run.

 

These libraries should be added to the Always Included list in the Source Files tab of the Build Specifications window. Since you are programmatically deploying libraries, you would not need to add them in the Shared Variable Deployment tab, but you could use the automatic function instead of doing it programmatically.


Can you access the Shared Variable Deployment tab if you create a new project and create a Build Specification. If so, you might have corruption somewhere in you project. You can do a mass compile of the project or try copying everything from the Project Explorer window into a new project.

Zach P.

Staff Software Engineer | LabVIEW R&D | National Instruments
0 Kudos
Message 2 of 8
(3,081 Views)

Hi Zach,

In the second case of my message this is the way I did it, I set a new build specification where I have a top level vi and around 30 to 40 dynamic called vis and I kept still the old code where programmatic launch shared variable and I always include lvlib in build and when I access the Shared Variable Deployment the labview looks continuous for something and I have to exit by keeling it.

I even upgraded the patch that was found yesterday and after that I can see the table after long time in shared variable deployment but it is not populated with my shared variables and actually I can not do anything on it nor to check or uncheck to deploy or undeploy variable, it locks and I have again to keel labview. Next time I did not access the shared variables deployment and I built the exe, everything progressed but in the end windows 7 message as application encountered error and must exit and everything built in the builder location was deleted.

Any suggestion? I want to mention that I have over 6000vis in my application. I do not want to go to LV 2012 and to risk the same problem on top of what I might find because of another compilation.

 

Thank you,

Virginia

0 Kudos
Message 3 of 8
(3,076 Views)

Have you tried a mass compile on the code in your project? You may also want to check the "Use LabVIEW 8.x file layout" in the Advanced tab of the installer. 

 

Your project may just be big enough that the Shared Variable Deployment tab takes a very long time to load. Can you let the window load for a longer time and track the Memory and CPU usage on your computer? (Ctrl+Alt+Del>>Task Manager>>Performance tab)
 

Zach P.

Staff Software Engineer | LabVIEW R&D | National Instruments
0 Kudos
Message 4 of 8
(3,067 Views)

Zach,

I ran a mass compile on the project. I opened project, I opened the build application then I accessed the Shared Variable Deployment and as I said earlier it shows empty table, I waited here around 20 minutes to see if table is populated then no button is accessible and I killed labview. I opened again everything without accessing Shared Variable Deployment with Advanced tab having the optimization checked as well as "Use Labview 8.x Layout" and I build the exe. The build was successfully but in the end windows reports an error and labview disappears no meter how is end of the executable creation it looks the files in the build location are good and my application works and log file of my application saves correctly the text file and my data and images files.

I think NI is still working on this builder when it is about build application from a large number of vis used.

Thank you,

Virgnia

0 Kudos
Message 5 of 8
(3,060 Views)

So the build is finishing, are you able to click the Close button? Where in the process does LabVIEW crash?

 

You may want to look at the whitepaper (linked below) about managing LabVIEW projects and applications. 

http://www.ni.com/white-paper/7197/en

 

Can you build an executable with a simple VI to make sure there is not a problem with LabVIEW or Application Builder?

Zach P.

Staff Software Engineer | LabVIEW R&D | National Instruments
0 Kudos
Message 6 of 8
(3,047 Views)

Another thought, are you using any long names or special characters on any of your project items?

Zach P.

Staff Software Engineer | LabVIEW R&D | National Instruments
0 Kudos
Message 7 of 8
(3,044 Views)

No, I am not able to close Labview because of the windows error with only one button to close application. The application is correct executed. Next time when I start this project it is asking me if I want o recover even if I accept to recover it looks what I had last time it does not save.

For my application also I am building a VI without diagram built as source distribution for which I set in my builder this top vi and I excluded everything from the project because my application copies instances at the run time of this vi as many times as hardware modules I have in the system and also I have this vi included in my application (for the content of this vi). My vi contains interfaces for hardware configuration as well as drivers functions call for each hardware module I have to control in my application. Everything is good building this vi, but in less then one minute after the build is executed and build interface closes again I have the windows error which force me to close project. Next time when I open project I did not see the option to recover the project.

In the mean time I received second message and I wonder if you refer to files names or to folder names or all together. I checked and the maximum size is 122 characters in the vi paths.

Thank you,

Virginia

0 Kudos
Message 8 of 8
(3,041 Views)