Que signifie __stdcall ? [Résolu]

Messages postés
235
Date d'inscription
mercredi 30 octobre 2002
Dernière intervention
6 octobre 2009
- - Dernière réponse : cs_Booster
Messages postés
235
Date d'inscription
mercredi 30 octobre 2002
Dernière intervention
6 octobre 2009
- 9 sept. 2007 à 14:33
Bonjour à tous,

Alors voilà j'aimerais savoir que signifie __stdcall ? (devant une fonction) Car j'ai passé 3 heures à essayer de résoudre un problème et je me suis aperçu par hazard que c'est par ce qu'il manquait __stdcall devant ma fonction :(

Pour info en réalité je fais un hook et je remplace la foncion de départ par la mienne, et il faut absolument que la fonction que je vais injecté est __stdcall devant .... Pouquoi ?

Merci d'avance de vos réponses.
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Dernière intervention
14 novembre 2014
3
Merci
Salut,
__stdcall est une convention d'appel des fonctions. Les paramètres étant passés par la pile, son nettoyage se fait au sein de la fonction. Par défaut, le compilateur utilise la convention __cdecl. Ainsi, la pile doit être nettoyée dans le code qui appelle la fonction.

Merci racpp 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de racpp
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Dernière intervention
14 novembre 2014
3
Merci
Voici un petit article à ce sujet: Conventions d'appel

Merci racpp 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de racpp
Messages postés
968
Date d'inscription
samedi 3 avril 2004
Dernière intervention
4 mars 2010
3
Merci
C'est exactement ca.

Merci cs_juju12 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de cs_juju12
Messages postés
235
Date d'inscription
mercredi 30 octobre 2002
Dernière intervention
6 octobre 2009
0
Merci
Ok je te remerci !


En fait, moi j'avais un énorme plantage lorsque je sortais de ma fonction qui était en Cdecl (par défaut). Mon erreur venait surement que la fonction qui m'appelait attendait que ma fonction vide la pile hors elle ne le fessait pas et du cou la pile était encore remplie des paramètres, ce qui posa problème !


Je te remerci !! ;)


PS : Si mon explication n'est pas plausible corrige moi :)
Commenter la réponse de cs_Booster
Messages postés
235
Date d'inscription
mercredi 30 octobre 2002
Dernière intervention
6 octobre 2009
0
Merci
Merci à tous les deux :)
Commenter la réponse de cs_Booster

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.