SQLite Forum

Is SQLIte3.DLL a Win32 DLL?

Is SQLIte3.DLL a Win32 DLL?

(1) By anonymous on 2020-08-26 18:53:19 [link] [source]

Can I use it's functions (I am assuming that the functions are as listed in SQLite3.def) in the following fashion?

Private Declare Function FindWindowEx Lib "USER32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long

In this example the binding/environment is Visual BAsic, USER32 is USER32.DLL and the function/method is FindWindowEx.

(2) By Larry Brasfield (LarryBrasfield) on 2020-08-26 22:57:36 in reply to 1 [source]

To the topic question the answer is "Yes."

The usual mechanisms for loading and calling into DLLs from VB are available. You may have some interesting issues with passing strings.

I have to say that you must be a glutton for punishment using the C-API DLL when you could use SQLite.NET with any halfway modern version of VB.NET and get the job done more easily. Better, the string representation issues would be handled for you. (Maybe not better, depending on the nature of your gluttony.)

(3) By anonymous on 2020-08-27 05:48:37 in reply to 2 [link] [source]

Thank you for confirming.

Ah yes, I am 'a glutton for punishment' but all this is recreational rather than work related. My current endeavours are to use SQLite with ADODB from APL+Win (all 32-bits, hence the request for the 32-bit patched executable).

I started off wanting to compare SpatiaLite with SQL Server spatial features. The first hurdle was to be able to establish an ODBC connection with SQLite and then to load the spatialite extension mod_spatialite.dll. 

Searching for solutions, I found that 

1. quite a few others had the same issue and 
2. that the accepted 'wisdom' was to put all the SQLite files into the \windows\system32 folder. 

I found that quite astounding since I would normally neither change any environmental variable (e.g. Path) nor put files in any Windows 10 folders/sub-folders. 

A day later I could load mod_spatialite by simply switching to the folder where I had stored the files before loading the extension.

Whilst trying to find (Google searching) the silver light in the ordeal, I have been noting the clues on the .NET option and I fully agree that it would be a better way to use SQLite.

So far, I am pleasantly surprised at the formidable functionality of SQLite.