SOCKETS : INDEXAGE DES CLIENTS

japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 - 18 mai 2007 à 12:45
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 20 mai 2007 à 22:40
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/42740-sockets-indexage-des-clients

cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
20 mai 2007 à 22:40
arf, je me suis p'tet un peu emballé..
En fait, le dialogue ne se fait qu'entre le serveur et le client mais pas entre client..
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
19 mai 2007 à 13:55
petit souci avec // Application.MainFormOnTaskbar := True;
que j'ai passé en commentaires sinon
bien rafalus
et ceux aussi qui y ont contribués.
Et j'imagine déjà l'intérêt du chat dans une application réseau en mode partagé évitant ainsi tout le fourbi pour faire dialoguer deux PC..
Reste à tester néanmoins..
@bientôt
Utilisateur anonyme
19 mai 2007 à 13:00
Ben j'ai la même adresse que Forman ;)

et vive la pologne ... (Delphi7 en anglais)
Pour le téléchargement :
http://www.borland.pl/downloads/delphi_7_personal/Delphi7_Personal.zip

Pour l'enregistrement :
http://www.codegear.com/Downloads/TrialandFreeVersions/Delphi/tabid/138/Default.aspx
Dans la deuxième série de lien (Keys Only (If you have a CD))
Cliquez sur l'antépénultième (l'avant avant dernier) :D

@+
Cirec
Francky23012301 Messages postés 400 Date d'inscription samedi 6 août 2005 Statut Membre Dernière intervention 11 février 2016 1
18 mai 2007 à 19:53
@Florent : quand tu utilises la lib winsock tes sockets sont par défaut en mode bloquant. Il faut alors utiliser la fonction ioctlsocket pour rendre la socket non bloquante.

Cependant avec les composanst TSockets, ils sont par défaut en mode non bloquant. Normalement tu as une option au niveau de l'inspecteur
Que ce soit net ou point net, peu importe: tu peux (tu dois lol) utiliser Turbo Delphi en mode Win32. Sinon, y'a toujours Delphi 7 qui ne fait QUE du Win32.
Sinon, y'a encore Delphi 6 ou même Delphi 5 qui sont pareils !
Alors bon... pas d'excuse hein ? lol

Par contre Cirec, où se trouve donc Delphi 7 sur Internet gratuitement ! D6 oui, D2005 oui, TD aussi mais pas D7 !!!
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
18 mai 2007 à 18:20
Mon vieux D4 et moi, c'est à la vie à la mort !
Vous pouvez pas comprendre ça, à la fin ? [lol]
Et .Net, ça porte bien son nom : c'est point net, hi hi hi ^^
Utilisateur anonyme
18 mai 2007 à 17:24
Comme le dit Florenth
D7 n'accepte pas les caractères accentués :(

Sinon avec Turbo Delphi:
Pas d'apostrophe et pas d'espace ...
pas de chiffre au début ...

... mais ceci passe très bien:
Ya_intérêt


@Japee : au cas ou cela t'intéresserait D7 perso est encore disponible sur le net ;)
cs_rafalus Messages postés 6 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 19 mai 2007
18 mai 2007 à 16:58
Pour ma part, je n'ai jamais utilisé les sockets en mode bloquant. Cependant au niveau des variables, je n'ai pas trop saisi, mais delphi ne me signale rien à propos de celles-ci (j'utilise delphi 2007, peut-être que ça varie d'une version à l'autre).
Pardon, excuse moi: ça compile avec tes variables "i" et "j" en global mais j'ai quand même un message d'avertissement.
Code très intéressant : j'ai moi même été heurté au même problème il y a peu et c'est vrai que c'est utile de savoir comment tout ça marche.
Par contre, j'ai eu des problèmes (sur mon appli à moi) entre le mode "bloquant" et le "non bloquant". As-tu déjà rencontré ce genre de trucs ? Je n'ai jamais réussi à trouver d'où ça vient...

Sinon, comme dirait japee: "ça compile chez toi ?"
Delphi m'injurie que la variable de la boucle "for" doit être locale. En sachant que j'utilise TurboDelphi qui est une des dernières versions en date, je ne suis pas convaincu que ce soit possible.

@japee: en fait, les identificateurs accentués, c'est autorisé dans le Framework .net. Et comme depuis la version 8, Delphi supporte .net, borland a décidé, par souci de compatibilité d'accepter les accents (et tout autre caractère UTF-8 par ailleurs) dans le code.

Mais c'est vrai que c'est une pratique à déconseiller.

@rafalus: chez moi, ça compile sans problème avec "msg". Ce qu'il ne faut pas mettre, c'est "message" (encore qu'il semble accepté dans certains cas) car c'est un mot réservé du langage.
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
18 mai 2007 à 14:41
J'allais poster ceci :

<ceci>
"il suffit de remplacer tous les "reçu" par cette variable"
Y'a intérêt... ^^
Tout de même étonné que ça passe sous D7... Quelqu'un peut confirmer ?
<\ceci>

Merci Cirec pour l'info ^^
Utilisateur anonyme
18 mai 2007 à 14:18
Salut,
@Japee :les nouvelles versions de Delphi acceptent les caractères accentués
mais en principe on évite de s'en servir ;)
cs_rafalus Messages postés 6 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 19 mai 2007
18 mai 2007 à 13:00
Salut, merci pour l'intérêt porté à ce code.
"reçu" passe chez moi mais à la base j'avais mis "msg" cependant ça ne compilait pas (je n'ai plus le message d'erreur en tête) donc j'ai mis "reçu" à la place, mais il est possible de remplacer "reçu" par une autre variable sans problème, il suffit de remplacer tous les "reçu" par cette variable.
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
18 mai 2007 à 12:45
Salut rafalus,

Voilà un code utile, très bien expliqué, qui sera utile à plus d'un.
Sinon, la variable "reçu"... ça compile chez toi ?
Rejoignez-nous