[R] TCP qui ne fonctionne que dans un sens

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

[R] TCP qui ne fonctionne que dans un sens

#1

Message par RL77LUC »

Bonjour à tous !

Désolé de vous importuner avec mes problèmes, mais je débute en TCP et là, je dois dire que je coince :/. En fait, je réalise une application pour mon serveur, qui me permettra de l'administrer facilement à distance depuis mon PC. Le système pour transmettre des commandes au serveur fonctionne, grâce à un exemple de script que j'ai modifié à ma guise. Seulement, quand j'essaie d'envoyer des infos via TCP depuis le serveur sur le client, eh bien rien du tout, aucune réponse ...

Voici mes codes :

Client
► Afficher le texte
Serveur
► Afficher le texte
Archive complète : Archive Client + Serveur + Config et couleur

Voilà. Merci d'avance pour votre aide.
Fichiers joints
Server_Manager.zip
(299.67 Kio) Téléchargé 60 fois
Modifié en dernier par RL77LUC le lun. 25 juil. 2011 17:30, modifié 7 fois.
Avatar du membre
Strofe
Niveau 5
Niveau 5
Messages : 182
Enregistré le : ven. 26 sept. 2008 23:16
Localisation : Picardie, Oise, Beauvais
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#2

Message par Strofe »

Bonjour

As-tu pensé au Pare Feu ??
Y a pas de problème, y a que des solutions. Reste à les trouver.
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#3

Message par RL77LUC »

Oui, tout est au point niveau pare-feu ;). Et pour l'instant tout tourne sur la même machine ...

Autres idées ? ^^
Avatar du membre
ZDS
Membre émérite
Membre émérite
Messages : 554
Enregistré le : jeu. 10 juin 2010 10:35
Localisation : 22300 Cul-d'chouette Langue-de-vache
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#4

Message par ZDS »

Bonjour,

Avant de pouvoir tester ton code, peux tu envoyer une version "correcte" en premier lieu? Juste les erreurs de syntaxe, c'est la moindre des choses, non? ^^ Désolé un peu flemmard de corriger des trucs comme :

Code : Tout sélectionner

Func _TCP_NewClientFunc($hSocket)
    ConsoleWrite(">>> Nouveau client : " & _SocketToIP($hSocket) & @CRLF)
