Problème Delphi

Fermé
Kakulukiam Messages postés 31 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 11 octobre 2011 - 11 oct. 2011 à 16:00
 rhproof - 9 nov. 2011 à 11:49
Bonjour,

J'ai déclaré un type dans ma Form principal :

TpPersonnage = record
Nom : String[15];
Classe : String[8];
Niveau : Byte;
ProbTouche : Byte;
Attaque : Byte;
Special : Byte;
PV : Word;
NbrVictoire : Word;
NbrDefaite : Word;
PointsExperience : integer;
AdresseImage : String;
end;

Dans un bouton, je n'ai que cela d'écrit :

procedure TFrmChampionArena.MniNouvPartieClick(Sender: TObject);
var
laPersonnage1 : File of TpPersonnage;
begin
//
end;


Ca ne compile pas.
La ligne (laPersonnage1 : File of TpPersonnage;) est surligné en rouge et le message d'erreur qu'on me donne est :

[DCC Erreur] UTP1MO.pas(74): E2155 Le type 'TpPersonnage' nécessite une finalisation - non autorisé dans le type fichier

D'après les recherches que j'ai fait, ce serait a cause des String. Pourtant, j'ai vus des exemples de fichiers binaires qui utilisait des types contenants des strings et des shortstrings et ca marchait. J'ai essayé de trouvé ce qu'est une finalisation et je ne trouve pas.

Merci de m'aider.

Maxime

6 réponses

Kakulukiam Messages postés 31 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 11 octobre 2011 1
11 oct. 2011 à 17:17
Avec 'File of', on peut faire des enregistrement cripté et on peut lui donner un type comme type d'enregistrement.

Il y a un exemple au milieu de cette page :
http://www.delphibasics.co.uk/Article.asp?Name=Files
1
nicocorico Messages postés 799 Date d'inscription dimanche 19 juin 2011 Statut Membre Dernière intervention 3 juillet 2018 138
11 oct. 2011 à 17:13
Je ne suis pas étonné qu'il y ait une erreur de compilation : je ne connais pas ce mot réservé 'File of' !
Que comptais-tu faire avec cette définition ?
0
nicocorico Messages postés 799 Date d'inscription dimanche 19 juin 2011 Statut Membre Dernière intervention 3 juillet 2018 138
11 oct. 2011 à 17:41
Ok j'y suis, et j'ai appris quelque chose !
Donc maintenant je peux te répondre : c'est sûrement 'AdresseImage : String; ' qui pose problème, car la fonction attend un enregistrement de taille définie et sans pointeur rapporté...
Donc, soit tu peux mettre cette string en shortstring, soit tu dois l'enregistrer à part...
0
Kakulukiam Messages postés 31 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 11 octobre 2011 1
11 oct. 2011 à 17:58
Merci ca marche :D
J'avoue que tu expliques mieux que ce qui est trouvable sur internet. :P
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nicocorico Messages postés 799 Date d'inscription dimanche 19 juin 2011 Statut Membre Dernière intervention 3 juillet 2018 138
11 oct. 2011 à 18:15
Rien ne remplacera l'humain !
0
Bonjour;

FILE OF est une commande pascal abandonné par borland dans les premiers version du delphi

sur ton delphi click sur outils et vas sur module base de donnée .... sur ce dernier tu peut crée des tables '' fichier '' pour y mettre tes enregistrements ... tu peut les crée en par paradox exemple .... bonne continuation
^_^
0