DMC, Inc.

LabVIEW 2009 SP1 and Visual Studio 2010 class libraries

While it is usually preferable to avoid mixing development environments for a project, sometimes we need to create a mixed platform solution.  In a recent project, I needed to create a class library in C# to interact with a LabVIEW 2009 SP1 application.

I fired up Visual Studio 2010 and created a quick .Net 4 application.  On attempting to create a constructor in LabVIEW, I got the error message: "The selected file is not a .NET assembly, type library or automation executable".  This wasn't entirely unexpected as VS 2010 was released after LV 2009 SP1.  So, I converted the project to .Net 3.5 and was on my way.

Unfortunately, I was greeted with "LabVIEW: Internal error. Wrong memory zone accessed." when I tried run my newly compiled dll.  No amount of changing settings has any effect on the error message.

There is, however, a simple solution.  Just make sure to select .NET Framework 3.5 when you create your class library in Visual Studio 2010.