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.
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.
06-04-2014 01:43 PM
Hi guys,
I am struggling with test stand deployment for 3 days. hope somebody can help. ( I am using teststand 4.0 nd labview 8.5 and .net 2.0)
I have sequence files, with many subVi' s and .net assmeblies with dependancies, added to workspace , and when i run the sequence file, it works fine.
Specifically, the sequence file calls many Vi's, some of which use the .net assembly from "C:\program files\National instruments\labview 8.5\use.lib" ( and not specifically from the folder where the Vi resides), and still it works.
However, when i build ths same using deployment utility (figure 1), these assemblies and other go to "\\installation directory\data" and the build fails(figure 2), as the "property node " for the .net assembly( build using c# public static class) gets invalid( figure 3).
Figure 2:
Figure3:
Now, the same VI in different folder ( C:\development...) is able to reference the assembly from "C:\program files\National instruments\labview 8.5\use.lib"( I had added the refernce from labview project initially from different location, but after copying the file to this location, VI's still worked) and works fine (figure 4).
Figure 4:
I have tried adding "\\installation directory\data" Teststand search directory, but no luck.
I have following questions:
other than above, does anybody have other solution to my problem?
I am already late for deployment of project to customers, and need immediate help.
Thanks
vivu
06-05-2014 12:10 PM
I have
I have attached the c# snippets for reference too.
06-05-2014 05:27 PM
vivu,
Who created the .net assembly? Was it built in LabVIEW or user created? On your deployment machine you will have to have the .net assembly in the same location (i.e. c:\prog fil\nat inst\labview 8.5\user.lib). You should include the .net assembly in the deployment and you can specify the install destination to be the correct place. The vi's that use the .net assemblies should be included automatically and detected by the deployment analyzer.
There are a couple of screenshots that are missing in your original post. Can you post one of your deployment utility of the distributed files tab? Also, when does your error occur on deployment? After installation when you run the vi?
06-06-2014 12:07 PM
Hi Jon.
Thanks for replying. The .net assembly was created in visual studio, by different engineer. I tried using 'c:\prog fil\nat inst\labview 8.5\user.lib' as the source path, and keeping destination to (1) \\target\data (2) \\target\subVI location that uses this assembly (3) \\lNI directory\\labview8.5\user.lib.
all of thse did not help.
Anyways, I asked my colleague to change the .net assembly, so that one of the VI that was using property node, now, just uses 'invoke node" ( and source dll was changed by using c# method instead of property to achive same result)n and then, I rebuild the deployment choosing source and deployment paths as above. none of them worked, except when i choose deployment to be "\\target\subVI" location that uses this assembly .
So, this works and I was satisfied. However, after deploying, I run into strange problem.
( pleas note that I just created 1 seqeunce file out of 5, that are part of the worskpace,rest everything was done by a guy 8 years back, and although I am well versed with labview, teststand is new to me).
When I run the test on bhild machine, before any of the sequence file executes, a dialog box opens as below:
Once thse values get populated, then steps in the chosen sequence file execute. I found that this is done by a VI , that might be called by some of the sequence file or by some Testsand directory( which I don't know , as I did not create it). Vi is shown below:
However, when i deploy the test, on the deployment machine, as I run the test, it does not complain about any missing .dll or broken VI's, but the dialog box disappears, just does not come up.
As you can see, the only thing i changed from previous deployment was adding following files in deployment : zoundshearingnet.dll and commifnet.dll for the .net deployment, and I do not beleive this should change the VI/VI call that loads the dialog box at the start.
I am also exporting the station globals and testexec.ini files as below:
however, I do get warning in deployment:
So, I have the following questions:
1) does this warning have anything to do with the missing dialog box?
2) as I understand, the VI that flashes the dialog box at the start, use "sequence context" and then "start modal dialog". I tried running the test on build machine, and pasue it, and then, run this VI. it fails on "start model dialog", but that could be because perhaps I am not supoposed to run ot this way? is there a way I could debug this Vi with teststand?
3) Can i know, how is this VI called by testand and who calls it? If i start opening each sequence file, which have hundeders of VI's and subVI's, it will take me hours to do that.
4) so, basically, the problem is that when a sequence is run, a VI interacts with the sequenec and opens a dialog, which after deployment . fails to do so. are there any such examples that i could refer to, to help me understand how this works?
Thanks
vivu