Click here to Skip to main content
14,879,544 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I've this fingerprint application I wrote around an SQLite database. It runs quite spectacularly on my development 32 bit OS, but when I deploy to a 64 bit OS it crashes with an error message saying that it unable to load "System.Data.sqlite.dll". I'm really in need of help to get to a solution to this problem. Thanks in advance.
Posted
Comments
ZurdoDev 15-Oct-14 15:39pm
   
The exact error would be very helpful. In fact, if you google the exact error you'll likely find the answer quickly. This is a code site and you have a technical problem not so much a code problem.

However, make sure the sqllite.dll file is on the machine.
Sergey Alexandrovich Kryukov 15-Oct-14 15:41pm
   
Normally, 32-bit Windows applications are compatible with all 64-bit Windows platforms. Chances are, the target system has 64-bit version of SQLite installed (or its client adapter library). Of course, you cannot mix assemblies or native (unmanaged) executable modules targeted to different intruction-set architectures in one process. It's the best to try to target all projects to "AnyCPU" platform.
—SA

1 solution

The answer depends on what you're using.

The problem is probably that you're code is probably being compiled to target AnyCPU. Which means that on 32-bit Windows it'll run as a 32-bit app and on 64-bit Windows as a 64-bit app.

Now, since you can't combine 32- and 64-bit code in the same process, YOU have to make sure that your code matches the architecture of the .DLL's you're using to get at the sqlite database.

So, go into your Project Properties and force the target to be x86 (for 32-bit) or x64 (for 64-bit) and redeploy to the target machine.
   

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)




CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900