Gdzie zapisac baze danych sqlite

Biały Lew
2016-05-12 19:10
Biały Lew
0

Witam

Mam takie oto pytanie: gdzie moge zapisac plik bazy danych sqlite tak aby program ktory dziala na kazdym koncie uzytkownika mogl zapisywac i odczytywac ta baze danych. Obecnie baza danych jest utworzona w:

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
(C:\users\nazwa_uzytkownika\AppData\Roaming)

Tutaj jest oczywiscie problem bo kazdy uzytkownik ma swoja kopie bazy danych. Czy jest mozliwosc utworzenia jednej kopii bazy danych dla wszystkich uzytkownikow i gdzie moge ta baze danych zapisac?

Z gory dziekuje za pomoc

Pozostało 580 znaków

2016-05-12 19:26

Rejestracja: 10 lat temu

Ostatnio: 3 lata temu

0

C:/Users/All users

Pozostało 580 znaków

Biały Lew
2016-05-12 19:37
Biały Lew
0

Nie mam takiej lokalizacji "C:/Users/All users"

Kazdy uzytkownik ma swoj folder i jest tez folder "Default" i "Public".
Uzywam windows 7

Czy mam utworzyc folder "All users" ?

Wczesniej probowalem zapisac baze danych do C:\programdata ale standardowy uzytkownik nie ma prawa dostepu do tego folderu

Pozostało 580 znaków

2016-05-12 19:48

Rejestracja: 10 lat temu

Ostatnio: 3 lata temu

0

Właśnie widzę, że All Users jest zmapowane do c:\ProgramData\ wiec teoretycznie tam powinieneś to wrzucić.

Pozostało 580 znaków

2016-05-12 20:41

Rejestracja: 15 lat temu

Ostatnio: 5 minut temu

4

A co jeśli ktoś ma folder z użytkownikami na dysku D? Podawanie zahardcodowanych ścieżek jest bez sensu - w zależności od języka będziesz miał swój mechanizm na znalezienie odpowiedniego folderu przykład https://msdn.microsoft.com/en[...].specialfolder(v=vs.110).aspx

Pozostało 580 znaków

Biały Lew
2016-05-13 00:50
Biały Lew
0

Jesli zapisze baze danych do:

Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) & "\pc_child_timer_db.db3"
(C:\ProgramData\pc_child_timer_db.db3)

albo do:

My.Computer.FileSystem.SpecialDirectories.AllUsersApplicationData & "\pc_child_timer_db.db3"
(C:\ProgramData\PC_Child_Timer\PC_Child_Timer\1.0.0.0\pc_child_timer_db.db3)

wyskakuje blad "attempt to write a readonly database" jesli uzywam standardowego konta, konto admina jest ok

jest to problem zwiazany z windows permissions.
Czy mam zmienic ustawienia dotyczace uprawnien np dla folderu aplikacji? (C:\ProgramData\PC_Child_Timer\PC_Child_Timer\1.0.0.0\pc_child_timer_db.db3)

Pozostało 580 znaków

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0