Transfert de valeur via client serveur

cs_rescator68 Messages postés 24 Date d'inscription dimanche 13 juillet 2003 Statut Membre Dernière intervention 5 novembre 2011 - 25 janv. 2009 à 19:56
cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 25 janv. 2009 à 20:36
Bonjour,


Je vais essayer d'être clair dans ma demande...


 


1° d'un coté, j'ai un prog serveur qui doit tourner. Celui-ci récolte via son port série des infos qui vont mettre un tableau à jour.


ce tableau est déclaré ainsi Dim mesinfos(0 To 255) As Boolean



2° de l'autre coté, j'ai plusieurs postes client qui doivent simplement pouvoir lire les valeurs de ce tableau pour que je puisse ensuite de nouveau les traiter sur le poste client.
Les postes clients seront au nombre de 10 et peuvent se connecter simultanement au serveur.

1ère question : comment transférer les valeurs de ce tableau du serveur vers le client qui en fait la demande ?

2ème question : est-il possible que le serveur aille modifié de lui même le ( ou les) client(s) si le serveur se voit modifié une des valeurs du tableau ?

3ème et dernière question : un client peut-il faire une demande au serveur pour que celui-ci lui envoie un fichier texte complet ( log des derniers evennements dans mon cas)

Je ne sais pas par où commencer. j'ai l'intention d'utiliser winsock, mais je coince un peu malgré la lecture de nombreux post et sources.

je remercie d'avance les personnes qui prendront le temps de me répondre

Alain

1 réponse

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
25 janv. 2009 à 20:36
Salut
Tout ceci est réalisable, sans problème.
J'ai pas bien compris ta question 2.

As-tu déjà mis en place le dialogue client-serveur ?
Si oui, as-tu prévu des entêtes aux demandes client vers serveur : Il t'en faudra pour dissocier ce que désire le client (tableau de booléens ou fichier texte)
Si non, charge quelques sources qui parlent de Chat multi-clients et regarde comment se passe :
-1- la connexion client-serveur
-2- la gestion multi-clients
-3- les échanges
Une fois la connexion et la gestion multi-client, c'est à toi d'imaginer le dialogues entre eux.

Exemple de dialogue :
Question client :
   (0)Tableau256(1)
Résponse serveur :
Le serveur peut renvoyer soit 256 chiffres 0/1, soit entrer les 256 booléens dans des Bytes de 8 bits, histoire de gagner de la place dans les comm, mais nécessitera un peu de temps machine pour préparer les Bytes, et les décoder à l'arrivée.
   (0)Tableau256(0)Donnée0(0)Donnée1(0)Donnée2(0).......(0)Donnée255(1)
ou encore
Client :
   (0)Fichier(0)Nom du fichier désiré.txt(1)
Serveur
   (0)Fichier(0)Nom du fichier désiré.txt(0)Longueur(0)123456(0)le texte du ficier ... (1)

Dans ces exemples, les (0) et (1) sont des Chr(0) et Chr(1) - ou n'importe quoi d'autre -, c'est à dire des caractères - ou une suite de caractères - que tu ne risques pas de rencontrer dans tes données.
   (0) sert de séparateur interne à la trame
   (1) signale une fois de trame
car, quand tu recevras les données, si elles sont longues, tu ne les recevras pas en une seule fois et tu peux recevoir deux messages de réponse l'un derrière l'autre : Il faut pouvoir assurer le découpage d'une manière fiable.

Inspire toi des exemples de Chat, c'est exactement la même chose.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0