PDA

Visualizza la versione completa : [DELPHI] Permessi lettura/scrittura database Firebird


vicky
04-12-2005, 00:57
Ho inserito il mio applicativo DElphi in un dvd assieme al suo database Fiebird e tutte le dll necessarie per il funzionamento del progetto anche se Pc differenti. Quando però cerco di aprire l'applicativo da Dvd ottengo un messaggio di errore che dice:
"Database Server Error:no permission for read-write access to database DB\db1.fdb"
Ho provato a modificare i permessi (che erano di sola lettura) dalle proprietà del database ma non è possibile perché ottengo errore sull'assegnazione degli attributi.
:cry:
Cosa posso fare?
(scusatemi se continuo a fare domande sicuramente banali...)

Eyescream
04-12-2005, 03:17
mm su un dvd non penso tu possa togliere il flag di sola lettura .. o sbaglio ?

vicky
04-12-2005, 09:42
Non capisco. Ieri sera non faceva che darmi errore perché mancavano i permessi, oggi invece parla di path per aprire il database che non è corretto. Alora ho provato due alternativi path che ho inserito nelle proprietà della connessione al database:
1) DB\DB1.fdb (perché il database è messo in una sottocartella DB);
2) ExtractFilePath(Application.Exename) + 'DB\DB1.fdb';
Con ambedue le soluzioni il problema è il medesimo:
"Exception EOleException in module ProvaGuidata.exe at 000DB3E1. dbExpress error:[0x0015]:Connection Failed Database Server Error I/O Error for file "DB\DB1.fdb Error while trying to open file Impossibile trovare il percorso specificato"
Tutto questo avviene solo dopo che ho eseguito la masterizzazione su dvd (dove c'è anche un file per l'autorun del dvd) perché se io la cartella con la mia applicazione la metto su di un altro computer e apro la mia applicazione cliccando sul file exe non c'è alcun problema di path. Spero di aver dato sufficienti elementi per valutare correttamente il problema. Grazie!

AlbertoPicca
04-12-2005, 11:26
Originariamente inviato da vicky
Quando però cerco di aprire l'applicativo da Dvd ottengo un messaggio di errore che dice:
"Database Server Error:no permission for read-write access to database DB\db1.fdb"
Toglimi una curiosità: ma cerchi di accedere al database Firebird direttamente dal DVD?

vicky
04-12-2005, 11:34
Il mio dvd contiene un'applicazione che si basa su un database (Firebird)che contiene i percorsi che portano ad aprire immagini che ho inserito in una cartella apposita all'interno dello stesso dvd. Il dvd, comunque è di sola consultazione: i dati in esso contenuti non vanno in alcun modo modificati.
Cosa ne pensi?

AlbertoPicca
04-12-2005, 11:41
Ogni qual volta si accede al database, Firebird si occupa di scrivere alcune informazioni riservate nel database; é per questo motivo che ti appare l'errore sopra citato.

All'esecuzione del programma dovresti fare una copia del database sul computer locale, magari nella cartella temporanea di Windows, in modo da poter gestire più facilmente l'archivio dati.

E alla chiusura dell'applicativo cancelli il database in modo da non lasciare alcuna traccia.

:ciauz:

vicky
04-12-2005, 11:43
Il tuo discorso vale anche se uso la versione Embedded di Firebird?

AlbertoPicca
04-12-2005, 11:48
Certo, il motore Firebird non cambia in base alla versione presente nel computer.

vicky
04-12-2005, 11:52
OK, allora questo potrebbe essere uno dei problemi. Stranamente, però, oggi non mi dà più il messaggio di errore dovuto ai permessi di scrittura sul database, mentre si riferisce al path non corretto per raggiungere il db: potrebbe essere correlato al problema di cui sopra oppure è una cosa diversa? E se volessi risolvere prima il problema del path secondo te qual'è il percorso corretto da inserire nei parametri di connessione al db? :)

AlbertoPicca
04-12-2005, 12:05
Hai verificato, magari mostrando in una finestra, qual è il percorso effettivo che viene indicato al database?

Loading