|
Post by joeymaru on Aug 14, 2021 15:52:34 GMT
Hi! I have a rather peculiar error, a client is getting a DLLNotFoundException for sqlite3.dll, but only on windows, and only on certain machines? Any idea what could cause this? We have tested with several windows machines, and it works fine on them. I have checked DLL settings in the project, and I've also put sqlite3.dll in the root project folder so it is getting included. We've checked firewall/virus protection settings, just incase that was stopping the DLL. And the DLL is in the folder.. My assumption is maybe the backslash in the filepath it is trying to load from could be an issue? I'll attach a pic from the client.. The error reads: DLLNotFoundException: C:/Users/thepo/Desktop/DraftForceApp-Dev/DraftForce_Data/Plugins\x86_64/sqlite3.dll We are on the latest version of the plugin (2.13.0 (Current) - released on February 19, 2021) and using Unity version 2020.3.1f1 Mono backend, .NET 4.0 Thank you, Joey Attachments:
|
|
|
Post by echo17 on Aug 15, 2021 11:24:35 GMT
That is definitely odd, I have not had this reported before. I would suggest getting with your client to get the full specs of hardware / software they are using. There might be something that stands out as different from your test environments. Also, please be sure you are using the correct version of the sqlite dll if you are manually placing it somewhere. The x86 and 64 bit versions are different and are likely not compatible in the wrong Windows setup.
|
|
|
Post by joeymaru on Aug 15, 2021 16:40:17 GMT
Hi Echo! Thanks for the response - yeah it was a very curious issue.. The PCs they are trying to run on are 64bit (as are all of our test machines), so I'm not sure if it is an architecture issue or not.. I was sent this photo of some of the specs - however I've been told they aren't running in S-mode (some Security mode microsoft has, to prevent app from running that arent from microsoft store..) Attachments:
|
|
|
Post by echo17 on Aug 16, 2021 9:59:49 GMT
I can't see anything odd about the setup, looks similar to my own PC. Corporations sometimes have a lot of restrictive software that can prevent functionality. I deal with this headache a lot in my day job, and there really isn't a way around it if they have limited your access. Unfortunately, without access to the computers in question, I won't be able to troubleshoot this. The source code comes with the plugin, so maybe you can peek and poke at it to see if there is anything that can be changed to work on the client's setup. May take a lot of iterations, I know how difficult it is to troubleshoot someone else's setup. Please see this FAQ on how to modify the source code, if you are interested: link
|
|
|
Post by echo17 on Aug 17, 2021 12:28:27 GMT
One thing to note is that the plugin copies the sqlite3.dll file that is embedded in the runtime SimpleSQL dll into the project directory when the program starts. This was a workaround to an older version of Unity that did not allow managed libraries unless you had the professional version of the Unity editor. It might be that the client's computer does not allow copying files into program file directories. If that is the case, you may need to package the sqlite3.dll file directly with the package so that it is present at install time instead of runtime. Here are links to the sqlite3.dlls used in the project. You will need to select the appropriate bit structure for the client's computer. Please unzip files before including in the project directory (I had to zip them since they have the same file name). sqlite3.dll (64 bit): sqlite3.dll.64.zip (786.73 KB) sqlite3.dll (32 bit): sqlite3.dll.32.zip (473.9 KB)
|
|
ibyte
New Member
Posts: 24
|
Post by ibyte on Aug 15, 2023 17:16:16 GMT
Hi would you please confirm the system is working correctly for you when you do a Windows 32 bit build?
|
|
|
Post by echo17 on Aug 16, 2023 9:25:37 GMT
Yes, it works on a windows 32 bit build. One thing to check, look in your build folder, under the data folder, inside the Plugins\x86 folder. If you see any sqlite dll in there, delete that. Sometimes Unity packages an extra dll there where it shouldn't. The only dll should be in the root of your build folder: Have a look at this FAQ for more information: link
|
|
|
Post by echo17 on Aug 16, 2023 9:29:34 GMT
Here are my specs, in case that helps you troubleshoot: Windows 10 Home (version 22H2, OS build 19045.3086) Unity 2022.3.7f1 SimpleSQL 2.15.1 Here is my build window: Here are my project settings: Here is a screenshot of it running in 32 bit mode:
|
|