@SMARTi

Ошибка отсутствия dll при использовании sqlite-net в C#, как исправить?

Установил с помощью менеджера пакетов NuGet System.Data.SQLite и sqlite-net, но при создании подключения с помощью sqlite-net:
SQLiteConnection conn = new SQLiteConnection("dbname.db", false);

Возникает исключение в SQLite.cs:
An unhandled exception of type 'System.DllNotFoundException' occurred in SQLiteTest.exe

Additional information: Не удается загрузить DLL "sqlite3": Не найден указанный модуль. (Исключение из HRESULT: 0x8007007E)
dll sqlite3.dll добавлял в проект, пробовал разные разрядности, ничего не меняется. В чем может быть причина? В какой стороне искать?

Не до конца понял как получилось, но теперь возникает новое исключение:
Не удается загрузить DLL \"sqlite3\": Эта операция допустима только в контексте контейнера приложения. (Исключение из HRESULT: 0x8007109A)
  • Вопрос задан
  • 5291 просмотр
Решения вопроса 1
Убедитесь, что установили этот https://www.nuget.org/packages/System.Data.SQLite/ или этот https://www.nuget.org/packages/System.Data.SQLite.Core/ пакет. sqlite-net вам ни к чему, если эти уже установлены, попробуйте его удалить, возможно он приводит к конфликту. Правильно установленный пакет System.Data.SQLite должен быть самодостаточен в плане сборки (должен копировать нужные файлы сам).
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@vilgeforce
Раздолбай и программист
"добавлял в проект" - боюсь, EXE о проекте знает ровным счетом ничего. Попробуйте соответствующую DLL положить в каталог откуда EXE запускается.
Ответ написан
Neuroware
@Neuroware
Программист в свободное от работы время
проверьте чтобы правильно была указана рабочая директория, вероятно приложение "смотрит" не в ту папку, в которой лежит dll
Ответ написан
devspec
@devspec
Помогло? Отметь решением
Возможно, проблема в отсутствии на компьютере Visual C++ Redistributable нужной версии (зависит от версии sqlite)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы