Traduire une chaine "Nom d'un type enuméré" en cet énuméré.
cs_Jean_Jean
Messages postés615Date d'inscriptiondimanche 13 août 2006StatutMembreDernière intervention13 décembre 2018
-
4 juil. 2012 à 14:52
cs_Jean_Jean
Messages postés615Date d'inscriptiondimanche 13 août 2006StatutMembreDernière intervention13 décembre 2018
-
4 juil. 2012 à 19:51
Bonjour,
Il y a longtemps que je ne me suis pas mis à l'assembleur et je travaille sur les tutoriaux existants.
Cependant lorsque j'ai voulu passer à la pratique, je me suis heurté au même problème que sous Delphi.
En effet le Type Enuméré n'est pas identifié comme type.
Exemple code delphi
Type
TJS =(Lundi,Mardi,Mercredi,Jeudi,Vendredi,Samedi,Dimanche);
Var
JS : TJS;
Type
PJS = ^JS;
La compilation me donne l'erreur suivante: "JS n'est pas un identificateur de type"
Je suis donc obligé de passer par les fonctions de la RTTI (TypInfo) pour accéder aux éléments de la liste...
je sais récupérer ces infos en transmettant manuellement le nom du type sous forme de chaine. Par exemple :
Mais je souhaiterai me passer pour différentes raisons de TypInfo. Par exemple en transmettant le nom du Type sous forme de chaine et accéder ensuite à l'adresse du type TS et à ses éléments
Ma question est :
1. Comment transformer la chaine du nom "TJS" en nom du Type TJS même s'il ne s'agit pas d'un type explicite en Delphi ou même si l'étiquette n'est pas explicite en assembleur; je me contenterai de l'adresse de TJS (son 1er élément sans doute).
1. [$00452BD0]
est-ce une adresse absolue?
2. J'ai supposé que cette adresse était celle de la valeur recherchée.
Je suis don aller voir à cette adresse. Voici ce que j'y ai trouvé:
JS :
00452BD0 0002 Add[edx],al
No comprendo!
Can you light me?