Il se trouve que RF a formulé :SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
La socket ayant été préalablement créée par un:
SocketCréeUDP("SocketUDP",27015)
et aoptimisée par un :
Socket.Option = SocketOptimiseConnexionIP
Il se trouve que RF a formulé :
SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
La socket ayant été préalablement créée par un:
SocketCréeUDP("SocketUDP",27015)
et aoptimisée par un :
Socket.Option = SocketOptimiseConnexionIP
Il se trouve que RF a formulé :SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
La socket ayant été préalablement créée par un:
SocketCréeUDP("SocketUDP",27015)
et aoptimisée par un :
Socket.Option = SocketOptimiseConnexionIP
Ok Ok, a priori, j'ai effectivement pas mal de soucis à me faire alors.
Bon, j'essaie de résumer mon code alors :
En français, ca nous donne :
Création de la socket UDP
Intégration de la commande dans une variable de type chaîne
Traitement de la variable
Envoie de la commande
Lecture de la réponse
Fermeture de la Connexion.
En W-Langage :
Cree_Connexion est un booléen
Cree_Connexion=SocketCréeUDP("HLDS", 7135)
Commande_Serveur est une chaîne
Commande_Serveur="FF FF FF FF 54 53 6F 75 72 63 65 20 45 6E 67 69 6E 65 20
51 75 65 72 79 00"
Traitement_Commande est une chaîne
Buf_Commande_Serveur est un Buffer
POUR TOUTE CHAINE Traitement_Commande DE Commande_Serveur SEPAREE PAR " "
nByte est un entier sans signe sur 1 octet
nByte=Val(Traitement_Commande)
Buf_Commande_Serveur[[Taille(Buf_Commande_Serveur)+1]]=nByte
FIN
SocketEcrit("HLDS", Buf_Commande_Serveur[[A
Taille(Buf_Commande_Serveur)]], "88.191.28.112", 27015)
Voila ou j'en suis. Donc, si mon serveur reçoit la commande, comment en
lire la réponse dans une fenêtre info déja. Ca pourrait être un bon début
:-)
"RF" a écrit dans le message de news:Il se trouve que RF a formulé :SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
La socket ayant été préalablement créée par un:
SocketCréeUDP("SocketUDP",27015)
et aoptimisée par un :
Socket.Option = SocketOptimiseConnexionIP
Ok Ok, a priori, j'ai effectivement pas mal de soucis à me faire alors.
Bon, j'essaie de résumer mon code alors :
En français, ca nous donne :
Création de la socket UDP
Intégration de la commande dans une variable de type chaîne
Traitement de la variable
Envoie de la commande
Lecture de la réponse
Fermeture de la Connexion.
En W-Langage :
Cree_Connexion est un booléen
Cree_Connexion=SocketCréeUDP("HLDS", 7135)
Commande_Serveur est une chaîne
Commande_Serveur="FF FF FF FF 54 53 6F 75 72 63 65 20 45 6E 67 69 6E 65 20
51 75 65 72 79 00"
Traitement_Commande est une chaîne
Buf_Commande_Serveur est un Buffer
POUR TOUTE CHAINE Traitement_Commande DE Commande_Serveur SEPAREE PAR " "
nByte est un entier sans signe sur 1 octet
nByte=Val(Traitement_Commande)
Buf_Commande_Serveur[[Taille(Buf_Commande_Serveur)+1]]=nByte
FIN
SocketEcrit("HLDS", Buf_Commande_Serveur[[A
Taille(Buf_Commande_Serveur)]], "88.191.28.112", 27015)
Voila ou j'en suis. Donc, si mon serveur reçoit la commande, comment en
lire la réponse dans une fenêtre info déja. Ca pourrait être un bon début
:-)
"RF" <mailbox@domain.ext> a écrit dans le message de news:
mn.62ac7d6c8419201a.65809@domain.ext...
Il se trouve que RF a formulé :
SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
La socket ayant été préalablement créée par un:
SocketCréeUDP("SocketUDP",27015)
et aoptimisée par un :
Socket.Option = SocketOptimiseConnexionIP
Ok Ok, a priori, j'ai effectivement pas mal de soucis à me faire alors.
Bon, j'essaie de résumer mon code alors :
En français, ca nous donne :
Création de la socket UDP
Intégration de la commande dans une variable de type chaîne
Traitement de la variable
Envoie de la commande
Lecture de la réponse
Fermeture de la Connexion.
En W-Langage :
Cree_Connexion est un booléen
Cree_Connexion=SocketCréeUDP("HLDS", 7135)
Commande_Serveur est une chaîne
Commande_Serveur="FF FF FF FF 54 53 6F 75 72 63 65 20 45 6E 67 69 6E 65 20
51 75 65 72 79 00"
Traitement_Commande est une chaîne
Buf_Commande_Serveur est un Buffer
POUR TOUTE CHAINE Traitement_Commande DE Commande_Serveur SEPAREE PAR " "
nByte est un entier sans signe sur 1 octet
nByte=Val(Traitement_Commande)
Buf_Commande_Serveur[[Taille(Buf_Commande_Serveur)+1]]=nByte
FIN
SocketEcrit("HLDS", Buf_Commande_Serveur[[A
Taille(Buf_Commande_Serveur)]], "88.191.28.112", 27015)
Voila ou j'en suis. Donc, si mon serveur reçoit la commande, comment en
lire la réponse dans une fenêtre info déja. Ca pourrait être un bon début
:-)
"RF" a écrit dans le message de news:Il se trouve que RF a formulé :SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
La socket ayant été préalablement créée par un:
SocketCréeUDP("SocketUDP",27015)
et aoptimisée par un :
Socket.Option = SocketOptimiseConnexionIP
Ce code me permet d'avoir un buffer d'une taille de 4 Octet mais je n'arrive
pas à lire ce qu'il y a dedans dana ma fenêtre info ca m'affiche un carré :
Connex_Socket est un booléen
Connex_Socket=SocketCréeUDP("Status", 27015)
Ecrit_Socket est un Buffer
Ecrit_Socket=SocketEcrit("Status", "0xFF FF FF FF FF FF FF FF",
"IPduserveur", 27015)
Lit_Socket est un Buffer
Lit_Socket=SocketLit("Status", Faux, 2000, 150000)
Info(Taille(Ecrit_Socket))
Ce code me permet d'avoir un buffer d'une taille de 4 Octet mais je n'arrive
pas à lire ce qu'il y a dedans dana ma fenêtre info ca m'affiche un carré :
Connex_Socket est un booléen
Connex_Socket=SocketCréeUDP("Status", 27015)
Ecrit_Socket est un Buffer
Ecrit_Socket=SocketEcrit("Status", "0xFF FF FF FF FF FF FF FF",
"IPduserveur", 27015)
Lit_Socket est un Buffer
Lit_Socket=SocketLit("Status", Faux, 2000, 150000)
Info(Taille(Ecrit_Socket))
Ce code me permet d'avoir un buffer d'une taille de 4 Octet mais je n'arrive
pas à lire ce qu'il y a dedans dana ma fenêtre info ca m'affiche un carré :
Connex_Socket est un booléen
Connex_Socket=SocketCréeUDP("Status", 27015)
Ecrit_Socket est un Buffer
Ecrit_Socket=SocketEcrit("Status", "0xFF FF FF FF FF FF FF FF",
"IPduserveur", 27015)
Lit_Socket est un Buffer
Lit_Socket=SocketLit("Status", Faux, 2000, 150000)
Info(Taille(Ecrit_Socket))
Florence a formulé ce jeudi :Ce code me permet d'avoir un buffer d'une taille de 4 Octet mais je
n'arrive pas à lire ce qu'il y a dedans dana ma fenêtre info ca m'affiche
un carré :
Connex_Socket est un booléen
Connex_Socket=SocketCréeUDP("Status", 27015)
Ecrit_Socket est un Buffer
Ecrit_Socket=SocketEcrit("Status", "0xFF FF FF FF FF FF FF FF",
"IPduserveur", 27015)
Lit_Socket est un Buffer
Lit_Socket=SocketLit("Status", Faux, 2000, 150000)
Info(Taille(Ecrit_Socket))
Dur métier, l'informatique.
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Florence a formulé ce jeudi :
Ce code me permet d'avoir un buffer d'une taille de 4 Octet mais je
n'arrive pas à lire ce qu'il y a dedans dana ma fenêtre info ca m'affiche
un carré :
Connex_Socket est un booléen
Connex_Socket=SocketCréeUDP("Status", 27015)
Ecrit_Socket est un Buffer
Ecrit_Socket=SocketEcrit("Status", "0xFF FF FF FF FF FF FF FF",
"IPduserveur", 27015)
Lit_Socket est un Buffer
Lit_Socket=SocketLit("Status", Faux, 2000, 150000)
Info(Taille(Ecrit_Socket))
Dur métier, l'informatique.
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Florence a formulé ce jeudi :Ce code me permet d'avoir un buffer d'une taille de 4 Octet mais je
n'arrive pas à lire ce qu'il y a dedans dana ma fenêtre info ca m'affiche
un carré :
Connex_Socket est un booléen
Connex_Socket=SocketCréeUDP("Status", 27015)
Ecrit_Socket est un Buffer
Ecrit_Socket=SocketEcrit("Status", "0xFF FF FF FF FF FF FF FF",
"IPduserveur", 27015)
Lit_Socket est un Buffer
Lit_Socket=SocketLit("Status", Faux, 2000, 150000)
Info(Taille(Ecrit_Socket))
Dur métier, l'informatique.
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Ha... des réponses constructives comme je les aiment...
Ha... des réponses constructives comme je les aiment...
Ha... des réponses constructives comme je les aiment...
Florence a pensé très fort :Ha... des réponses constructives comme je les aiment...
En même temps, ne t'attend pas à ce qu'on te mâche le travail.
Le plaisir de développer (si si, moi j'y prend plaisir), c'est aussi de
tatonner, de chercher, et surtout de réussir à trouver la solution par
soi-même.
Le recours à un forum doit à mon avis être la solution ultime, quand on
est bloqué ou qu'on a le sentiment de partir du mauvais côté.
Avant il faut apprendre à maîtriser son outil, lire la documentation.
Relis ton code que tu as publié (qui d'ailleurs n'est assurément pas celui
qui a produit ton "carré"...)
Relis l'aide... et prend plaisir à développer.
A+
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Florence a pensé très fort :
Ha... des réponses constructives comme je les aiment...
En même temps, ne t'attend pas à ce qu'on te mâche le travail.
Le plaisir de développer (si si, moi j'y prend plaisir), c'est aussi de
tatonner, de chercher, et surtout de réussir à trouver la solution par
soi-même.
Le recours à un forum doit à mon avis être la solution ultime, quand on
est bloqué ou qu'on a le sentiment de partir du mauvais côté.
Avant il faut apprendre à maîtriser son outil, lire la documentation.
Relis ton code que tu as publié (qui d'ailleurs n'est assurément pas celui
qui a produit ton "carré"...)
Relis l'aide... et prend plaisir à développer.
A+
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Florence a pensé très fort :Ha... des réponses constructives comme je les aiment...
En même temps, ne t'attend pas à ce qu'on te mâche le travail.
Le plaisir de développer (si si, moi j'y prend plaisir), c'est aussi de
tatonner, de chercher, et surtout de réussir à trouver la solution par
soi-même.
Le recours à un forum doit à mon avis être la solution ultime, quand on
est bloqué ou qu'on a le sentiment de partir du mauvais côté.
Avant il faut apprendre à maîtriser son outil, lire la documentation.
Relis ton code que tu as publié (qui d'ailleurs n'est assurément pas celui
qui a produit ton "carré"...)
Relis l'aide... et prend plaisir à développer.
A+
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Je demande pas que l'on me mâche le travail ni qu'on m'écrive mon code.
Mais même après relecture de la doc et divers essais j'en suis tjrs au même
point et j'ai vraiment l'impression de tourner en rond. Et c'est rageant pour
une débutante comme moi de ne pas réussir à surmonter cet obstacle.
Je demande pas que l'on me mâche le travail ni qu'on m'écrive mon code.
Mais même après relecture de la doc et divers essais j'en suis tjrs au même
point et j'ai vraiment l'impression de tourner en rond. Et c'est rageant pour
une débutante comme moi de ne pas réussir à surmonter cet obstacle.
Je demande pas que l'on me mâche le travail ni qu'on m'écrive mon code.
Mais même après relecture de la doc et divers essais j'en suis tjrs au même
point et j'ai vraiment l'impression de tourner en rond. Et c'est rageant pour
une débutante comme moi de ne pas réussir à surmonter cet obstacle.
Florence a couché sur son écran :Je demande pas que l'on me mâche le travail ni qu'on m'écrive mon code.
Pourtant, c'est bien ce que j'ai l'impression de faire!Mais même après relecture de la doc et divers essais j'en suis tjrs au
même point et j'ai vraiment l'impression de tourner en rond. Et c'est
rageant pour une débutante comme moi de ne pas réussir à surmonter cet
obstacle.
Commencer par les sockets n'est pas la meilleure chose à faire mais bon...
Allez, ceci sera ma dernière aide sur le sujet, après faudra plancher un
peu toute seule.
// Création de la socket UDP
Socket.Option = SocketOptimiseConnexionIP
SocketCréeUDP("SocketUDP",27015)
// Envoyer une commande au serveur
sCommande est une chaîne = "FF FF FF FF 54 53 6F 75 72 63 65 20 45 6E 67
69 6E 65 20 51 75 65 72 79 00"
sTraitement est une chaîne
bfCommande est un Buffer = ""
POUR TOUTE CHAINE sTraitement DE sCommande SEPAREE PAR " "
nByte est un entier sans signe sur 1 octet = Val(straitement)
bfCommande[[Taille(bfCommande)+1]]=nByte
FIN
SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
// Lecture de la réponse
bfCommande=SocketLit("SocketUDP", vrai)
Après, il faut que tu étudies la réponse par rapport au protocole. Cette
réponse se trouve dans "bfCommande" sous forme d'octets. Chaque octet est
accessible par son index:
CECI EST UN EXEMPLE QUI NE CORRESPOND PAS AU PROTOCOLE QUE TU SOUHAITES
GERER:
Si ta réponse est constituée de 4 octets et que ton protocole t'annonce
qu'elle est codée de la sorte:
* D'un entier non signé de 1 octet
* D'un entier non signé de 1 octet
* D'un entier de 2 octets
Tu feras (Toujours un exemple!)
n1 est un entier sans signe sur 1 octet¿Commande[[1]]
n2 est un entier sans signe sur 1 octet¿Commande[[2]]
n3 est un entier sur 2 octets¿Commande[[3 a 4]]
Après tu gères ta réponse toujours par rapport au protocole.
Ensuite, pour gérer correctement tes sockets, il faudra que tu jettes un
oeil sur les threads...
Bonne chance pour la suite!
Florence a couché sur son écran :
Je demande pas que l'on me mâche le travail ni qu'on m'écrive mon code.
Pourtant, c'est bien ce que j'ai l'impression de faire!
Mais même après relecture de la doc et divers essais j'en suis tjrs au
même point et j'ai vraiment l'impression de tourner en rond. Et c'est
rageant pour une débutante comme moi de ne pas réussir à surmonter cet
obstacle.
Commencer par les sockets n'est pas la meilleure chose à faire mais bon...
Allez, ceci sera ma dernière aide sur le sujet, après faudra plancher un
peu toute seule.
// Création de la socket UDP
Socket.Option = SocketOptimiseConnexionIP
SocketCréeUDP("SocketUDP",27015)
// Envoyer une commande au serveur
sCommande est une chaîne = "FF FF FF FF 54 53 6F 75 72 63 65 20 45 6E 67
69 6E 65 20 51 75 65 72 79 00"
sTraitement est une chaîne
bfCommande est un Buffer = ""
POUR TOUTE CHAINE sTraitement DE sCommande SEPAREE PAR " "
nByte est un entier sans signe sur 1 octet = Val(straitement)
bfCommande[[Taille(bfCommande)+1]]=nByte
FIN
SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
// Lecture de la réponse
bfCommande=SocketLit("SocketUDP", vrai)
Après, il faut que tu étudies la réponse par rapport au protocole. Cette
réponse se trouve dans "bfCommande" sous forme d'octets. Chaque octet est
accessible par son index:
CECI EST UN EXEMPLE QUI NE CORRESPOND PAS AU PROTOCOLE QUE TU SOUHAITES
GERER:
Si ta réponse est constituée de 4 octets et que ton protocole t'annonce
qu'elle est codée de la sorte:
* D'un entier non signé de 1 octet
* D'un entier non signé de 1 octet
* D'un entier de 2 octets
Tu feras (Toujours un exemple!)
n1 est un entier sans signe sur 1 octet¿Commande[[1]]
n2 est un entier sans signe sur 1 octet¿Commande[[2]]
n3 est un entier sur 2 octets¿Commande[[3 a 4]]
Après tu gères ta réponse toujours par rapport au protocole.
Ensuite, pour gérer correctement tes sockets, il faudra que tu jettes un
oeil sur les threads...
Bonne chance pour la suite!
Florence a couché sur son écran :Je demande pas que l'on me mâche le travail ni qu'on m'écrive mon code.
Pourtant, c'est bien ce que j'ai l'impression de faire!Mais même après relecture de la doc et divers essais j'en suis tjrs au
même point et j'ai vraiment l'impression de tourner en rond. Et c'est
rageant pour une débutante comme moi de ne pas réussir à surmonter cet
obstacle.
Commencer par les sockets n'est pas la meilleure chose à faire mais bon...
Allez, ceci sera ma dernière aide sur le sujet, après faudra plancher un
peu toute seule.
// Création de la socket UDP
Socket.Option = SocketOptimiseConnexionIP
SocketCréeUDP("SocketUDP",27015)
// Envoyer une commande au serveur
sCommande est une chaîne = "FF FF FF FF 54 53 6F 75 72 63 65 20 45 6E 67
69 6E 65 20 51 75 65 72 79 00"
sTraitement est une chaîne
bfCommande est un Buffer = ""
POUR TOUTE CHAINE sTraitement DE sCommande SEPAREE PAR " "
nByte est un entier sans signe sur 1 octet = Val(straitement)
bfCommande[[Taille(bfCommande)+1]]=nByte
FIN
SocketEcrit("SocketUDP", bfCommande[[A taille(bfCommande)]],
"88.191.28.112", 27015)
// Lecture de la réponse
bfCommande=SocketLit("SocketUDP", vrai)
Après, il faut que tu étudies la réponse par rapport au protocole. Cette
réponse se trouve dans "bfCommande" sous forme d'octets. Chaque octet est
accessible par son index:
CECI EST UN EXEMPLE QUI NE CORRESPOND PAS AU PROTOCOLE QUE TU SOUHAITES
GERER:
Si ta réponse est constituée de 4 octets et que ton protocole t'annonce
qu'elle est codée de la sorte:
* D'un entier non signé de 1 octet
* D'un entier non signé de 1 octet
* D'un entier de 2 octets
Tu feras (Toujours un exemple!)
n1 est un entier sans signe sur 1 octet¿Commande[[1]]
n2 est un entier sans signe sur 1 octet¿Commande[[2]]
n3 est un entier sur 2 octets¿Commande[[3 a 4]]
Après tu gères ta réponse toujours par rapport au protocole.
Ensuite, pour gérer correctement tes sockets, il faudra que tu jettes un
oeil sur les threads...
Bonne chance pour la suite!