I am developing a TAP plugin that references an existing API that resides in a 32 bit DLL with dependencies on other 32 bit DLLs (including the 32 bit version of Keysight.Flo.Licensing.Api.dll). I am using version 9.11.1 of the KS8400 Test Automation and I installed the 32 bit version of that on my PC and chose the Visual Studio integration option during the install.
With Visual Studio 2017, I created a new project based on the OpenTap Plugin (.NET Standard) template. when I build and run that project, visual starts the Editor.exe and loads my plugin, but the Editor version that VS starts is the 64 bit version, where as the Editor that I can launch from my desktop is the 32 bit version. In the VS project I have to set the TargetPlatform to AnyPC, otherwise my plugin won’t load in the debugging session, and my API DLL is built as AnyPC and it will load and run until it gets to the call that does the License check using the Keysight.Flo.Licensing.Api.dll. That DLL is built as x86 and I don’t have a way of generating an AnyPC version of it, So an invalid application format exception is thrown when the execution reaches that point in the code.
The OpenTap Plugin template sets up the project with a reference to an OpenTap Nuget package hosted out of the opentap.io depot and that package is used to generate the local OpenTap binaries that the plugin project needs to reference and the copy of the editor.exe that gets launched when you start a debugging session. While the depot does contain multiple versions of the package, the latest version is a 64 bit only version. I am guessing that at one point one of the older versions is probably 32 bit, but I am not sure how far I would have to go back to get a 32 bit package.
ideally, the opentap.io depot should have both a 64bit and a 32bit copy of the package, but alternatively, the 32 bit installer, could create a local depot with the 32 bit package that I could then point to in the dependencies.
If there is an alternative way of solving this problem that doesn’t involve getting a hold of the 32 bit nuget package, please advise.
Thanks