Frédéric 0 Posted Friday at 08:00 AM Hello, I have an application which is using packages and SQLite database (encrypted). Unit FireDAC.Phys.SQLiteWrappe.FDEStat is set in the uses in each concerned package. Compiling in 32 bit, there is no problem and all works correctly. Problem starts when trying to compile the packages in 64bit: The compiler asks me to add the FireDACSqliteDriver package, which is already in the required packages (See attached picture). And of course, when starting the application, packages will not load because unit already in package... I need to use the older DLL because of the encryption, this is why I use the static linking. Any idea ? Thanks ! Frederic Share this post Link to post
Patrick PREMARTIN 169 Posted Friday at 08:16 AM what are the properties values of your TFDSQLiteDriverLink ? Share this post Link to post
Frédéric 0 Posted Friday at 12:28 PM Specifically the EngineLinkage ? This is set to SIFDEStatic. The settings are the same as for 32bits. So as I understand, it should theorically be similar ? Share this post Link to post
Frédéric 0 Posted Friday at 02:41 PM I think I could find a solution which seems to work so far... I kept the TFDSQLiteDriverLink.EngineLinkage = SIFDEStatic only in the main application which loads the other bpls. In the other Bpls I've changed TFDSQLiteDriverLink.EngineLinkage to Default and deleted the FireDAC.Phys.SQLiteWrapper.FDEStat (Automatically replaced by FireDAC.Phys.SQLiteWrapper.Stat by the IDE). With this combination I don't get the error messages anymore (FireDAC.Phys.SQLiteWrappe.FDEStat is missing) during the compilation, and keep the encryption functionnality for all the concerned BPLs. This means the FireDAC.Phys.SQLiteWrappe.FDEStat should be declared only once. As this unit makes all the linking, I'm finally not really surprised ! The strange thing is that it works in 32bit but not in 64bit (The current combination should work with both bitnesses) ! Share this post Link to post