LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

executable searching for typedef shared variable

I have an application which uses shared variable to pass data to RT application. The shared varaible is deployed in the host PC. One of the shared variable data type is a type definition (cluster of I32,I32,I32). This type definition is linked to the shared variable property window. In the code every thing works fine.

 

I build the executable and launched the exe in the same PC (host pc) where the application was built. The application runs fine without any issues. while building the application, I have selected deploy shared variable at the execution start and undeploy at the exit. If I copy the host application to another PC and launch it, it is searching for the type def linked to a shared varaible and the application breaks. The following error pops up ' VI has an error of type 2208. the full development version of labview is required to fix the errors"

 

Any help in assistance to fix this issue is appreciated.

 

Thanks,

A Senthilnathan

0 Kudos
Message 1 of 7
(3,791 Views)

Interesting observation.  Now I am concerned about this since I also have typedef'd NSV in a built application but so far have not tested on a 'clean' machine.

Previously, I used the autodeploy feature of the app builder but have changed to installing the libraries on the target machine and then programmatically deploying

the libraries in the exe.  I wonder if this technique would have the same issue.  I think I need to find a machine without labview to experiment on 🙂

incidently, I am using LV 2010.

0 Kudos
Message 2 of 7
(3,778 Views)

Hi,

 

I had the same problem on a clean machine.

I use the shared variable for doing data exchange between an LabVIEW-EXE and

an LabVIEW-DLL.

 

I tried a lot of stuff in the Build properties (disconnect all typedefs...) but still the same problem

 

The only "solution" was to disconnect the shared variables from their typedefs (see screenshot) and than compiled the Main VI. Smiley Sad


@a. Senthilnathan wrote:

I have an application which uses shared variable to pass data to RT application. The shared varaible is deployed in the host PC. One of the shared variable data type is a type definition (cluster of I32,I32,I32). This type definition is linked to the shared variable property window. In the code every thing works fine.

 

I build the executable and launched the exe in the same PC (host pc) where the application was built. The application runs fine without any issues. while building the application, I have selected deploy shared variable at the execution start and undeploy at the exit. If I copy the host application to another PC and launch it, it is searching for the type def linked to a shared varaible and the application breaks. The following error pops up ' VI has an error of type 2208. the full development version of labview is required to fix the errors"

 

Any help in assistance to fix this issue is appreciated.

 

Thanks,

A Senthilnathan


 

 

...just painting code
0 Kudos
Message 3 of 7
(3,729 Views)

Code Painter,

 

I have also done the same, I disconnected the typedef and changed the data types to basic one (not a cluster) and build the exe. The the new exe is able to communicate with the shared variable. I think it could be bug in 2010.

0 Kudos
Message 4 of 7
(3,724 Views)

Hi,

 

you can use clusters, that´s not the problem. I use LabVIEW2010 SP1.

 

There is also another bug in the NI DSM 2010, if you use this tool for debugging.

If you use simple data types (like string, or integer) you can see and edit the data.

If you use cluster or just an array it doesn´t work. This problem is known by NI.

 

Hope they´ll fix it soon.

...just painting code
0 Kudos
Message 5 of 7
(3,722 Views)

I do not think viewing cluster data in the DSM has ever been supported.  But I think it would make an excellent suggestion.

 

http://zone.ni.com/reference/en-XX/help/372572C-01/sysman/using_watchlist/

0 Kudos
Message 6 of 7
(3,715 Views)

In my case it labview seemed to be searching for this instr.lib folder.  On my development machine, my custom controls where not stored in that directory and not know that much about labview, i'm not sure why it defaulted to this location on the clean machine.

I had a similar issue as well that might be related. I was using strict type def custom controls to define a set of Network Shared Variables.  Everything worked fine until i built the application and ran it on a clean machine.  Long story short, everytime i opened the application it would search for the controls and not find them even though each one was used within the program and i had specifically included them in the build.  After trying several differnt approaches, including changing build settings, i ended up having add an additional instr.lib subfolder to executable directory and dropped copies of the custom controls in there.  This cleared up the issue however i really don't enjoy this approach.

 

Message 7 of 7
(3,651 Views)