Hello,
I'm having multiple problems trying to get some .NET assemblies I have running smoothly when being called from labVIEW.
1) I have some .NET assembly dll's that rely on certain other configuration files being present in the same directory as them. When accessing them through labVIEW it seems that the assemblies are copied elsewhere (to a temporary directory that is created and deleted during program excecution) to be used and so they can't find these configuration files anymore. A temporary workaround is that the .NET assemblies also try to connect to our server to get these configuration files if they can't be found - but I need to get this software running even if that server connection is unavailable.
I've tried locating the temporary folder labVIEW creates for a VI that's running and copying them there, to no avail. Is there any way to know exactly where these dll's are being accessed from when LabVIEW is running the VI?
2) Assuming that I'm not missing something obvious in my first question, is there any way to configure LabVIEW to just run .NET assemblies from the location they're stored in rather that letting it copy them goodness knows where (random temp directory, memory etc.) for use?
3) Is there any way to use 2 different versions of a .NET assembly in different VI's without shutting down LabVIEW and restarting it? Any time I try referring to a different version of an assembly (whether in concurrant VIs or by closing down all open VIs and creating a new one) it will always default to the first version that was used since LabVIEW was started. (ie. if I use myasm.dll version 1.0.0.0 in a VI then later try using myasm.dll version 2.4.12.1 in any other VI whether or not the first VI is open LabVIEW will always use methods from version 1.0.0.0)
4) A follow on from (3)... is there any way to remove a .net assembly from LabVIEW's "memory" once it has been used? It's annoying to have to shutdown LabVIEW and restart it every time I need to re-build a .NET assembly that I'm working on for interop. (especially becuase starting LabVIEW 8.0 is nowhere near lightning fast).
Thanks,
Neil