Is it possible to use this wrapper with the Compact Framework for PocketPCs?
I could be mistaken, but I believe the answer is NO.
In order to have the code running with WinCE or PocketPC you need to compile the (SQLite) code with the Embedded Visual C++ compiler. As far as I know, SQLite is not yet available as a binary for WinCE, and any issues with porting it are unknown (to me).
I am reasonably confident that once that has been done the ADO Wrapper will work in the compact framework.
I would love to use SQLite on WinCE, we are currently using SQL CE on CE and SQLite on PC, with conditional compiling resolving some of the differences.
Actually, there is a port of SQLite to WinCE. See http://sqlite-wince.sourceforge.net/. Unfortunately, the current version of SQLite.NET compiles the native SQLite library INSIDE the managed DLL. So, there is no easy way to grab the port. The reason for that is Visual .NET doesn't support support native compiling for Pocket PC and Embedded Visual C++ doesn't support the creation of managed DLLs.
Is it maybe possible with one of the other .Net Wrapper?
I'm not sure about other wrappers. I believe they are either too low-level, or doesn't have a full implementation of ADO.NET provider.
FYI, the next version of SQLite.NET will decouple .NET provider and SQLite itself. SQLite.NET and SQLite will be two different DLLs. SQLite.NET will be able to run on any platform supported by .NET Framework. SQLite.NET DLL will require the presence of sqlite.dll in the same directory as SQLite.NET.
Forgot to mention that I hope to release the precompiled version of SQLite for PC and PocketPC as well.
Then my only question is: When will you assume to release this version?
I hope, the decoupled SQLite.NET and SQLite for PC will be available on July, 24. Not sure about SQLite for PocketPC. Probably, two days later.
AFAIK, managed C++ isn't available for .NET Compact Framewok platform. At least it's not possible to create a managed C++ project for Windows CE ...
Maybe someone could enlight me ?
Visual Studio .NET compiles Managed C++ to IL (intermediate language). This compiled DLL should (theoretically) run on any .NET Framwork implementations, including Compact Framework.
My intention is to compile ADO.NET provider DLL using VS.NET 2003 and SQLite DLL using eMbedded Visual C++ 4.0. The provider will be managed DLL and SQLite DLL will be native DLL. Then the provider will use PInvoke services to call unmanaged SQLite functions.
Unfortunately, based on Googling the topic, I believe that Managed C++ assemblies will not run on the .NET Compact Framework. From what I've read, there may be support for it in future Framework versions, but I wouldn't count on it. At this time, the only options for compiling to the Compact Framework are C# and VB.
Unfortunately, you're right. What a shame! It forces me tp speed up the process of porting the whole adapter to C#.
When PInvoking a native SQLite.dll under .NET CF you'd also have to switch from sqlite_exec() to sqlite_compile()/sqlite_step() as unmanaged callbacks aren't available under .NET CF.
We don't use callbacks. Thanks for the tip anyway.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.