PDA

Ver la Versión Completa : Duda sobre usar .ini, xml o registro de windows para guardar datos de configuración


webmasterplc
27-10-2016, 13:47:00
Buenas tengo una duda de cual es la manera mas optima de guardar datos de configuración local de una app, en este caso quiero es guardar los datos de:
ip del servidor
base de datos
usuario
puerto
para la conexión al servidor
no se si usar .ini para lo cual tengo este código

function listarDatosINI (fichero : string) : TStringList;
var
lista : TStringList;
ltFichero : TStringList;
i : integer;
linea : string;
nombreClave : string;
begin
lista := TStringList.Create;
if FileExists(fichero) then
begin
ltFichero := TStringList.Create;
ltFichero.LoadFromFile(fichero);
for i := 0 to ltFichero.Count - 1 do
begin
linea := trim(ltFichero.Strings[i]);
if pos('[', linea) = 1 then
begin
nombreClave := copy(linea, pos('[', linea) + 1, pos(']', linea) - 2);
lista.Add(nombreClave);
end;
end;
end;
result := lista;
end;

o usar xml o el registro de windows

Ñuño Martínez
27-10-2016, 14:10:12
Depende de diversos factores, pero yo recomendaría usar INI porque puede editarse sin necesitar un programa externo, al contrario que el registro, y porque el formato es mucho más simple que XML.

webmasterplc
27-10-2016, 14:17:07
en realidad quiero que sea editado solo desde la app porque voy a cifrar cierta informacion

ecfisa
27-10-2016, 15:25:27
Hola webmasterplc.

Los archivos INI son muy simples de implementar, se pueden editar externamente a la aplicación y son portables a diferentes sistemas operativos. Mientras que el uso del registro de Windows es muy seguro, su mantenimiento es responsabilidad de windows; permite el acceso simultáneo de múltiples procesos y sus actualizaciones son atómicas.

... quiero que sea editado solo desde la app...
Esto último no es viable con ninguna de las dos opciones anteriores (la primera lo permite con cualquier editor y el segundo con regedit), sin embargo, si podes cifrar información. Particularmente y dado lo que comentas optaría por el registro de Windows.

Saludos :)

Neftali [Germán.Estévez]
27-10-2016, 15:43:08
no se si usar .ini o usar xml o el registro de windows

Personalmente para temas generales prefiero INI. Por su sencillez, comodidad y accesibilidad.
Los XML no me gustan nada y sólo los utilizo cuando es obligatorio y no tengo otro remedio.
El registro a priori te puede dar más problemas de permisos que un INI, y es menos manejable.

Salvo que exista alguna necesidad especial, recomiendo INI.

TiammatMX
27-10-2016, 16:43:06
en realidad quiero que sea editado solo desde la app porque voy a cifrar cierta informacion

Pues si vas a cifrar información (que no lo recomiendo), tu opción lógica es usar el Registry. Además que no es fácilmente accesible, tiene tipos de datos que son compatibles con ALGUNOS métodos de encripción...

AgustinOrtu
27-10-2016, 17:10:04
Encapsula en objetos e implementa los distintos formatos. Podés usar también JSON o una base de datos sqlite