Salut,
1èrement, un pointeur ne peut pas être "true". Il peut être à la rigueur différent de NULL.
2èmement, un pointeur ne peut prendre la valeur 2. Je ne sais pas ce que tu veux tester mais là, c'est normal que ton compilo te jette...
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Ok,
Merci pour les info,
Je m'explique, le programme affiche un choix a faire ( un ou deux )
Ma boucle while, sert a "dire",
que t'en que "response" n'est ni 1 ni 2, alors on recommence.....
printf( "Veuillez patienter, Pendant le scan des ports,\r\nScan en cours..........\r\n\r\n" );
OpenPort();
printf( "Choix :\r\n1. Recommencer le scan\r\n2. Quitter\r\n\r\nChoix : " );
A ok,
merci, mais je ne comprent pas
pourquoi lors de l'execution du programme,
aucun port n'est afficher,
alors qu'il y a bien des ports ouvert ^^'
et puis apparament il scannerais toujours le même port,
car j'ai rajouter un printf( Port );
au cas ou le port est fermer,
et il m'affiche toujours, 0
donc il reste toujours sur le port 0
Plusieurs tres grosses erreurs dans ce code.
-Deja, ne t'etonne pas qu'il reste sur le port 0, car tu as beau faire un Port++, si tu fais pas un Ksin.sin_port = htons( Port );
dans ton while ca sert à rien.
-De plus il faut faire un closesocket sur chaque port et pas que sur le dernier ( met le dans le while)
-Je ne comprend pas a quoi sert returned (d'ailleurs, il sert a rien dans ton code), je peux me tromper, mais si tu rentre dans ton
if( returned == 10 )
{
returned = 0;
printf( "\r\n" );
}
fais moi signe.
-Enfin (et j'en oubli surement) si tu fais pas de segmentation fault c'est un vrai miracle avec le free( response ); dans la boucle while
-Ah oui j'en ai oublié (au moins :D) encore un, pour tester une connection de socket, il faut pas faire ==0 pour savoir si c ok, mais plutot un == -1 pour savoir que ca a foiré
D'accord je vois, il faut reprécifier le port a chaque connection
ce qui me semble normale..... ^^'
Mais par contre Je ne suis pas tros d'accord
avec ce que tu a marquer concernant la condition de returned...
Parceque on ajoute 1 a chaque tour, donc au bout d'un moment,
on rentre forcément ds la condition....
Parcontre désolé mais j'ai rien compris concernant le
free( response ); ^^'
Pourait tu détailler s'il te plait....
Donc d'après toi le code devrait ressemblé a sa...?
printf( "Veuillez patienter, Pendant le scan des ports,\r\nScan en cours..........\r\n\r\n" );
OpenPort();
printf( "Choix :\r\n1. Recommencer le scan\r\n2. Quitter\r\n\r\nChoix : " );
PS: Juste une petite remarque, aparament quand j'ai changer
le Zero de la condition par ton -1 , ben selon lui,
tous les ports de ma machine son ouvert, lol....
....BizZare n'esse pas...? :p