Как удалить ошибку "Не могу найти PInvoke DLL SQLite.interop.dll" - PullRequest
3 голосов
/ 20 сентября 2010

Я занимаюсь разработкой приложения для Windows Mobile.Я использую базу данных SQLlite.Я использую следующий код для подключения к этой базе данных следующим образом

                SQLiteConnection cn = new SQLiteConnection();
                SQLiteDataReader SQLiteDR;
                cn.ConnectionString = @"Data Source=F:\CompNetDB.db3";
                cn.Open();
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.CommandText = "select * from CustomerInfo";
                cmd.CommandType = CommandType.Text;
                cmd.Connection = cn;
                SQLiteDR = cmd.ExecuteReader();

. В вышеупомянутом случае я получаю сообщение об ошибке «Не удается найти PInvike DLL SQLite.interop.dll».Я добавил DLL System.Data.SQLLite из папки \ SQLite.NET \ bin \ compactframework в эту папку.Это папка, которая устанавливается по умолчанию при установке SQLite.В этой же папке находится один файл DLL с именем SQLlite.Interop.66.DLL.Когда я пытаюсь добавить ссылку на эту DLL, это дает ошибку, что DLL не может быть добавлена.Являются ли два dll SQLlite.Interop.dll & System.Interop.066.dll одинаковыми?В приведенном выше коде, как решить ошибку "Не могу найти PInvoke.SQLite.Interop.dll" Пожалуйста, вы можете сказать, есть ли ошибка в моем коде или я что-то упустил в моем приложении?

Ответы [ 2 ]

6 голосов
/ 20 сентября 2010

DLL взаимодействия - это C DLL, которая имеет точки входа для вызовов P / Invoke, сделанных в System.Data.SQLIte.Вы не можете добавить ссылку на собственную DLL, вы должны скопировать ее на устройство отдельно.Простой способ сделать это - добавить его в свой проект, установить для действия сборки значение «Содержимое» и установить для параметра «Копировать в выходной каталог» значение «Копировать, если новее».После отладки Studio затем отправит этот файл на устройство для вас.

1 голос
/ 16 ноября 2010

Удалить .xxx из SQLite.Interop.xxx.DLL.Скопируйте SQLlite.Interop.DLL и System.Data.SQLIte как ответ из ctacke.

...