struct sockaddr addr;
struct sockaddr_in* addr_v4;
int addr_len = sizeof(addr);
//获取local ip and port
ZeroMemory(&addr, sizeof(addr));
if (0 == getsockname(m_socketHmv, &addr, &addr_len))
{
if (addr.sa_family == AF_INET)
{
addr_v4 = (sockaddr_in*)&addr;
char *buf = (char*)malloc(INET6_ADDRSTRLEN);
memset(buf, 0, INET6_ADDRSTRLEN);
inet_ntop(addr_v4->sin_family, &addr_v4->sin_addr, buf, INET6_ADDRSTRLEN);
int nLocalPort = ntohs(addr_v4->sin_port);
}
}