Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   TIniFile no me funciona y no tiene sentido (https://www.clubdelphi.com/foros/showthread.php?t=18209)

rfernandez 04-02-2005 19:56:59

TIniFile no me funciona y no tiene sentido
 
Tengo el siguiente codigo

Regi := TIniFile.Create('Genpres.ini');
ia00.Value := Regi.ReadFloat(Seccio,'IA00',16);
Regi.Free;

Siendo Regi del Tipo TInifile.

Pues bueno, fisicamente no me crea el archivo Genpres.ini, no lo entiendo.

Utilizo delphi 6 con windows xp home.

Muchas gracias.

Coco 04-02-2005 20:15:32

Prueba con ingresar el path completo del archivo.

Puedes utilizar ParamStr(0) para obtener el path de la aplicacion y asi concatenarle el archivo.
El problema que se puede presentar utilizando el nombre de archivo como lo haces alli es que si luego en la aplicacion cambias el directorio actual cuando intentes escribir el archivo lo generará en otro directorio.

Saludos.

Nota: Ahora se me ocurre que puede ser que te lo este generando a tu archivo ini pero en otro path, busca el archivo en todo el disco para comprobarlo. Si es asi, es por lo que te explique anteriormente.

jafl1965 04-02-2005 20:15:42

Hasta donde yo se el archivo .INI ya debe existir para poder leer su contenido posteriormente y asignar el valor a una variable como bien haces en tu código.

Coco 04-02-2005 20:21:36

El create( Archivo) de la clase TIniFile si no existe el archivo pasado por parametro lo crea.

Saludos.

rfernandez 07-02-2005 20:19:41

Despues de hacer varias pruebas he llegado a la conclusión que ni las secciones ni las keys del .ini se crean hasta que haces un Write (Writefloat, writestring...).
Supongo que como el Read tiene el valor por defecto pasan de crearlo.
Bueno, gracias por todo.

bytecero 08-02-2005 09:53:46

TIniFile no me funciona y no tiene sentido
 
//Tengo el siguiente codigo
//Regi := TIniFile.Create('Genpres.ini');
//ia00.Value := Regi.ReadFloat(Seccio,'IA00',16);
//Regi.Free;
//Siendo Regi del Tipo TInifile.
//Pues bueno, fisicamente no me crea el archivo Genpres.ini, no lo entiendo.
//Utilizo delphi 6 con windows xp home.
//Muchas gracias.



antes que nada tenes que agregar el inifiles dentro del uses:

Uses
inifiles;


luego proba con este codigo, yo lo probe en delphi 7 sin problemas:

procedure TForm1.Button1Click(Sender: TObject);
var
regi : TINIFile;
ia00:real;
begin
ia00:= 3.1415;
regi := TINIFile.Create(ExtractFilePath(Application.EXEName) + 'Genpres.ini');
regi.Writefloat('General', 'floatdata', ia00 );
regi.Free;
end;

el problema creo que esta en que no pusiste:
(ExtractFilePath(Application.EXEName) + 'Genpres.ini'); despues del
regi := TINIFile.Create

recorda que esto genera el archivo .ini dentro de la carpeta en la que estas guardando el proyecto, espero que te sirva

saludos



La franja horaria es GMT +2. Ahora son las 03:41:00.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi