**Now ,i import an three DLL, libdb_dotnet62.dll depend on libdb62d.dll and libdb_csharp62.dll, but this is a matter, it say not found ,please give me an help?
this my codes:
public void dbTest(){
btreeDBConfig = new BTreeDatabaseConfig ();
btreeDBConfig.Duplicates = DuplicatesPolicy.SORTED;
btreeDBConfig.Creation = CreatePolicy.IF_NEEDED;//不存在就创建数据库
btreeDBConfig.PageSize = 4 * 1024;
btreeDBConfig.CacheSize = new CacheInfo (0,1024 * 1024 * 80,0);//缓存大小
string btreeDBFileName = Application.persistentDataPath + "/" + "myTest.db";
btreeDB = BTreeDatabase.Open (btreeDBFileName,btreeDBConfig);
}
**
DllNotFoundException: libdb_csharp62d
BerkeleyDB.Internal.libdb_csharpPINVOKE+SWIGStringHelper..cctor ()
Rethrow as TypeInitializationException: An exception was thrown by the type initializer for SWIGStringHelper
BerkeleyDB.Internal.libdb_csharpPINVOKE..cctor ()
Rethrow as TypeInitializationException: An exception was thrown by the type initializer for BerkeleyDB.Internal.libdb_csharpPINVOKE
BerkeleyDB.Internal.DB..ctor (BerkeleyDB.Internal.DB_ENV env, UInt32 flags)
BerkeleyDB.BaseDatabase..ctor (BerkeleyDB.DatabaseEnvironment envp, UInt32 flags)
BerkeleyDB.Database..ctor (BerkeleyDB.DatabaseEnvironment env, UInt32 flags)
BerkeleyDB.BTreeDatabase..ctor (BerkeleyDB.DatabaseEnvironment env, UInt32 flags)
BerkeleyDB.BTreeDatabase.Open (System.String Filename, System.String DatabaseName, BerkeleyDB.BTreeDatabaseConfig cfg, BerkeleyDB.Transaction txn)
BerkeleyDB.BTreeDatabase.Open (System.String Filename, BerkeleyDB.BTreeDatabaseConfig cfg)
testWindow.dbTest () (at Assets/testWindow.cs:37)
testWindow.Start () (at Assets/testWindow.cs:26)
↧
DllNotFoundException: libdb_csharp62d
↧
DllNotFoundException, C++ dll used with an assembly, not possible?
Hi, I'm kind of new to things like handeling dll in unity and stuff. Here's my problem I need Unity and an over application to communicate with eachother. To do so I have an API made of aC++ dll from that other application, a lib and an header. There called API_C.1.6.dll, API_C.lib and API_DLL_C.h, I also have a second dll called API_NET.dll that is an assembly that does all the DLLIMPORTS for me so that I just have to add a reference to that dll in VS2013 and I can use all the fonction from the first dll.
Here is what the API_DLL_C.h looks like:
#ifndef __API_CBINDING_h__
#define __API_CBINDING_h__
//! use this compilation option to create API.dll ///
#if defined(API_STATIC) || defined(__linux__)
#define declAPI
#else
#ifdef API_EXPORTS
#define declAPI __declspec(dllexport)
#else
#define declAPI __declspec(dllimport)
#endif
#endif
#include API_DLL_Enums.h"
#define MAX_DATA_ID_STRING_SIZE 256
#ifndef API_STATIC
#ifdef __cplusplus
extern "C" {
# endif
#endif
declAPI int Process_InitParams(const char* ProcName, const char* ConfigName, float Frequency);
...(other fonctions)
}
Here is my cs files that uses the dll:
using UnityEngine;
using System;
using System.IO;
using API_NET;//from the assembly
public class TestComAPIUnity: MonoBehaviour {
// Use this for initialization
void Start()
{
plugin_API.Process_InitParams("TESTUNITY", "DEFAULT", 30f);
}
// Update is called once per frame
void Update () {
}
}
This is the simpliest communication between Unity and my other application that can be done with the API.
With this there is no compilation errors but when I try to run in the editor I have this error:
*DllNotFoundException: API_C.1.6.dll
API_NET.plugin_APIPINVOKE+SWIGExceptionHelper..cctor ()
Rethrow as TypeInitializationException: An exception was thrown by the type initializer for SWIGExceptionHelper
API_NET.plugin_APIPINVOKE..cctor ()
Rethrow as TypeInitializationException: An exception was thrown by the type initializer for API_NET.plugin_APIPINVOKE
API_NET.plugin_API..cctor ()
Rethrow as TypeInitializationException: An exception was thrown by the type initializer for API_NET.plugin_API
TestComAPIUnity.Start () (at Assets/TestComAPIUnity.cs:12)*
What I understand(I think) is that when I call the function, the assembly does it's job and try to find API_C.1.6.dll but can't find it.
Just to be sure I build the project the dll is in the project_data\Plugins folder but when I use the exe with my application nothing happens.
At some point I did do the DLLIMPORT myself and I had this kind of error:
*Failed to load 'Assets/Plugins/x86_64/audiopluginvrunity.dll' with error 'The specified module could not be found.
',
TestComAPIUnity.Start () (at Assets/TestComAPIUnity.cs:12)
DllNotFoundException: API_C.1.6.dll'*
I arrived at the conclusion that doing the DLLIMPORTS myself or not just changed where the error would appear in my script or in the assembly.
I also checked if the dlls were 64bits like my OS and my UnityEditor, they are.
I placed the API_C.1.6.dll in Assets, in Assets\Plugins, in Assets\Plugins\x86_x64(like the parameter in the plugin inspector), i placed it next to my exe and the assets folder, next to the API_NET.dll(in my application folders).
Some people on the internet seemed to had problems because they didn't had Microsoft Visual C++ 2015 Redistributable, I have it and I have a licenced VS2013.
I also tried to change my environment variable PATH at runtime with a static constructor but it changed nothing.
I'm starting to run out of ideas, so I ask you guys for help. By the way, judging by the number of post and articles about it, a lot of people seem to have trouble with handeling DLLs in Unity.
Thanks
Vincent
P.S: because of confidentiality policy I had to change names and stuff so there may be one or to mistakes, sorry and forgive my not that good english
↧
↧
DLLNotFoundException ThinkGear
Hi, I am trying to use ThinkGear Dll [ThinkGear .dll][1] (end of the page) but I get dllNotFoundException everytime when I try to run it. File structure for dll is right.( Plugins ( x86 ( .dll ) ) )
The thing is when I build the project and send it to my friend he can run it without any problem but I can not. Also I can play the games come with the driver which created by using the Unity. What can be the problem?
[1]: http://developer.neurosky.com/docs/doku.php?id=using_thinkgear_with_unity&s[]=unity
↧
Can't get steamworks.NEt 7.0.0 to Work in Unity 4.6
Hi The problem is that in the title, I've downloaded steamworks.net 7.0.0 and I'm using Unity 3D 4.6.0f3, but whenever I Initialize a Build or the project I get the error:
[Steamworks.NET] Could not load [lib]steam_api.dll/so/dylib. It's likely not in the correct location. Refer to the README for more details.
System.DllNotFoundException: CSteamworks
at (wrapper managed-to-native) Steamworks.NativeMethods:SteamAPI_RestartAppIfNecessary (Steamworks.AppId_t)
at Steamworks.SteamAPI.RestartAppIfNecessary (AppId_t unOwnAppID) [0x00005] in C:\Users\Pc\xxxxxxx\Assets\Plugins\Steamworks.NET\Steam.cs:41
And I've found no way around it, I tried copying steam_api.dll basically all over the project and nothing changes :s
Any help would be greatly appreaciated guys.
↧
Nvidia Ansel integration Issue :: DllNotFoundException
I'm interested in testing out Nvidia's ANSEL plugin, as shared here on the asset store: https://www.assetstore.unity3d.com/en/#!/content/74758
I am running Unity 5.5 on a modern (64 bit) Windows desktop with a GTX 1070 graphics card.
Unfortunately, adding the Ansel script to my main camera results in the following error:
"DllNotFoundException: AnselPlugin64".
I have verified that the AnselPlugin64.dll file is present in my project's Assets/Plugins folder, and that it is set to plugin enabled for all platforms in the inspector. Any ideas what could be going wrong here?
↧
↧
Unity does not create Unityassemblies folder in Unity
We use Unity with git in the office and recently included Unity Test Tools, which reference Mono.Cecil.
80% of the machines are fine with everything, on around 20% the Mono.Cecil dll is not found. We already nailed the error down to the ProjecTname/Libraries/UnityAssemblies folder not beeing created / not containing all dlls, but I have no idea how to approach a solution.
Can anyone give some insights hwo this folder is managed / where contents are defined?
↧
GST Movie Texture Android - Dll missing
Hi guys, Im trying to use this asset https://www.assetstore.unity3d.com/en/#!/content/59897
It works fine on windows, and it says it supports android. but when I try to play on editor set to buil on android, it shows this error:
DllNotFoundException: gstreamer_android
GStreamer.Ref (System.String gst_debug_string, .GUBUnityDebugLogPFN log_handler) (at Assets/Scripts/GstUnityBridge/GStreamer.cs:96)
GstUnityBridgeTexture.Initialize () (at Assets/Scripts/GstUnityBridge/GstUnityBridgeTexture.cs:241)
GstUnityBridgeTexture.Start () (at Assets/Scripts/GstUnityBridge/GstUnityBridgeTexture.cs:278)
It seems many user have this problem, but one user seems to have solved the issue because, on the reviews section, he said that he, with some struggle, was able to stream on android.
I dont know how to get in contact with this user ( @biggsthecat
)
any one that can help me solve this please.
thanks in advance
↧
Firebase TypeInitializationException/DLLNotFoundException on Android
Hi!
I am trying to use Firebase within Unity (5.5.2). It works fine in the editor, but when I make an Android build and try to run it, I get the following error:
![alt text][1]
[1]: /storage/temp/89023-screenshot-2017-02-28-14-04-10.png
There is only one line of code that I am trying to run:
FirebaseApp.DefaultInstance.SetEditorDatabaseUrl(myurl);
**What I did**
I created a new project, set it to Android, imported the Firebase SDK from this site: https://firebase.google.com/docs/unity/setup and importet the FirebaseDatabase.unitypackage.
Then I created a script that tries to set the URL, which works fine in the editor (I can even go further and read and write to the database).
**Fixes I tried**
- setting the PATH variable according to https://github.com/firebase/Firebase-Unity/issues/2
- updating everything in my SDK Manager, all the Google stuff and Android tools, SDK for each version
- uninstalling and reinstalling Java (64 Bit)
The very strange thing is, that the same project works for another person. When he builds, I can run the app on my phone just fine. So the issue must be something in my workspace. Here is what I got:
- Windows 8.1 and 7 (64 Bit)
- Unity 5.5.2f1 (also tried 5.5.0)
- jdk-8u121
- android-ndk-r10e
- Go Play services v39
- Google Repository v44
Can anyone think of ANYTHING at all that might cause this issue? There must be *something* I am missing...
**EDIT** I also tried to run the quickstart database project (https://github.com/firebase/quickstart-unity/tree/master/database/testapp), which also works fine in the editor, but in a build results in this message:
"One or more Firebase dependencies are not present. Current dependency status: UnavailableOther"
Which I assume is the same error, just masked by exception handling.
↧
DLL plugins unsupported for Android Application Building
I am developing an Android application in VR using Unity, I wrote some functions in C++ and imported that as DLL file in my Unity project. The DLL was imported successfully when it was running on Windows. The main problem came into picture when I was building the same for my android device, Unity had built some app but it crashed when I installed it on my phone.
I made some research to find out what was wrong, and I found this answer (http://answers.unity3d.com/questions/722496/how-can-i-include-a-c-dll-in-the-apk-file.html). Someone said that I need to make a .so file. I made that using NDK on Android Studio.
Can someone help me with how to import that .so file in a C# Script on Unity?
↧
↧
EntryPointNotFoundException - native plugin help
**EDIT: SOLUTION IS BELOW! - look for the header "**SOLUTION**"**
Hello,
So I'm trying to use a C++ native plugin (balls.dll) with a C# script in my project (Unity 5.5.0f3). The dll is inside my assets/plugins folder.
My code (simplified) looks something like this:
public class Bigballs : Monobehaviour
{
[DllImport("balls")]
public static extern int Init(); //returns 0 if initialized, else returns -1
int x;
void Start()
{
x = Init();
}
}
While in editor, I hit run and Unity responds with "EntryPointNotFoundException: Init" at the line "x=Init()". What can I do to fix this? I have tried searching Unity forums and googled, it seems no one is really having the same issue in regards to native plugins.
If it is worth mentioning, I have worked with native plugins in the past, and initially, I tried [DllImport("balls.dll")], which is how I was able to access my dll methods in an older project. However, this time I got a "DllNotFoundException". After some quick googling, it was suggested that dropping the .dll would get rid of the DllNotFoundException in the DllImport.
I greatly appreciate your help in advance.
**SOLUTION**
So here is what I did that FINALLY got it to work. I created a constructor to find my plugin, solving the DllNotFoundException. What it does is set the current path to the location of my plugin, which is in Assets/Plugins/x64.
static Bigballs() //constructor
{
String currentPath = Environment.GetEnvironmentVariable("PATH", EnvironmentVariableTarget.Process);
String dllPath = Environment.CurrentDirectory + Path.DirectorySeparatorChar + "Assets" + Path.DirectorySeparatorChar + "Plugins" + Path.DirectorySeparatorChar + "x64";
if (currentPath.Contains(dllPath) == false)
{
Environment.SetEnvironmentVariable("PATH", currentPath + Path.PathSeparator + dllPath, EnvironmentVariableTarget.Process);
}
}
This resulted in the Dll being found, but still returns EntryPointNotFoundException. So here is the annoying part. You have to crack open the .dll, or if you're lucky and have a .lib, you can use that. What you want to do is find the Entry Point of your function inside the .dll or .lib, I am going to describe how I did it using Visual Studio and a .lib, but this should work for another program that can open .dlls and with a .dll.
So to see the contents of Balls.lib, I dragged it into Visual Studio's solution explorer and then opened it. Inside balls.lib, there is a column of what seems like jibberish, but these are actually entry points. You have to pinpoint the exact function you are trying to import, so for me it is Init(), and inside the .lib, the entry point looked like this:
?Init@@YA?AW4variable@@XZ
One thing I noticed, all the functions' entry points seem to be within a pair of periods ('**.**'), so just copy and paste the entry point, format it to have no spaces, and add it to your DllImport call, like so:
[DllImport("SimballMedicalHID.dll", EntryPoint = "?Init@@YA?AW4variable@@XZ")]
And that's how I eliminated these two annoying problems. I spent days stuck on my project and I hope that at least some of this is helpful for anyone else experiencing similar issues.
↧
DllNotFoundException error
Hi I had a question about the dll and I posted the question.
I get a DllNotFoundException error when I compile.
However, this error does not appear on other computers.
I get this error when I import it to my computer and the Unity version is 2017.1.0f3.
I want you to help me how to solve it.
↧
Unity Build error when not used B.dll referenced by A.dll I used, it couldn't build successfully.
When I used A.dll, but A.dll have included B.dll.
But actually I won't use B.dll
When I build, it will show that:
【ArgumentException: The Assembly A is referenced by B ('Assets/Plugins/B.dll'). But the dll is not allowed to be included or could not be found.】
I have asked my college to give me the missed dll but not actually used in my project, but it will pop out another missed dll referenced by that missed dll...keep recycling....
So I don't know if there are some kind of way to deal with this situation ><
It's hard to find the answer through the current searching engine...
Thanks in advanced :)
![alt text][1]
[1]: /storage/temp/102139-1.png
↧
Why I can not run Unity 2017.1.1 f 1 with the Command line in macOS?
I upgrade my Unity 5.4 to Unity 2017.1.1f1 on the macOS, but it have some trouble for me. I can launcher Unity with use the Command line on Unity 5.4:
/Volumes/Home/Applications/Unity/Unity.app/Contents/MacOS/Unity -projectPath /Volumes/Extend/Project/Test/Test -executeMethod PerformBuild.CommandLineBuildAndroid
But now it can not work on Unity 2017.1.1f1,. The terminal when I execute the Command line:
![alt text][1]
and then I opened the Editor.log, it said:
**The assembly mscorlib.dll was not found or could not be loaded.**
![alt text][2]
How can I do with the problem? Is it the bug of Unity 2017?
[1]: /storage/temp/102356-shell.png
[2]: /storage/temp/102357-error.png
↧
↧
Linux build is putting libNative.so in wrong place
I am new to this Unity world, so I might be doing something wrong...
But, I am getting a DllNotFoundException for my Linux build. The Windows and MacOS build work fine, so it is not my managed code. The Linux library works fine in other .NET apps, so it is not that. And finally, when I look at the error message and move my native library to the location it is looking in, the game works.
Basically, this is a simple game that creates a 2D texture using SkiaSharp. My p/invoke looks like this (SKColorType is an enumeration):
[DllImport("libSkiaSharp", CallingConvention = CallingConvention.Cdecl)]
public extern static SKColorType sk_colortype_get_default_8888();
I have all of this on GitHub: https://github.com/mattleibow/SkiaSharpUnityDemo
The log files:
- console log: https://gist.github.com/mattleibow/b6e95312ada816496cd8afbcae36f8b1
- player log: https://gist.github.com/mattleibow/3f76cef131cf71abe8ca47d109806580
SkiaSharp: https://github.com/mono/SkiaSharp
This may be related to my question: http://answers.unity3d.com/questions/1394446/dllnotfoundexception-on-linux-2.html
↧
GPG dll not found exception Google Services
I am using the google services with the unity plugin and I keep getting **GPG DLL not found excetion- Couldn't open LibGPG. so** I read somewhere in an old thread to set a static reference in the Android folder, but this has been cancelled or moved somewhere with the latest update. Could you please help me! I can't get it anymore... click here to see the pictures:
https://github.com/playgameservices/play-games-plugin-for-unity/issues/1955
↧
Dll is not allowed or could not be found
The exact issue I'm having is with the System.Windows.Forms.dll. I needed to implement it to write to a spreadsheet. It works exactly as desired if I run the application in the Unity Editor but trying to build it produces an error:> ArgumentException: The Assembly> System.Deployment is referenced by> System.Windows.Forms> ('Assets/System.Windows.Forms.dll').> But the dll is not allowed to be> included or could not be found.> UnityEditor.AssemblyHelper.AddReferencedAssembliesRecurse> (System.String assemblyPath,> System.Collections.Generic.List`1> alreadyFoundAssemblies,> System.String[] allAssemblyPaths,> System.String[] foldersToSearch,> System.Collections.Generic.Dictionary`2> cache, BuildTarget target) (at> C:/buildslave/unity/build/Editor/Mono/AssemblyHelper.cs:142)> UnityEditor.AssemblyHelper.AddReferencedAssembliesRecurse> (System.String assemblyPath,> System.Collections.Generic.List`1> alreadyFoundAssemblies,> System.String[] allAssemblyPaths,> System.String[] foldersToSearch,> System.Collections.Generic.Dictionary`2> cache, BuildTarget target) (at> C:/buildslave/unity/build/Editor/Mono/AssemblyHelper.cs:148)> UnityEditor.AssemblyHelper.AddReferencedAssembliesRecurse> (System.String assemblyPath,> System.Collections.Generic.List`1> alreadyFoundAssemblies,> System.String[] allAssemblyPaths,> System.String[] foldersToSearch,> System.Collections.Generic.Dictionary`2> cache, BuildTarget target) (at> C:/buildslave/unity/build/Editor/Mono/AssemblyHelper.cs:148)> UnityEditor.AssemblyHelper.FindAssembliesReferencedBy> (System.String[] paths,> System.String[] foldersToSearch,> BuildTarget target) (at> C:/buildslave/unity/build/Editor/Mono/AssemblyHelper.cs:179)> UnityEditor.HostView:OnGUI()
Looking around I saw and tried solutions from downloading and installing other dlls (system.configuration and system.security), changing the settings on the playersettings api compatiablility level from .Net 2.0 sub to just .Net 2.0
Any other possibly relevant info: Build is for windows, running on Win 10, Unity version is 2017.1.1f1.
Thanks Everyone
↧
Import libnodave.dll .net into Unity3D "DllNotFoundException: libnodave.dll" Siemens PLC
Hi all,
i can't import libnodave.dll into my unity project without this error when i run the project "DllNotFoundException: libnodave.dll".
This free dll is to comunicate with Siemens PLC and you can download at this link [link text][1]
You can download my test project at this link
[link text][2]
Someone can help me to do this ?
Tankyou very much
[1]: https://sourceforge.net/projects/libnodave/
[2]: https://www.dropbox.com/s/ntyptw4p16rjmfz/TestScript.zip?dl=0
↧
↧
How to use Custom DLL for Hololens
HI ALL, I want to use DLL custom for hololens.
1. I made DLL as 32 bit.
2. I placed custom DLL into Plugins/WSA/UWP/x86
when i made build i haven't get any errors. When i run the app in Hololene. In console i am getting message as DLL is not found. If any one have solution please help me.
Thanks in Advance.
↧
Failed to load DLL with error "The specified module cannot be found."
I am trying to use a C++ DLL that does not have any dependencies. When I try to use it in my project, it throws the error Failed to load DLL with error "The specified module cannot be found.". It is certainly able to find the DLL because it sends back the correct file path. Ive tried restarting unity, reimporting the asset, all assets, etc.
↧
OpenSSL-net DllNotFoundException: Assets/Plugins/OpenSSL/libeay32.dll
I am trying to use [OpenSSL.net][1] in Unity. I've cloned the git repository, build an AnyCPU release built in visual studio which made a directory containing: libeay32.dll, ManagedOpenSsl.dll and ssleay32.dll. I've dragged them in my project in *Assets\Plugins\OpenSSL* and I can now access OpenSSL from script:
`using OpenSSL.Crypto;`
I'm using a small script to try and use OpenSSL functionality:
byte[] Encrypt(byte[] bytes)
{
using (CipherContext cc = new CipherContext(Cipher.AES_256_CBC))
{
return cc.Encrypt(bytes, testKey, testIV);
}
}
When I run the method, I get an error in the unity console:
*DllNotFoundException: Assets/Plugins/OpenSSL/libeay32.dll
OpenSSL.Core.Version.get_Library ()
OpenSSL.Core.Native..cctor ()
Rethrow as TypeInitializationException: An exception was thrown by the type initializer for OpenSSL.Core.Native
OpenSSL.Crypto.Cipher..cctor ()
Rethrow as TypeInitializationException: An exception was thrown by the type initializer for OpenSSL.Crypto.Cipher
TestSerialization.Update () (at Assets/Scripts/SerializedClasses/TestSerialization.cs:51) *
On line 51, the encrypt method is called. I'm targeting Android and in a later stage IOS but it seems to not even work on Windows 10.
Can someone tell me how this happens?
Kind regards,
Yorick
[1]: https://github.com/openssl-net/openssl-net
↧