07-02-2009 01:29 PM
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.
Solved! Go to Solution.
07-03-2009 12:31 AM
Hi Richard,
you could try Engine.VersionString to return the engine version. Checkout the Programme Reference Help.
Regards
Ray Farmer
07-06-2009 09:19 AM
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.
07-06-2009 04:17 PM
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.
07-07-2009 12:30 AM
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