OVH Cloud OVH Cloud

Macro définition

8 réponses
Avatar
Sivaller
Voilà je souhaiterai inclure dans mon code des TAGs , dont ils doivent pas
être executés .
_tag("Tag1")
_tag("Tag2")

#define _tag(s) _asm {jmp suite dw 0xffff db 0xab db 0xce db s suite: }

Le compilateur me signale que le label suite , et le symbol Tag1 ne sont pas
définit.
Comment faire ?

_tag("Mon tag") équivalent à :
_asm
{jmp suite
dw 0xffff
db 0xab
db 0xce
db "Mon tag
suite:
}

J'utilise pour cela Borland C++ 4.02.

Merci

8 réponses

Avatar
Fabien LE LEZ
Tu as envoyé ce message deux fois.
Il faut changer soit de lecteur de news, soit de serveur, soit les
deux (Je conseille fortement cette dernière solution).

--
;-)
Avatar
Pierre Maurette
Fabien LE LEZ a écrit:

Tu as envoyé ce message deux fois.
Il faut changer soit de lecteur de news, soit de serveur, soit les
deux (Je conseille fortement cette dernière solution).
Je ne suis pas sûr qu'un lecteur de news ou un serveur qui merdent

envoient deux fois le même message avec un objet différent...
--
Pierre

Avatar
Fabien LE LEZ
On Sat, 18 Sep 2004 14:00:21 +0200, Pierre Maurette
:

Je ne suis pas sûr qu'un lecteur de news ou un serveur qui merdent
envoient deux fois le même message avec un objet différent...


Il arrive souvent que certains lecteurs de news (en particulier OE,
mais c'est peut-être un effet statistique) s'interfacent mal avec
news.wanadoo.fr, et indique que le message n'a pas pu être envoyé
alors qu'il a été effectivement posté.


--
;-)

Avatar
Pierre Maurette
"Sivaller" a écrit:

Voilà je souhaiterai inclure dans mon code des TAGs , dont ils doivent pas
être executés .
_tag("Tag1")
_tag("Tag2")

#define _tag(s) _asm {jmp suite dw 0xffff db 0xab db 0xce db s suite: }

Le compilateur me signale que le label suite , et le symbol Tag1 ne sont pas
définit.
Comment faire ?

_tag("Mon tag") équivalent à :
_asm
{jmp suite
dw 0xffff
db 0xab
db 0xce
db "Mon tag
suite:
}

J'utilise pour cela Borland C++ 4.02.
C'est une question spécifique Borland, dont la réponse se trouve dans

la documentation du compilateur. Je n'ai pas de 4.02 installée, je ne
peux donc pas la consulter.
Deux voies (à essayer):
- Puisque suite: est la dernière ligne du bloc _asm{}, définissez-le
dans le code C++ (là, c'est standard):
_asm
{
jmp suite
dw 0xffff
db 0xab
db 0xce
db "Mon tag
}
suite:
/* etc. */

- L'assembleur intégré BASM (Pascal/Delphi) n'autorise dans un bloc
asm que des labels locaux, dont la portée est limitée au bloc asm.
Syntaxe: @blabla

--
Pierre

Avatar
Pierre Maurette
Fabien LE LEZ a écrit:

On Sat, 18 Sep 2004 14:00:21 +0200, Pierre Maurette
:

Je ne suis pas sûr qu'un lecteur de news ou un serveur qui merdent
envoient deux fois le même message avec un objet différent...


Il arrive souvent que certains lecteurs de news (en particulier OE,
mais c'est peut-être un effet statistique) s'interfacent mal avec
news.wanadoo.fr, et indique que le message n'a pas pu être envoyé
alors qu'il a été effectivement posté.
Et changent l'objet ?

--
Pierre


Avatar
Fabien LE LEZ
On Sat, 18 Sep 2004 14:15:34 +0200, Pierre Maurette
:

[...] et indique que le message n'a pas pu être envoyé
alors qu'il a été effectivement posté.


Et changent l'objet ?


Si ton logiciel te dit que le message n'a pas pu être expédié, tu as
tendance à le renvoyer manuellement. Et si jamais tu t'aperçois d'un
problème[*] dans ton message, tu en profites pour le corriger.
D'où deux messages pas tout à fait identiques.


[*] le problème (potentiel) ici est l'accent dans le sujet, parfois
mal supporté.


--
;-)


Avatar
Sivaller
"Fabien LE LEZ" a écrit dans le message de
news:
On Sat, 18 Sep 2004 14:15:34 +0200, Pierre Maurette
:

[...] et indique que le message n'a pas pu être envoyé
alors qu'il a été effectivement posté.


Et changent l'objet ?


Si ton logiciel te dit que le message n'a pas pu être expédié, tu as
tendance à le renvoyer manuellement. Et si jamais tu t'aperçois d'un
problème[*] dans ton message, tu en profites pour le corriger.
D'où deux messages pas tout à fait identiques.
oui


[*] le problème (potentiel) ici est l'accent dans le sujet, parfois
mal supporté.
?


--
;-)




Avatar
Sivaller
Probléme résolu avec :
#define _tag(s) asm
{
jmp @suite;
dw 0xffff;
db 0xab;
db 0xce;
db s;
db 0x00;
@suite:;
}