I've created a .net 2.0 application which uses a dll (.net interop assembly) created by LV2015.
I've setup LV to create .net 2.0 DLLs.
Calling the DLLs Functions works fine under the development system (Windows 7 Enterprise).
When I test my application under Windows Virtual PC XP Mode (SP3, .net2.0 installed) the app crashes when it first calls one of the LV DLLs Functions.
The Error is: System.TypeInitialization ...see Screenshot.
The Function is
NI_Restart.GetSystemStatus(this.str_IP, this.Username_str, this.Password_str, out status_str, out error_b, out error_i);
(its german, sorry!)
I have made other DLLs (much more Complex) with LV2014. They run fine under Windows XP.
I have included the whole project for you.
I don't know if its about the build configuration. Is it a problem with LV2015?
What version of Windows XP are you running?
As with the documentation linked below, Only Windows XP Service Pack 3 is supported on LabVIEW 2015:
However please keep in mind Microsoft have dropped support for Windows XP. As such, National Instruments can no longer support this operating system. This is because the underlying functions which enable LabVIEW to interact with the Windows Operating System and function are now unsupported as outlined in the below Microsoft White Paper:
It is not recommended to use Windows XP anymore by both Microsoft and National Instruments.
Do you experience this issue under the development environment or as an executable? If an executable, is this isolated to Windows XP or is replicable on a Windows 7 system? If Windows 7 also, it may be that there are missing dependancies.
Ed, his post said he's using SP3.
You'll want to use this: http://www.ni.com/pdf/manuals/374715c.html as a resource to show what is supported. The readme is far more informative.
It's also inaccurate to say LabVIEW 2015 doesn't support XP. National Instruments DOES still support the software as per the documentation you and I have provided.
He also mentioned he created a DLL with LV. It's unlikely he's using it in the development environment or as an application. He's using it as a DLL.
Simorgh, I'd be more interested in solating where the problem exists here. You said you've done the same thing in 2014. Do you still have access to 2014? If so, save the code for an older version and create the DLL in 2014. Do you get the same error? If so, it's not 2015 that's the problem. It's something in the DLL itself. We can troubleshoot from there. If 2015 does cause a problem, I'd suggest opening a ticket with NI and asking them to take a look at a potential bug.
Thank you edjones and natasftw.
I am currently downloading LabView 2014 and will try to rebuild the DLL with 2014.
What I discovered in the meantime is, that if I install LabView RunTime Engine 2015 and NI System Configuration RunTime on the Windows XP SP3 System, the DLL executes without error.
I know, the RunTime engines are an official prerequisite for these builds to work BUT I had previous builds which where not dependent upon the RunTime engine (I'm still using the same libraries in the project, i.e. NI System Configuration VIs like restart.vi).
Now, another question is: Is it possibly to eliminate those depencies by build config options or can I include the dependencies in my build?
Alright...I gave up.
I will just install hundreds of MBs of Labview Runtimes and System Configuration Runtimes for my small application.
Now I am stuck building an installer that calls the corresponding LabView Runtime Engine setup.exe and System Configuration Setup.exe....but the LV Runtime Engine Program keeps loading the sfc_os.dll.
Some kind of deadlock or whatever.