[C/WIN32] EMPÈCHE UNE INTRUSION VIA LES PARTAGES PAR DÉFAUT DE WINDOWS

zeratul67 Messages postés 97 Date d'inscription mardi 9 avril 2002 Statut Membre Dernière intervention 11 mai 2008 - 11 août 2006 à 21:13
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 16 août 2006 à 11:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/39058-c-win32-empeche-une-intrusion-via-les-partages-par-defaut-de-windows

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
16 août 2006 à 11:51
sinon ça se règle (fait par défaut avec mes templates) pour tout le proj dans les propriétés du proj:
onglet C/C++ -> Advanced -> Calling Convention
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
16 août 2006 à 11:35
ha je l'ignorai, autant pour moi NairodDorian.
NairodDorian Messages postés 130 Date d'inscription lundi 26 juin 2006 Statut Membre Dernière intervention 18 août 2008
15 août 2006 à 19:02
DECK_BSD attention tu dis, je cite : "lorsqu'on ne spécifie pas" tu veut dire quand on n'y fait pas appel ? ben aucun n'est enployé."
C'est faux.
Si tu ne specifies rien c'est la convention d'appel du langage qui est utilise.
Par exemple :
INT mafonction(VOID){ /* code la fonction */ } // Convention utilise cdecl
Par contre
INT __stdcall mafonction(VOID){ /* code de la fonction */ } // Convention utilise __stdcall
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
12 août 2006 à 13:00
"lorsqu'on ne spécifie pas" tu veut dire quand on n'y fait pas appel ? ben aucun n'est enployé. Cependant si tu veut faire un choix entre les deux, je conseil __stdcall car cdecl inject le code de nettoyage de la pile dans l'éxécutable comme mis dans la MSDN. Voici le lien pour plus de précisions : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang/html/_core___stdcall.asp
zeratul67 Messages postés 97 Date d'inscription mardi 9 avril 2002 Statut Membre Dernière intervention 11 mai 2008
12 août 2006 à 12:22
"Le code utile est un peu noyé dans de l'interface" c'est vrai qu'on trouve très vite le code concernant le registre, non non il est très bien séparé, c'est pas ce que je voulais dire. Je disais juste que ce code en question est très court par rapport à tout ce qui permet d'avoir une belle interface, tu aurais très bien pu mettre cette partie en citation "code" pour qu'on ait pas besoin de télécharger le ZIP pour tout voir.

stdcall ou cdecl, lorsqu'on ne spécifie pas, lequel est employé ? Et quelle est la différence fondamentale (si c'est long et que t'as un lien qui en parle, n'hésites pas à le donner)
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
12 août 2006 à 10:46
... tilt ! en l'occurence j'ai pas de paramètres . L'habitude sans doute.
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
12 août 2006 à 10:06
"Le code utile est un peu noyé dans de l'interface" : tu trouves ? les 3 fonctions concernant les API sur la base de registre sont bien séparées :s

"Pourquoi déclares-tu tes fonctions en "__stdcall" " : stdcall: fonction qui dépile les paramètres, le standard API.
Le standard du C est cdecl, appelant dépile.
zeratul67 Messages postés 97 Date d'inscription mardi 9 avril 2002 Statut Membre Dernière intervention 11 mai 2008
11 août 2006 à 21:13
Le code utile est un peu noyé dans de l'interface, mais je pense que des débutants pourrait en apprendre des choses.

Pourquoi déclares-tu tes fonctions en "__stdcall" ?
Rejoignez-nous