Bindevent et NetworkClientEvent()

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Fig
Messages : 1176
Inscription : jeu. 14/oct./2004 19:48

Bindevent et NetworkClientEvent()

Message par Fig »

Bonjour à tous,

Est-il possible d'utiliser BindEvent() pour les évènements réseaux type NetworkClientEvent() ?
Il y a deux méthodes pour écrire des programmes sans erreurs. Mais il n’y a que la troisième qui marche.
Version de PB : 6.00LTS - 64 bits
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: Bindevent et NetworkClientEvent()

Message par Ollivier »

Salut fig,

je vois que ta question reste sans réponse. Donc, je vais contribuer à la réponse.

Bien sûr, le seul qui te répond, c'est le seul qui n'a pas de réseau, et ta question concerne le réseau. Donc, je prie ton indulgence pour l'inexactitude possible de la réponse.

Alors, la réponse, euh, je dirais

<< peut-être sous Windows, il y a quelque chose qui mijote en coïncidence avec les évènements réseau, mais, pour rester portable, il est préférable de considérer qu'il n'y a pas de lien entre [Wait]WindowEvent() et Network{Client|Server}Event(). Autrement dit, autant faire un BindEvent() avec un timer (assez lent) et interroger le réseau avec les instructions réseau dans une callback. >>

Voilà, ceci est mon humble avis de professionnel de l'amateur, étant donné que le dernier réseau que j'ai fait fonctionner, c'était du 4800 bauds (600 octets par seconde pour les plus jeunes) avec 7 bits de données, il y a seulement 29 ans...
Marc56
Messages : 2197
Inscription : sam. 08/févr./2014 15:19

Re: Bindevent et NetworkClientEvent()

Message par Marc56 »

Si on en crois l'aide, je dirais non, car BindEvent() est lié aux évènements fenêtres.

« C'est un moyen supplémentaire pour gérer les évènements dans PureBasic, qui fonctionne sans problème avec les habituelles commandes WindowEvent() et WaitWindowEvent(). »

De plus, BindEvent() pouvant se déclencher à tout moment et une connexion réseau n'ouvrant qu'un seul port il peut y avoir des conflits, dépassement de buffer etc. (À vérifier)

Cela dit, tu peux essayer. :wink:
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Bindevent et NetworkClientEvent()

Message par microdevweb »

Bonjour,

Pas un bindEvent, mais il est possible de créer un Thread qui utilise la fonction

Code : Tout sélectionner

Resultat = NetworkClientEvent(Connexion) 
#PB_NetworkEvent_None      : Il ne s'est rien passé.
#PB_NetworkEvent_Data      : Des données ont été reçues (à lire avec ReceiveNetworkData()) 
  #PB_NetworkEvent_Disconnect: Le client a été déconnecté (la connexion est fermée).

Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Répondre