Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   problema fichero con tipo. (https://www.clubdelphi.com/foros/showthread.php?t=63251)

Cecilio 05-02-2009 18:00:24

problema fichero con tipo.
 
Hola.
En un nuevo programa tengo esto:
Código Delphi [-]
type    TConf = record         archivo: String;         narchivo: integer;         ale_pase: boolean;         ch1:boolean;         ch2:boolean;    end;     TForm1 = class(TForm)     Panel1: TPanel;     Image1: TImage; ...  private     { Private declarations }       Cf: Tconf; // Notese que hago referencia al typo creado.

Si en un procedimiento hago:

Código Delphi [-]
Procedure cf_save(cf: Tconf); var   f: File of Tconf;

Da un error la linea "f: file of.."
El mensaje es: [Error] Upic.pas(50): Type 'TConf' needs finalization - not allowed in file type

¿ Sabeis qué pasa ?

Khronos 05-02-2009 19:12:23

Hola, te recomiendo que leas la guia de estílo.

Si vas a operar con archivos no puedes utilizar una variable string porque su tamaño es muy grande y no está delimitado, por eso es mejor establecer un packed record y delimitar el tamaño del string a 255 caracteres.

Código Delphi [-]
 
type 
TConf = packed record 
archivo: String[255]; 
narchivo: integer; 
ale_pase: boolean; 
ch1:boolean; 
ch2:boolean; 
end;
FConf = File of TConf;
 
function cf_save(cf: Tconf): FConf;
 
//o bien
 
procedure cf_save(cf: TConf; out Conf: FConf);

Saludos.

Cecilio 05-02-2009 21:03:29

Muchas gracias por la solución.

No me habia dado cuenta del string. Por cierto que es o en qué se diferencia
el packed record ?

La hoja de estilos te refieres al foro ? miraré que he puesto mal.


La franja horaria es GMT +2. Ahora son las 06:52:27.

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