abol_fa
چهارشنبه 07 مرداد 1394, 18:38 عصر
من یه برنامه کوچیک نوشتم که بعد از قبول کردن یه کانکشن باید یه متن رو برای طرف مقابل بفرسته
اما برنامه بعد از قبول کردن کانکشن هیچوقت چیزی نمیفرسته
اینم کدش:int main(int argc, char **argv){ int sockd,newsockd,status=0;
WSADATA ws;
WSAStartup(MAKEWORD(2, 2),&ws);
struct addrinfo hints, *res;
ZeroMemory(&hints, sizeof(hints));
hints.ai_family = AF_INET;
hints.ai_socktype = SOCK_STREAM;
hints.ai_protocol = IPPROTO_TCP;
cout<<getaddrinfo("127.0.0.1", "6164", &hints, &res)<<endl;
sockd = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
cout<<"SOCKET NUMBER="<<sockd<<endl;
cout << "BIND STATUS=" << bind(sockd,res->ai_addr, res->ai_addrlen)<<endl;
status = listen(sockd, 16);
if (status >= 0){
cout << "Now Listening On Port 6164 TCP!"<<endl;
}
else{
return WSAGetLastError();
}
struct sockaddr_storage theirs;
newsockd=accept(sockd, (struct sockaddr*)&theirs,(socklen_t*) sizeof(theirs));
send(newsockd, "Hello!", 18, 0);
getchar();
return 0;
}
اما برنامه بعد از قبول کردن کانکشن هیچوقت چیزی نمیفرسته
اینم کدش:int main(int argc, char **argv){ int sockd,newsockd,status=0;
WSADATA ws;
WSAStartup(MAKEWORD(2, 2),&ws);
struct addrinfo hints, *res;
ZeroMemory(&hints, sizeof(hints));
hints.ai_family = AF_INET;
hints.ai_socktype = SOCK_STREAM;
hints.ai_protocol = IPPROTO_TCP;
cout<<getaddrinfo("127.0.0.1", "6164", &hints, &res)<<endl;
sockd = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
cout<<"SOCKET NUMBER="<<sockd<<endl;
cout << "BIND STATUS=" << bind(sockd,res->ai_addr, res->ai_addrlen)<<endl;
status = listen(sockd, 16);
if (status >= 0){
cout << "Now Listening On Port 6164 TCP!"<<endl;
}
else{
return WSAGetLastError();
}
struct sockaddr_storage theirs;
newsockd=accept(sockd, (struct sockaddr*)&theirs,(socklen_t*) sizeof(theirs));
send(newsockd, "Hello!", 18, 0);
getchar();
return 0;
}