Mi rendo conto di essere ampiamente O.T., ma non posso fare a meno di rispondere.
Forse quando hai comprato lo scaffale per la tua biblioteca il mobiliere ti ha imposto il criterio con cui disporre i tuoi libri? Mi obbietterai che tu ti riferivi ad una biblioteca "di altri", ma il paragone non calza comunque. E' il proprietario della biblioteca che deve avere il diritto di scegliere il criterio di catalogazione, non chi vende scaffali. Poi, si può anche decidere liberamente di adeguarsi al criterio consigliato. Ma, tanto per restare nel tuo esempio, non vedo perché nella mia biblioteca ci deve essere un ripiano "musica", uno "video" e addirittura uno "saved games"! Girando per forum di paragoni simili se ne trovano a bizzeffe, come quello che dice che sei libero di riporre le chiavi dell'auto in frigo, sebbene quello non sia il posto giusto. Per ogni situazione si possono trovare infinite similitudini che la sostengono o che la avversano; in ogni caso ti assicuro che la mia biblioteca è ordinatissima.Magari non ti piace come è catalogata una biblioteca, ma questo non ti autorizza a metterci i libri secondo la tua catalogazione, o peggio, buttarli dove ti capita.
Non è sul costo o sullo sforzo richiesto che è incentrata la mia critica.il fatto è che a te come programmatore non costa praticamente niente...
Laddove esiste un amministratore di sistema (perché non esiste dappertutto, come certo sai) sarebbe proprio compito suo stabilire e mettere in atto regole e strumenti che impediscano che altri facciano casino. Può benissimo trattarsi di regole e strumenti in linea con le raccomandazioni del produttore del S.O., ma potrebbero anche divergere in qualche aspetto o essere anche più restrittive.... ma aiuti molto gli amministratori di sistema e gli utenti dai privilegi limitati: l'amministratore così sa che tutte le impostazioni locali stanno da una parte, che tutte le impostazioni in roaming stanno da un'altra, che può impostare severe restrizioni di sicurezza agli utenti senza che il programma ne risenta.
E come la mettiamo con utenti normali che usano la stessa applicazione e devono condividere lo stesso database locale? A me sembrava che la cartella giusta fosse ProgramData, che infatti è la cartella restituita da SHGetSpecialFolderLocation con la costante CSIDL_COMMON_APPDATA, ma come dicevo prima subisce anch'essa la virtualizzazione.Se non sbaglio le impostazioni condivise tra tutti gli utenti non sono scrivibili dagli utenti normali, ma solo dagli amministratori con privilegi elevati.
Comunque, fa sempre piacere confrontare opinioni.![]()