d
#include <WinSock2.h>
#include <iostream>
#pragma comment(lib,"ws2_32.lib")
using namespace std;
int handle_error()
{
WSACleanup();
return EXIT_FAILURE;
}
void server_info_show(PSERVENT server_info)
{
if (server_info == NULL)
{
cerr << "server_info:NULL,error:" << WSAGetLastError() << endl;
return;
}
cout << "official server name:" << server_info->s_name<<endl;
if (*server_info->s_aliases)
{
cout << "aliases list:" << endl;
for (char** list = server_info->s_aliases; *list != NULL; list++)
{
cout << "\t" << *list << endl;
}
}
cout << "port:" << ntohs(server_info->s_port)<< endl;
cout << "proto:" << server_info->s_proto<<endl;
}
int main(int __argc, char** __argv)
{
WSADATA wsa;
if (0 != WSAStart