XML e registro

5

Quale metodo è considerato la migliore procedura per impostare lo spazio di archiviazione per le applicazioni: XML o Registro? Quali sono i vantaggi / i lati negativi dell'utilizzo di uno di questi?

    
posta Kenneth 10.03.2011 - 18:27
fonte

4 risposte

4

Il registro è la soluzione di Microsoft per archiviare le informazioni dell'applicazione relative a un utente. I vantaggi di questo includono:

  • Essere in grado di conservare le impostazioni dell'applicazione per ciascun utente del computer.
  • Avere già un'API disponibile per l'utilizzo di questa funzione.

Tuttavia, gli svantaggi includono:

  • Dipende dalla piattaforma.
  • Limitato a quantità di informazioni per un singolo blocco di dati.
  • Perdita della portabilità (si perdono le impostazioni quando si installa su un'altra macchina)

Personalmente preferisco usare XML se non solo per il fatto che ti permette di copiare l'intera applicazione su un altro computer e farlo funzionare bene con le stesse impostazioni. Inoltre, se scrivi la tua applicazione abbastanza flessibile, puoi scrivere interi progetti su file XML, qualcosa che non oserei provare con un registro.

Inizialmente è utile usare il registro, ma a mio avviso è molto meglio usare i file XML.

    
risposta data 10.03.2011 - 18:58
fonte
3

Per informazioni che potrebbero essere necessarie per altri programmi, come la posizione e la versione corrente di un eseguibile, memorizzarlo nel registro.

Per informazioni necessarie solo per l'applicazione, memorizzarla in un file nella directory AppData dell'utente. Usa XML o qualsiasi cosa tu ritenga adatto, a seconda della struttura dei dati.

Ciò consente al registro di svolgere il proprio lavoro - funziona come un registro centrale delle applicazioni - senza ingombrare.

Inoltre renderà la tua vita di test un po 'più semplice, dato che puoi cancellare il file AppData e ripristinare l'app ai valori predefiniti.

    
risposta data 10.03.2011 - 20:23
fonte
1

Uno dei principali svantaggi del registro in Windows Vista e in avanti è che puoi archiviare solo elementi in HKEY_CURRENT_USER a meno che tu non stia eseguendo un numero elevato.

Questo significa che se il tuo programma non elevato memorizza roba in HKCU e l'utente installa una nuova versione del programma, il programma di installazione probabilmente funzionerà a livelli elevati, il che potrebbe significare che si esegue con un altro account utente.

Ciò significa che non si può fare affidamento sulla possibilità di leggere le informazioni sul programma dal Registro di sistema dal programma di installazione, poiché l'installer è in esecuzione con un altro utente, che ha cose diverse nel loro registro. : (

    
risposta data 10.03.2011 - 22:47
fonte
0

In Windows, sento che le impostazioni del programma appartengono al registro. Sebbene i file xml possano essere più facili da copiare a mano, le procedure di backup e ripristino includono normalmente il registro e supportano anche configurazioni multiutente, in cui le directory di installazione del programma potrebbero non essere conservate (e non lo vorrei, perché i percorsi potrebbero non essere uguali e di solito gli installatori si occupano anche di associare i file e creare scorciatoie, quindi su Windows preferisco principalmente gli installatori sulla copia delle directory. Tuttavia, una funzione (dalla GUI) per esportare e importare le impostazioni può davvero aiutare la migrazione.

Le impostazioni del progetto sono forse meglio conservate nel documento o nella directory del progetto. Ciò consente il controllo della versione e la condivisione tra gli utenti.

    
risposta data 10.03.2011 - 20:12
fonte

Leggi altre domande sui tag