10-05-2022 05:27 PM
Hi
I am getting the following error when trying to access a method in a DLL built with LabVIEW 2013/DAQMX9.7.5 (.NET Interop Assembly) from python as detailed in the link https://github.com/pythonnet/pythonnet/wiki/How-to-call-a-dynamic-library. If I rebuild the DLL using LABVIEW2019/DAQMX2020 and use it, everything works fine.
System.MissingMethodException: Method not found: 'Void NationalInstruments.LabVIEW.Interop.LVClassRoot..ctor(System.String, IntPtr)'.
I used jetbrains dotpeek tool to decompile the .NET assembly and noticed that there are some differences between the code in the function from the 2 DLLs. Please check the attached text compare reprot. The data in the left column is the from DLL built in LABVIEW 2013 and the data in the right column is from the DLL built in LABVIEW 2019.
I want to try and get the old DLL working instead of rebuilding it cause of the overhead with the validation that comes with rebuilding it. Am I missing a reference? any ideas on how to get the older dll working will be very helpful.
Thanks
10-06-2022 02:18 AM
@vvpn75024 wrote:
I want to try and get the old DLL working instead of rebuilding it cause of the overhead with the validation that comes with rebuilding it. Am I missing a reference? any ideas on how to get the older dll working will be very helpful.
Help me to understand this. You want to change the old build in ways to make it work, but that will NOT require revalidation. But simply recompiling it in LabVIEW 2019 will?
Sounds not very logical to me. Either you have to revalidate every time you modify things or the whole revalidation requirement is a farce.
10-06-2022 08:14 AM
hi Rolf
I want to try and get the old DLL working with the Python. I want to keep the recreation of the DLL in 2019 as my last option.
Any ideas on what the error means and how to fix it?
Thanks Again.