begin process at 2012 05 28 16:48:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

j'ai un prpbléme ...quesqui va pas ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

j'ai un prpbléme ...quesqui va pas ?

samedi 2 octobre 2004 à 19:33:38 | j'ai un prpbléme ...quesqui va pas ?

oshin

hello, alors enfaite j'aimerais que mon bot réponde a un ping lors de la connexion, mais avec mon cod compliqué sa ne marche pas ...
ex: ping :12645489

Il faut que mopn bot reponde:

pong 12645489




if ( strstr(buffer,"PING") != 0 ) && strstr(strstr(buffer,"PING"),":") != 0) {
char *ping = strtok(strstr(buffer,"ping"),":");
wsprintf(ident,"PONG %s",ping,10);
send(sock,ident,strlen(ident),0);

}


samedi 2 octobre 2004 à 20:46:10 | Re : j'ai un prpbléme ...quesqui va pas ?

AlexMAN

Membre Club
oula, sert toi un maximum des pointeurs, et si tu ne les maitrises pas, entraine toi, encore et encore :

#define PING "PING"

char buffer[256], *b = buffer; //buffer contient ton ping..Etc
char ident[256] = "PONG "; //contiendra la reponse

//recherche PING ds buffer, et donne pointeur sur caractere ki suit
while (*b) {
if (0 == strcpy(b++, PING)) break;
}
if (!b) return; //Si on atteint la fin de la chaine, PING pas trouvé, donc on kitte
b += 2; //pour sauter ": "
strcat(ident, b);
send(...);

Voila le code n'est certainement pas parfait, mais certainement bocou mieux ke strtok et co..

++


samedi 2 octobre 2004 à 21:48:06 | Re : j'ai un prpbléme ...quesqui va pas ?

AlexMAN

Membre Club
ah pardon, gt pas réveillé, ds le while, remplace strcpy par strncmp :

strncmp(b, PING, 4);

Voila, dsl

++
samedi 2 octobre 2004 à 23:02:01 | Re : j'ai un prpbléme ...quesqui va pas ?

aardman

Membre Club
Salut,
je vois d'autres trucs qui vont pas:
- if (!*b) return; a la place de if (!b) return;
- b += 5; a la place de b += 2;

et un dernier truc:
strcpy(ident + 5, b); plutot que strcat(ident, b);
samedi 2 octobre 2004 à 23:19:55 | Re : j'ai un prpbléme ...quesqui va pas ?

AlexMAN

Membre Club
Ah ben pkoi b += 5 ? puis ke ds la boucle, on incremente b ?
Je persiste a dire b += 2 ;)

Merci pour les rectifications, c une erreur d'inattention...
Merci encore

++
samedi 2 octobre 2004 à 23:24:58 | Re : j'ai un prpbléme ...quesqui va pas ?

aardman

Membre Club
Salut,
Dans ton while, quand strncmp(b++, PING, 4) retourne 0, b pointe sur "ING..."
donc il faut ajouter 5 pour passer le "ING: ".

Sinon, j'aurais plutot utilisé strstr, voire meme directement strncmp, car le PING doit etre au debut du buffer non ? (je connais pas le proto IRC...)
dimanche 3 octobre 2004 à 09:23:26 | Re : j'ai un prpbléme ...quesqui va pas ?

AlexMAN

Membre Club
ah uè ! Dsl, j'avais pas pensé a ca, dsl d'avoir persisté.
Uè en fait, pour rechercher PING, je sais pas si strstr serait pas plus rapide, mais pour la suite, ne pas utiliser strtok et wsprintf, ca c c sur !

Merci aardman pour les rectifications, bonne continuation et bonne chance a oshin...

++


Cette discussion est classée dans : buffer, ping, strstr, ident, prpbléme


Répondre à ce message

Sujets en rapport avec ce message

strstr [ par melkiorlenecrarque ] Bonjour Je n'arrive pas à utiliser strstr(...) if( lstrcmp(BufMp3, "ID3") == 0 )    //tag v2             {           & Problème "Ping" en c [ par mohken ] Bonjour à tous, Jeune développeur en LabWindows ( environnement C ), je souhaite effectuer un "ping" mais une erreur lors de mon exécution sur "fopen Aide pour un problème de string ! [ par florian138 ] Bonjour,Je dois créer un programme en C++ dans lequel j'ouvre un fichier je lis les données que je met ensuite dans un "char" du nom de buffer...Dans Socket en C [ par RM50Man ] WSADATA ws;                    WSAStartup(MAKEWORD(2,0), &ws);              &n Gros soucis Ping en c [ par mohken ] Bonjour, J'avais déjà poser une question à ce sujet mais j'ai encore un problème pour pinger. J'ai récupéré une fonction qui permet de le faire sur le Vider un buffer [ par mrjulien ] Bonjour à tous, je travail sur un programme gérant les sockets, mon buffer contient les données de type char que j'envoie au serveur. Je voudrai vider COLORREF to char* to COLORREF [ par melkiorlenecrarque ] Bonjour, Je voudrais envoyer à une application serveur un COLORREF  via send. J'ai donc besoin de transformer cette variable en char* Avec les exemp Télécharger une piece jointe avec pop3 [ par sorata69 ] Bonjour , comme le dit le titre de mon sujet, j'aimerais créer un client pop3 qui téléchargerait une piece jointe.  J'ai bien vu quelque source sur l pb clients serveur [ par melkiorlenecrarque ] Bonjour, Je programme actuellement un tchat pour reseau local. pour cela, les clients communiquent avec le serveur et vice versa grace à un code pla ReadFile rs232 [ par ekinox17 ] Salut a tous, J'ai un petit problème, j'envoie un requête rs232 et ensuite je recupere son retour pour mesurer une valeur sur le periph ... enfin bref


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,981 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales