Newsgroup: it.comp.os.win.xp
Titolo: Multiutenza, programma con database condiviso fra utenti

Alcuni programmi creano un proprio database in una cartella
dell'utente in Documents and Settings/[User]/Documenti oppure in
Documents and Settings/[User]/Dati Applicazioni .
In certi casi, perň, si desidera condividere lo stesso database fra
piů utenti.
Parlando in generale, qual č la procedura piů corretta per far ciň?
In un caso, ho risolto dando all'utente B autorizzazioni complete
alla cartella dell'utente A dove si trova il database del programma,
in modo che anche B possa usare lo stesso archivio.
Quale sarebbe il sistema ideale?

 Parlando in generale, qual è la procedura più corretta per far ciò?
Parlando in generale, la procedura più corretta è usare un dbms che
gestisca la multiutenza.
Parlando nel particolare, anche. ;-)
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 Quale sarebbe il sistema ideale?
Il sistema ideale sarebbe poter creare un hard link sul filesystem tra
il file dell'utente A e quello dell'utente B, ma i filesystem di Windows
non permettono una operazione simile. :)
Se il programma permette di specificare la posizione di detti file, la
soluzione migliore (o meglio, più pulita) IMHO potrebbe essere
posizionare questi file al di fuori delle varie zone private, e poi dare
permessi opportuni agli utenti.
In caso ciò non sia possibile, e gli utenti non devono accedere
*contemporaneamente* allo stesso file, si può operare con delle copie
del file legandole agli eventi di login/logout dell'utente (tipo login:
prendi il file dalla posizione comune e mettilo in quella privata,
logout sovrascrivi quello comune con quello privato in modo che il
prossimo utente possa avere le modifiche).
Naturalmente questo solo ed esclusivamente se l'accesso a tali file non
è contemporaneo.
Alternativa finale, cercare programmi che permettano la prima soluzione
(quella di poter modificare dove andare a scrivere i file) o che
prevedano espressamente opzioni di condivisione dati con altri utenti e
preferirli a programmi analoghi che non fanno ciò.
Alternativa, mi rendo conto, non sempre percorribile.
PSK

 Quale sarebbe il sistema ideale?
Se parli di vera multiutenza nessuno. Se il programma non è scritto per
supportare più utenti, magari funziona pure, salvo poi perdere roba o
avere errori quando due utenti lavorano contemporaneamente sulle
tabelle.
Se parli in tempi diversi, dipende da quale database utilizza, e
comunque è necessario che da programma possa decidere dove prendere il
DB, la condivisione dell'utente teoricamente potrebbe pure non servire,
anzi a volte, nei DB in rete, nessun utente può accedere, se non il
motore del DB stesso.
-- 
Freccia@Bulldozer63 :D

 se non il motore del DB stesso.
Non l'avevo specificato, sorry, ma mi riferisco a utenze locali sulla
stessa macchina, non in rete e non contemporanee.

 dare permessi opportuni agli utenti.
Quindi, in pratica, cercare di traslocare il tutto nelle cartelle di
"All Users"?

 non permettono una operazione simile. :)
A parte il fatto che non è vero, che c'e' che non va con "all users" ?
ciao, f.

 stessa macchina, non in rete e non contemporanee.
Allora, sposta il database (che non dici che cosa sia) fuori da tutta
la directory document & setting ... e assegna a quella i diritti del
caso.


 Allora, sposta il database (che non dici che cosa sia)
Nel caso specifico, il database di DVD Profiler (catalogatore DVD),
ma la stessa questione mi interessa in generale anche per altri
software.

 
Eh, purtroppo la risposta è quella classica che fa inca%%are  sempre
tutti:
Dipende. ;-)
Dipende dal software.
Se il programma usa un "vero" gestore database (DBMS) potrebbero esserci
dei problemi ulteriori, come dicevo prima, il login dell'utente potrebbe
essere gestito direttamente dal DB.
Se sono programmi che usano una generica forma di archiviazione su file,
il consiglio e' il solito: metti i dati in una directory accessibile da
tutti gli utenti, io lo metterei, come dicevo, su una dir apposita
c:\dati\applicativo_X
c:\dati\applicativo_Y
etcetc
Così, oltre a dar l'accesso a tutti quelli che vuoi, ti faciliti anche i
passi necessari per il backup: copi tutta c:\dati e sei a posto.


 ciao, f.
PSK


Se possibile, o anche un'altra directory del disco.
PSK

 c:\dati\applicativo_Y
Ok, farň cosě. L'unico problema č che in ogni caso continua a cercare
anche la cartella dell'utente Win.

 di Windows non permettono una operazione simile. :)
???
Qui dice di sě...
http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

 Perché dici che non è vero?
Perchè è un fatto.
Non è vero che "i filesystem di Windows non permettono una operazione 
simile."
Gli hardlinks, intendo. NTFS li permette eccome. Ad esempio Windows 2000 
server ne crea uno di default per la cartella sysvol quando fa da DC.
Che non siano documentati nè abbiano fornito un comando per crearli è un 
altro paio di maniche.
ciao, f.

 Non parlo degli shortcut di Windows.
Ma questo programma
http://www.rekenwonder.com/linkmagic.htm
non fa proprio ciò che dici non essere possibile? (e ce ne sono altri)
Oppure non ho capito.

 anche la cartella dell'utente Win.
Dove cercherà le personalizzazioni di ogni utente, e' abbastanza
normale, forse usa un "applicazione.ini" per alcune cosette.
Anzi, reputati fortunato.
Io ho avuto grossi kasinen con un'applicativo che invece voleva
mettere i settaggi personalizzati su una unica directory, e a me
servivano invece settaggi diversi per ogni utente.


 servivano invece settaggi diversi per ogni utente.
Normalmente è anche giusto, ma in alcuni casi si preferisce
condividere...
 anche perché all'interno del programma si possono comunque creare
utenti multipli per alcune funzioni, per esempio per marcare i film
visti/non visti da ciascuno.

 Oppure non ho capito.
Hai capito benissimo.
NTFS implementa gli hardlinks, infatti.
Microsoft non li documenta nè fornisce un tool qualsiasi per crearli e 
gestirli, ma NTFS li implementa. Con tools di terze parti risolvi.
ciao, f.

 di Windows non permettono una operazione simile. :)
L'ho appena fatto :)

 altri)
L'ho provato. Per la precisione, Junction Link Magic permette di
creare "junction", cioè link tra un folder e l'altro, mentre con le
DLL di LinkShellExtension è anche possibile creare hard link tra file
e altre cosine. :)
http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html