- Home /
TypeLoadException with .NET 2.0 dll
I'm currently trying to get the ViconDataStreamSDK working with Unity. It's a library for receiving a datastream from a Vicon motion-capture system. The SDK supplies a C++ and .NET version of the library (ViconDataStreamSDK_CPP.dll and ViconDataStreamSDK_DotNET.dll respectively).
I'm trying to build a Mono DLL for Unity that references the _DotNET.dll. Problem is that Unity spits out this error when I add my Mono DLL to my project: http://pastebin.com/yMZAn0YG
To provide a bit more context: according to the SDK manual, it requires that you redistribute both the _DotNET.dll and _CPP.dll with it (since the managed code in the .NET SDK assembly requires the unmanaged code in the C++ SDK). So along with my Mono DLL, I also put both the ViconDataStreamSDK_CPP.dll and ViconDataStreamSDK_DotNET.dll in the Assets/Plugins folder (additionally I tried adding them to Unity/Editor, Unity/MonoDevelop/bin, etc. but it didn't seem to help).
To my knowledge, the error seems to indicate some sort of Mono incompatibility with the ViconDataStreamSDK_DotNET.dll. I'm just trying to figure out what. According to dotPeek, that DLL was build with .Net Framework v2.0. It references Microsoft.VisualC (8.0) and mscorlib (2.0). As for the rest, it's mostly a .NET wrapper for the C++ library.
Is there anything I'm doing wrong, or is the _DotNET.dll just not compatible with Unity? If it's the latter, it should be possible to build my own wrapper or native dll with just the C++ SDK?
Hey! did you figure out how to use the vicondatastream sdk in Unity by now?
Answer by scottlaforge · Sep 28, 2016 at 03:26 PM
Although an old question, the answer would still be relevant if there's a solution. I have a similar issue with a CAN to USB device. The dll is written in .NET 2.0. When I try to reference any script that is using something 2.0-specific, it triggers the TypeLoadException.
Your answer
Follow this Question
Related Questions
TypeLoadException after adding DLL 0 Answers
TypeLoadException trying to use FJCore (FluxJpeg) 1 Answer
External dll: namespace recognized by mono, not by UT 2 Answers
Creating Unity Plugin 1 Answer
pass "interface" to a java plugin..... 0 Answers