http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/126639f1-487d-4755-af1b-cfb8bb64bdf8에 게시 된 코드를 사용하고 있지만 첫 번째 게시물에있는 것처럼 데이터를 보내지는 않습니다. 무엇이 잘못되었는지를 솔루션에서 말하는 것처럼 WSAGetLastError()를 어떻게 사용합니까?Winsock IRC 클라이언트가 연결했지만 데이터를 보내지 않습니다.
void IRC::SendBuf(char* sendbuf)
{
int senderror = send(m_socket, sendbuf, sizeof(sendbuf), MSG_OOB);
if(senderror == ERROR_SUCCESS) {
printf("Client: The test string sent: \"%s\"\n", sendbuf);
}
else {
cout << "error is: " << senderror << ", WSAGetLastError: " << WSAGetLastError() << endl;
printf("Client: The test string sent: \"%s\"\n", sendbuf);
}
}
그리고 출력은 다음과 같습니다 :
나는 다음과 같은 시도 오류가 있습니다 : 4, WSAGetLastError : 0
이제 0이 인쇄됩니다. 여기에 나열된 코드 중 하나를 받아야합니까? http://msdn.microsoft.com/en-us/library/ms740668%28VS.85%29.aspx#winsock.wsaeshutdown_2 – thorvald
@thorvald, 반드시 필요한 것은 아닙니다. 오류 '0'은 '오류 없음'을 의미합니다. 즉 모든 것이 원활하게 진행되었습니다. 이전 소켓 호출이 실패 했어야한다고 생각하는 이유는 무엇입니까? –
연결 후 서버에 아무 것도 보내지 않았기 때문에 뭔가 잘못되었다고 생각했습니다. 이 페이지의 코드를 사용하고 있습니다. http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/126639f1-487d-4755-af1b-cfb8bb64bdf8하지만 원래의 포스터는 어떻게 수정했는지 말하지 않았습니다. 문제. – thorvald