NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

How to reference different versions of TestStand from the same OI?

Solved!
Go to solution

It is possible to reference a "generic" set of TestStand .dlls from a C# Operator Interface(OI) that work against a variety of versions of TestStand?  

 

Now, I know you can only run one TS version at a time (using the TSVer Selector).  Basically, I add references to the specific library dlls in my project, let's say version 4.2.  This works just fine on my system. Some existing production systems may have yet to upgrade and are running 4.1.1.  Will my newly built exe work? From my own testing, it doesn't, but I may be doing something wrong.

 

Any advice would be appreciated. 

0 Kudos
Message 1 of 5
(3,645 Views)

Hi Richard,

 

you could try Engine.VersionString to return the engine version. Checkout the Programme Reference Help.

 

Regards

Ray Farmer

Regards
Ray Farmer
0 Kudos
Message 2 of 5
(3,633 Views)

Thanks for the suggestion, Ray.

 

My question is more about how the .dlls under the <TestStand>\API\DotNet\Assemblies work.  If I reference them, the version is built into the path (i.e. 4.2, etc.) so when I deploy my OI to a machine that has 4.1.1, the OI app will fail to load (since it can't find the 4.2 assembly).  I can't even check the Engine.VersionString.

 

My guess is that the DotNet API dlls are just .NET wrappers to the COM libraries (with some very useful additions), so if I XCopy the API dlls over, my app can find them and they MAY interact with the current version of TestStand on the machine.  

 

Is there a way to code/deploy a version agnostic OI?  Maybe I'm asking for something not really possible, or just plain silly.  My ultimate goal here is to lessen the pain of TestStand version changes, since NI is producing new versions of TestStand regularly.

 

Thanks. 

0 Kudos
Message 3 of 5
(3,612 Views)
Solution
Accepted by topic author Richard.Morgan

Hey Richard,

This feature is not officially supported, but here is what I tried and it worked. 4.2 OI loaded just fine with 4.1.1 as the active version  whereas 4.2 OI gave me the attached error when 4.0 was the active version. This could be a  good product suggestion, you can file it here

 

Thanks.

 

 

0 Kudos
Message 4 of 5
(3,589 Views)

Hi

 

here's what I write about launching teststand with the wrong active engine.

 

http://forums.ni.com/ni/board/message?board.id=330&message.id=21274&query.id=765891#M21274

 

This is not really the same as what Richard was initially asking. But it does highlight the problem if the correct engine is not activated before starting TestStand.

 

Maybe what is needed is to be able to determine what version the currently active TestStand engine is and if it doesn't meet the requirement then to be able to activate as part of the OI code.

 

regards

Ray Farmer

Regards
Ray Farmer
Message 5 of 5
(3,577 Views)