Entry point not found in System.Data.SQLite.dll

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 .

SQLite warning

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-” 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.


VS 2010 Target Setting

Leave a Reply

Your email address will not be published. Required fields are marked *