WSAEventSelect(sd, hEvent, FD_READ|FD_CLOSE|FD_WRITE);//多分FD_WRITEを追加

// ソケットへの接続が終了した
if (events.lNetworkEvents & FD_CLOSE)
{
printf( "Sever connection closed\n" );
closesocket(sd);// 通信が終わったらソケットを閉じる
WSACleanup();
WSACloseEvent(hEvent);// イベントクローズ
return 0;
}
// ソケットの受信バッファにデータがある
if (events.lNetworkEvents & FD_READ)
{
recvSize = recv(sd, buf, sizeof(buf), 0);
printf("Received %d bytes\n",recvSize);
printf( "Form Server->%s\n", buf );
}
// ソケットの送信バッファに空きができた
if (events.lNetworkEvents & FD_WRITE)// そもそもここのif文も違うかもしれません
{
//ここが分かりません
}