Missing DLL exception using SQlCipher in .NetCore application

We have a .NetCore application which uses SqlCipher for Sqlite encryption.
The appication is installed and runs as a service on the client machine.
We are running into issues using SqlCipher on some of our installations
(more notably Windows 10 VM on Hyper-V - using Quick Install → Windows 10 MSIX Package)

When attempting to start the service(application), we are seeing the following exceptions:

Exception Info:
The process was terminated due to an unhandled exception.
System.DllNotFoundException. Dll was not found
at SqlitePCL.Sqlite3Provider_sqlcipher.SqlitePCK.ISQlite3Provider.sqlit3_libversion_number()

Once again, this issue does not happen on all our test installations, it mostly occurs on the
Hyper-V VM noted above.

We were able to get around the runtime exception by including the following package in our build:

Inclusion of this package causes issues with encryption resulting in the Sqlite DB not getting encrypted.

Here are the NuGet packages we are including:
PackageReference Include=“Microsoft.Data.Sqlite.Core” Version=“7.0.9”
PackageReference Include=“SQLitePCLRaw.bundle_zetetic” Version=“2.1.5”
PackageReference Include=“zetetic-sqlcipher-windows-fips” Version=“4.5.3”

I’ve attached a screenshot highlighting the error we see in the event viewer:

Can you please help us investigate this further as to why it is only failing in some environments?


Hello @JuanBucz - thank you for getting in touch. We have received your private support request via email and have communicated back to you there via private channels since this is an Enterprise support request.