- C++ sources are converted to C#. Now SQLite.NET requires the presense of
the native sqlite.dll. SQLite.NET.dll became completely managed.
The separation of managed and native DLLs was done in the anicipation
of PocketPC version of SQLite and SQLite.NET.
- Added one more option to the connection string. The option is called
'UTF8Encoding' and could be True or False. If the option is True, results
returned from SQLite are considered UTF8-encoded. If the option is False,
results are considered ASCII-encoded. In both cases, the appropriate
conversion is performed to get resulting UTF18/UCS2 managed String.
The default value of this option is False.
I am upgrading to version 0.18 from v. 0.14.
I am having a small problem figuring out where I should put the native Sqlite.DLL file.
I am using this in an ASP.NET project. I have referenced the new Sqlite.NET.dll file, rebuilt my project, and in addition deployed the Sqlite.dll file in the application bin directory.
When I run my ASP.NET application I get the following error: System.DllNotFoundException: Unable to load DLL 'sqlite'.
Putting the DLL to Windows\system32 solved this.
It would still be nice to know if its possible to store the DLL in another location (e.g. in the web application directory)
My guess it has something with user accounts ASP.NET runs under. Your web application process is either ASPNET_WP.EXE or w3wp.exe depending on the version of Windows you have. ASPNET_WP usually runs under ASPNET account, w3wp runs as NETWORK SERVICE account. I think, in both cases, the search path doesn't include your application 'bin' directory. See following references:
The Search Path Used by Windows to Locate a DLL:
A Tale of Three Security Contexts in ASP.NET:
How do I call functions in a DLL not in the default search path
Log in to post a comment.