bonjour ,
j'utilise une socket UDP . Cela fonctionne bien . Jai un problème au niveau du timeout .
je n'arrive pas à le faire correctement fonctionner . Donc si pas de réponse du serveur , la fonction send bloque complètement .
J'ai regardé plein de FAQ et forum .
la fonction select renvoie toujours -1 .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 fd_set fds ; struct timeval tv ; tv.tv_sec = 5 ; tv.tv_usec = 0; // Set up the file descriptor set. FD_ZERO(&fds) ; FD_SET(id_socket, &fds) ; // Set up the struct timeval for the timeout. int erreur_timeout= select ( id_socket, &fds, NULL, NULL, &tv ) ; erreur=WSAStartup(MAKEWORD(2,2),&initialisation_win32); id_socket=socket(AF_INET,SOCK_DGRAM,0); serveur_snmp.sin_family=AF_INET; // Indiquez l'utilisation d'IPV4 serveur_snmp.sin_addr.s_addr=inet_addr(Hostname); // Indiquez l'adresse IP de votre serveur serveur_snmp.sin_port=htons(port); // Port TCP à destination du serveur if (erreur_timeout < 1 ) { ShowMessage("Pas de réponse de l'équipement ou erreur comunication !"); }
Je recherche doc ou bout de code
merci par avance
Partager