I am trying to make use of 3rd party DLLs which are installed via the company’s own installers into subfolders inside C:\Windows\Microsoft.NET\assembly.
Part of their licensing terms is that the DLLs may not be distributed/bundled along with 3rd party apps but must be installed via their installers directly.
It seems that Unity doesn’t have a system in place to load DLLs that are visible to Windows (Winforms apps can use the DLLs without it being included with the app) but Unity refuses to build unless they are included and when they are included the .NET4.6 DLLs all say “This DLL will not be included because it has errors. Is the assembly missing or incompatible with the current platform?” (or something like that). I have verified that I am using .NET4.x but still, these .NET 4.6 built libs complain about the version not being correct (???).
I tried using the RSC file to load the DLLs from a folder parallel to Assets and this get rid of all compiler errors except for:
Assembly 'Library/ScriptAssemblies/Assembly-CSharp.dll' will not be loaded due to errors:
Assembly 'Library/ScriptAssemblies/Assembly-CSharp-Editor.dll' will not be loaded due to errors:
Reference has errors 'Assembly-CSharp'.
Even if I managed to get past this and get the project to compile again I am still violating the “You are not allowed to distribute/bundle our DLLs” licensing terms so… How do I link to external DLLs?
The answer I keep getting is “First step is to drag them into your project”… That is not gonna help me, unfortunately. Is there a way to do this?
Thanks