in

System.Data.SQLite

An open source ADO.NET provider for the SQLite database engine

Version 1.0.66.0 - bad build for Compact Framework ?

Last post 11-09-2011 9:46 AM by jp2code. 4 replies.
Page 1 of 1 (5 items)
Sort Posts: Previous Next
  • 04-21-2010 1:59 PM

    • jpears
    • Not Ranked
    • Joined on 04-21-2010
    • Posts 2

    Version 1.0.66.0 - bad build for Compact Framework ?

    I downloaded the new release (the full "SQLite-1.0.66.0-setup.exe"), and installed it on my PC.  And then deployed the installed binaries found under the CompactFramework directory onto my device.

    When I run my device application, I get the following exception...


    System.MissingMethodException: Can't find PInvoke DLL 'SQLite.Interop.DLL'.
    at System.Data.SQLite.SQLite3.Open()
    at System.Data.SQLite.SQLiteConnection.Open()

     

    ... Which makes sense, since the DLL in the release is named "SQLite.Interop.066" and not 'SQLite.Interop".

    I also get the same error when running "testce" on the device.

    I tried the binaries from the "SQLite-1.0.66.0-binaries" download, and got same problem.



    Looking at UseNativeMethods.cs, it appears that if compiled for Compact Framework, it should be looking for "SQLite.Interop.066.DLL" (which is the binary in the release) and not "SQLite.Interop.DLL".

    Which is also what I'd expect since in the previous release, the DLL had to be named SQLite.Interop.065.DLL.

    #if !PLATFORM_COMPACTFRAMEWORK
        private const string SQLITE_DLL = "System.Data.SQLite.DLL";
    #else
        internal const string SQLITE_DLL = "SQLite.Interop.066.DLL";
    #endif // PLATFORM_COMPACTFRAMEWORK

     

    I tried renaming the DLL to "System.Data.SQLite.DLL", and the 'testce' utility then works.  But I'm hesitant to use it that way for my application since I'm assuming that if it wasn't compiled with PLATFORM_COMPACTFRAMEWORK, then it's not fully compatible with Compact Framework?  So, I'm continuing to use 1.0.65.

     

     

     

    Filed under:
  • 05-03-2010 12:37 PM In reply to

    • jpears
    • Not Ranked
    • Joined on 04-21-2010
    • Posts 2

    Re: Version 1.0.66.0 - bad build for Compact Framework ?

     I've since downloaded the source code, and did a Release build using the Compact Framework configuration. It seems to work with no issue on my device, including the 'testce' unit tests.

    So in the downloadable binaries release, I'm convinced the binaries that are in Compact Framework folder aren't correct.

    Filed under:
  • 05-03-2010 7:18 PM In reply to

    • Gus
    • Top 500 Contributor
    • Joined on 04-29-2010
    • Posts 5

    Re: Version 1.0.66.0 - bad build for Compact Framework ?

    1. SQLite-1.0.66.0-setup.exe  \CompactFramework\System.Data.SQLite.DLL   154K        - unknown error

    2. SQLite-1.0.66.0-binaries.zip \CompactFramework\System.Data.SQLite.DLL   146K       - It's the working dll

  • 06-10-2010 12:10 AM In reply to

    • masc
    • Top 50 Contributor
    • Joined on 10-26-2007
    • Posts 20

    Re: Version 1.0.66.0 - bad build for Compact Framework ?

    The 1.0.66.0 source package has a minor flaw as well, producing SQLite.Interop.65.dll in debug configuration (release is ok).
  • 11-09-2011 9:46 AM In reply to

    Re: Version 1.0.66.0 - bad build for Compact Framework ?

    Over a year has passed.

    Is this still the only solution? (i.e. download the binaries)

    Joe
    Filed under:
Page 1 of 1 (5 items)
Powered by Community Server (Commercial Edition), by Telligent Systems