Ver Mensaje Individual
  #12  
Antiguo 09-07-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 27
Delphius Va camino a la fama
Cita:
Empezado por FelipeDiaz
3. Esta pregunta es para Delphius, (obtener datos por default).
Cuando dices "ante la perdida de un archivo ini, se crea automáticamente" o "información que facilmente puede ser "recuperable"". No se como interpretarlo, me asaltan inquietudes...
¿Quien se encarga de crear ... o de que forma se crea automaticamente el dato perdido?

Es decir, la aplicacion que desarrolle...dependera de los datos que contiene los archivos .ini para que pueda correr correctamente. es como el indice que el usuario utilizara para trabajar un grupo de informacion (la BD seleccionada).

Si se pierde un dato.. ya sea que alguien abrio el archivo con notepad, y lo borró. o borraron el archivo completo.

Para formular bien la pregunta.... lo haré con un ejemplo (disculpenme si parece algo absurdo)....
Ejmp. Entro al explorador de Windows y busco cuaqluier arcihivo .ini, supongamos que lo borro... le doy eliminar. Luego reinicio el PC. y trato de buscar el archivo..... ¿El archivo aparecerá nuevamente?
Una ventaja que tiene esta clase (TiniFile) es que en forma automática crea dicho archivo en caso de que no exista. Por tanto, cuando se ejecute o se invoque la orden Create() lo que hará es buscar dicho archivo, si falla. Lo crea.
Inicialmente estará vacio, pero es aquí donde entra lo de parametros por defecto.

Cita:
Empezado por FelipeDiaz
Me da algo de pena seguir preguntando pero cuando dices "es posible restaurar aquellos valores valiendose del tercer parámetro, seteando un valor por defecto"
Que es ese tercer parametro y que es Setear?
Como abrás notado, en los eventos ReadXXX y WriteXXX se pasan tres parámetros: El primero la sección, en el segundo la variable a la cual asociar el valor y en el tercero el valor.
El tercer parámetro sirve para el caso eventual de que no exista la variable o la sección. Este parámetro actua como un valor por defecto. Por ejemplo tu haces:

Dato := ini.ReadInteger('UNA SECCION','Una variable',45);

En Dato se colocará el valor asociado a "Una variable". En caso de que la lectura falle, quedará registrado en Dato el valor 45. Y una vez realizado esto, en forma automática (estamos hablando del caso de fallo) la clase creará ya sea la sección y/o la variable con dicho valor por defecto.


Si se emplean los write y read en forma apropiada, se puede conseguir dejar al archivo ini en un estado de "por defecto". Que si bien no es la condición que ha establecido el usuario, se consigue volver al estado inicial de cuando se creo el archivo por primera vez. A esto me refiero cuando dije "facilmente recuperable".

Lo obvio es que el valor por defecto a asignar corresponda a un valor permitido y que pueda ser empleado en forma posterior. Varios sistemas emplean este mecanismo.... inclusive incorporan un botón que dice "Predeterminado" o "Default" que lo que hace es cambiar el valor de algunas o todas la variables por el valor default con el que el sistema inicialmente venía.

Espero que se entienda la idea.

Si quieres saber mas sobre ini, busca en los foros porque el tema se ha tratado en reiteradas oportunidades. Te sugiero también que revises la ayuda que viene con Delphi.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita