Невозможно записать в базу данных - PullRequest
0 голосов
/ 03 июня 2011

Привет, я разработал приложение, которое использует базу данных SQLlite, но после создания проекта установки и его установки я получаю исключения при записи в него

System.Data.SQLite.SQLiteException: Attempt to write a read-only database

в чем проблема?

это работаетотлично при разработке в visual studio

РЕДАКТИРОВАТЬ Я добавил пользователя Everyone и назначил ему все права на папку, в которой находится база данных. Эта папка была создана установщиком, и теперь она работает, но чтоя должен сделать, чтобы избежать этого .......... потому что, где это приложение будет развернуто, они не очень компьютерные, чтобы сделать это вручную

Ответы [ 3 ]

2 голосов
/ 03 июня 2011

В форуме ссылок основной причиной является проблема с правами доступа.

http://sqlite.phxsoftware.com/forums/p/864/7498.aspx

Обновление

Почему бы не зашифровать базу данных sqlite

Шифрование базы данных SQLite в C #

2 голосов
1 голос
/ 05 октября 2011

База данных не должна находиться в той же папке, что и exe-файл.Расположение exe-файлов, то есть программных файлов, защищено по соображениям безопасности, и изменение разрешений не является подходящим способом.

Вы должны поместить данные, в которые необходимо записать, в область данных пользователя, илиобласть данных для всех пользователей.

Вы можете найти эту папку, используя SHGetSpecialFolderPath

...