Descripteur de fichiers et paramètres optionnels

Sujets variés concernant le développement en PureBasic
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Descripteur de fichiers et paramètres optionnels

Message par Anonyme2 »

Fred,

j'ai écrit une petite fonction et je me suis laissé embarqué dans des paramètres optionnels et j'aimerais pouvoir mettre dans le Desc ceci

une fonction qui a 2, ou 4 ou 5 paramètres mais pas trois.

C'est possible (?) et comment je met les parenthèses correctement car j'ai fait des essais hasardeux mais ça marche pas. Les exemples du fichier Readme donne un exemple avec 1, 2, 3 et 1 ou 3 mais c'est tout.
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

heu, et si tu fais une lib avec TailBite avec tes nombres de param pour ta procedure et que tu regardes comment est le code généré, ça ne te donnerai pas ta réponse ?

Tu lance TB avec ceci et tu regarde le code ASM généré

Code : Tout sélectionner

proceduredll machin(a, b)

endprocedure

proceduredll machin2(a, b, c, d)

endprocedure

proceduredll machin2(a, b, c , d, e)

endprocedure
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Non, je n'aurai pas la réponse avec TailBite.

Lorsque l'on fait une librairie en C ou asm (moi c'est l'asm) on peut mettre des paramètres optionnels dans un fichier de description.

Par exemple j'ai écrit une fonction pour mettre des images/icones dans l'en-tête des colonnes avec la transparence.

Voici comment est décrit cette commande dans le fichier.

SetHeaderImage, Long, Long, Long, Long, [Long], (Gadget.l, Column.l, Align.l, ImageId.l[,Transparence] )
Long | StdCall

Ici, je n'ai qu'un seul paramètre optionnel qui est Transparence.
Je voudrais pouvoir modifier celà de plusieurs manières.
(de toute façon, c'est pas grave, j'ai voulu trop en mettre dans cette fonction, je viens de modifier en créant une nouvelle commande). Mais je suis interessé par comment on fait si on veut 2, 4 ou 5 paramètres dans le Desc.
Fred
Site Admin
Messages : 2575
Inscription : mer. 21/janv./2004 11:03

Message par Fred »

j'ai pas testé mais ca devrait etre ca:

SetHeaderImage, Long, Long, [Long, Long], [Long], (Gadget.l, Column.l, [Align.l, ImageId.l[,Transparence] ])
Long | StdCall
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

SetHeaderImage, Long, Long, [Long, Long], [Long], (Gadget.l, Column.l, [Align.l, ImageId.l[,Transparence] ])
Long | StdCall


Je vais tester mais il me semble l'avoir fait et on peut avoir 3 paramètres.

J'aurais plutôt vu un truc du genre

SetHeaderImage, Long, Long, [Long, Long [,long]], (Gadget.l, Column.l, [Align.l, ImageId.l[,Transparence] ])
Long | StdCall

Merci
Répondre