[UDF] Structure Parser 1.2

Partagez des fonctions et des UDF AutoIt.
Règles du forum
.
Répondre
Sea
Niveau 6
Niveau 6
Messages : 219
Enregistré le : ven. 22 juin 2012 18:51
Localisation : France
Status : Hors ligne

[UDF] Structure Parser 1.2

#1

Message par Sea »

Hello tout le monde. Travaillant pas mal sur les structures en ce moment je suis en train de faire un petit parser de structure afin de pouvoir simplement faire des test.

Cet UDF est donc voué à être modifié et amélioré.

Pour le moment l'udf est capable de :
  • Lire plusieurs structures dans un fichier
  • Lire un fichier avec une structure donnée
  • Récupération de structure par leur nom ou leur GUID,la détection ce fais automatiquement si il s'agit d'un GUID ou d'un nom
  • Création de notre propre type de data
Ce qui est à venir.
  • Ecrire un fichier avec une structure

L'UDF
► Afficher le texte
Et un exemple d'utilisation

Code : Tout sélectionner

#include <Structure.au3> ;Voir UDF plus haut

$sFile = 'C:\DataFileToBeRead.data'
$test = readStruct($sFile,getStruct('Structure.txt',"MyName"))
_ArrayDisplay($test)

$test = readStruct($sFile,getStruct('Structure.txt',"C817F7B0-E4C7-40FB-97B3-2B97CC000521"))
_ArrayDisplay($test)

$test = readStruct($sFile,getStruct('Structure.txt',"test"))
_ArrayDisplay($test)
 
Exemple de structure à mettre dans un fichier
Attention une structure dois être définis comme ceci

Code : Tout sélectionner

struct Nom 
{GUID}
{
DataType1;
DataType2;
}
Les espaces entre struct, le nom de la structure sont obligatoires.Les retour à la ligne doivent être respecté.
Chaque datas dois être séparé d'un point virgule.[/b]
[/color]

Code : Tout sélectionner

struct MyName
{C817F7B0-E4E7-40FB-97B3-2B97CC000521}
{
char[4];
char[4];
int;
int;
int;
char[108];
}

struct coucou
{C817F7B0-E4C7-40FB-97B3-2B97CC000521}
{
char[10];
char[4];
int;
int;
int;
char[108];
}

struct test
{C817FAD0-E4E7-40FB-97B3-2B97CC000521}
{
MyName;
MyName[10];
}
 

Version Note
► Afficher le texte
Modifié en dernier par Sea le jeu. 01 août 2013 20:46, modifié 10 fois.
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2272
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [UDF] Structure Parser

#2

Message par jchd »

Pour la mise au point, on peut aussi avoir à faire l'inverse. Les types déduits pour les structures sont approximatifs, faut le savoir !
(Version adaptée à la dernière beta)
► Afficher le texte
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Sea
Niveau 6
Niveau 6
Messages : 219
Enregistré le : ven. 22 juin 2012 18:51
Localisation : France
Status : Hors ligne

Re: [UDF] Structure Parser 1.1

#3

Message par Sea »

V1.1 modification faite dans le 1er post :)

Merci pour ce script jchd je me penche d'abord sur la lecture mais ça peux être une très bonne option à rajouter pour faire simplement une structure :)
Sea
Niveau 6
Niveau 6
Messages : 219
Enregistré le : ven. 22 juin 2012 18:51
Localisation : France
Status : Hors ligne

Re: [UDF] Structure Parser 1.2

#4

Message par Sea »

Je n'avais pas prévu de passer autant de temps cet aprem dessus mais bon V1.2 support de GUID pour lire des structures.

J'a décidé de rajouter les GUID car ceux-ci sont très utile lorsqu'on à besoin de stocker un fichier structurer faisant référence à des structures qui sont dans un autre fichier, ce qui nous permet d'écrire directement leur GUID dans leur structure plutôt qu'un nom de fonction.
Sea
Niveau 6
Niveau 6
Messages : 219
Enregistré le : ven. 22 juin 2012 18:51
Localisation : France
Status : Hors ligne

Re: [UDF] Structure Parser 1.2

#5

Message par Sea »

V1.2 Création de notre propre type de data possible.
Répondre