[color=#FF0000]EndIf[/color]
EndFunc
A bientôt.

PS: Sinon tu as pensé à initialiser la connexion avant de faire une tentative de TCPConnect ? Notamment au niveau du serveur :

Code : Tout sélectionner

[...]
; ---

HotKeySet("+{esc}", "_terminate")
[color=#FF0000]Global $terminate = 0, $ok = False
$ConnectedSocket = -1
While $ok = False
    $ConnectedSocket = TCPConnect($ipserveur, $PORT)
    If Not @error Then $ok = True
WEnd[/color]

While Not $terminate
[...]
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#5

Message par RL77LUC »

Désolé, j'avais envoyé une ancienne version et oublié de mettre à jour. J'ai fait comme ça, dans la fonction de nouveau client, mais ça ne fonctionne pas plus :/.
Avatar du membre
ZDS
Membre émérite
Membre émérite
Messages : 554
Enregistré le : jeu. 10 juin 2010 10:35
Localisation : 22300 Cul-d'chouette Langue-de-vache
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#6

Message par ZDS »

Bonjour,

Il y a un modèle client/serveur dans les exemples avancés d'AutoIt (attends que je le retrouve), justement conçu pour transmettre des commandes. C'est là dessus que tu t'es basé ou pas du tout? Si ce n'est pas le cas, je te le conseille, il est très bien construit.

A plus tard.
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#7

Message par RL77LUC »

Je me suis basé sur le serveur TCP Multi-Clients, je ne sais pas si c'est de celui-là que tu parles.

EDIT: Personne ne voit ce qui cloche ? :S
Avatar du membre
ZDS
Membre émérite
Membre émérite
Messages : 554
Enregistré le : jeu. 10 juin 2010 10:35
Localisation : 22300 Cul-d'chouette Langue-de-vache
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#8

Message par ZDS »

Bonjour,

Je n'ai pas trop le temps de me pencher sur ce script dans la semaine (boulot oblige), par contre dès ce soir ou demain je vais regarder ça en détail. D'ici là peut-être que quelqu'un t'aura aidé, tiens moi au courant.

A bientôt!
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#9

Message par RL77LUC »

Merci beaucoup pour tout ! :D
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#10

Message par timmalos »

Merci de rajouter la balise Résolu à votre sujet.
Avatar du membre
ZDS
Membre émérite
Membre émérite
Messages : 554
Enregistré le : jeu. 10 juin 2010 10:35
Localisation : 22300 Cul-d'chouette Langue-de-vache
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#11

Message par ZDS »

Bonjour,

@timmalos: Je pense que son problème n'est pas résolu. Le dernier message de RL77LUC est peut-être un merci par avance.

@RL77LUC: J'ai bossé un peu sur ton script, et mise à part des modifications mineures coté serveur (aucune modif coté client), je n'ai rien eu à faire pour faire fonctionner ton script : J'ai bien un retour coté client "Réponse du serveur". Par contre, pour m'éviter de créer des fichiers à tire-larigot, j'ai shunté ta fonction _IPAuth($ip) qui retourne toujours vrai dans mon script (toute machine autorisée). La grosse flemme de faire des fichiers de config surtout quand tu donnes aucune spèc ^^

Bref, j'ai bien fait d'être fainéant, car dans le cas d'une machine authentifiée ça fonctionne nickel; et par contre dans le cas d'une machine répondant False à la fonction _IPAuth, je n'ai même pas de réponse de blocage. Donc le problème se situe là.

Désolé de ne pas être d'une plus grande aide pour le moment, je t'envoye ma version un peu remaniée du serveur (shuntage de _IPAuth, sortie en console des valeurs de retour de TCPSend, etc...). Mais ça serait bien de fournir dans une archive en pj de ton premier message (pour cette fois et les prochaines) TOUS LES FICHIERS NÉCESSAIRES pour qu'on puisse t'apporter de l'aide :
- Script serveur => FONCTIONNEL ! (genre setconsolecolor qui manque, comment veux-tu qu'on avance si il y a des trous...)
- Script client
- Exemple de fichier clients_res.ini
- Exemple de fichier clients_auth.ini
- Exemple de fichier log.txt
- etc...
► Afficher le texteServeur
A bientôt !
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#12

Message par RL77LUC »

Et pourquoi ça ? Ce n'est pas résolu ... :shock:

EDIT: Merci ZDS, je mets tout dans une archive et j'édite le premier topic ;).
EDIT 2: Lien ajouté au 1e topic.

Petites précisions : setcolor est déclaré comme manquant, mais est bien présent, c'est parce que la fonction est dans la DLL que ça fait ça, et il faut impérativement compiler le script pour que tout fonctionne bien.

J'ai mis à jour l'archive, mais mon problème subsiste, le message de refus de connexion ne s'affiche pas à tous les coups, environ 1 fois sur 10. D'autres idées ?
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#13

Message par timmalos »

Désolé pour mon message précédant, j'ai en effet pris votre 'Merci pour tout' comme une marque de résolution ;)
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#14

Message par RL77LUC »

Ce n'est pas grave, l'erreur est humaine ;).
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#15

Message par Iste »

Mais ya un truc qui me chagrine depuis le debut, pourquoi le server se connecte au client ?

Utilisez la socket ouverte par le client si vous avez besoin de renvoyer des informations.
Signez ici
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#16

Message par RL77LUC »

Ah oui mais ça dépasse mes compétence x). J'ai adapté l'exemple TCP multi-clients étant donné que je suis loin d'être un expert dans ce domaine ^^'.
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#17

Message par Iste »

Bah c'est bien plus simple ainsi justement ! une fois la socket ouverte par le client on la recup pour travailler, au lieu d'en ouvrir une autre
Signez ici
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#18

Message par RL77LUC »

Vous n'auriez pas un exemple ? Parce que très franchement, je n'ai aucune idée de comment procéder ... :/
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#19

Message par Iste »

Ouais ouais... voila...
► Afficher le texteclient
► Afficher le texteserver
J'ai repris l'exemple de la doc et j'ai rajouté deux choses :
Une fonction en boucle chez le client qui écoute la socket ouverte (ca bug un peu car l'inputbox stop le script)
Une condition au server pour répondre quand il reçoit "test"
Signez ici
Avatar du membre
RL77LUC
Niveau 5
Niveau 5
Messages : 173
Enregistré le : mar. 21 sept. 2010 16:54
Status : Hors ligne

Re: [..] TCP qui ne fonctionne que dans un sens

#20

Message par RL77LUC »

J'ai adapté mon script, et ça fonctionne parfaitement bien ! ! Merci beaucoup, beaucoup à ZDS et Iste ! Je passe en résolu ...
Répondre