Today I encountered error while working with SQLite in C# Application “System.Data.SQLite.dll Entry point not found” on non development systems. I was working with VS 2008 and it was working fine on my development system. Then I checked my build log and I came to know that I am getting one warning that Assembly generation — Referenced assembly ‘System.Data.SQLite.DLL’ targets a different processor .
While my platform target is “any CPU”.
This was the problem because there are different version of System.Data.SQLite.dll will be installed on your system for different platform (like x86, x64, Itanium, Compact) when you install using “SQLite-184.108.40.206-setup.exe” in different folders, for x86 is will be in bin folder of installation directory and for other targets there are separate folders. Different DLL for different platform because System.Data.SQLite.dll contains both code managed and unmanaged. Unmanaged code is platform dependent that’s why there are different dll for different platform. So take care while adding reference directly by browsing.
To fix this problem Goto project property page and select build tab and change Platform to desired platform like x86 or x64. And optionally add this dll in GAC while deploying it.