【发布时间】:2009-11-12 20:25:44
【问题描述】:
我一直在尝试使用 winsock2 包在 ms Visual Studio 2008 中执行此操作,但每当我尝试解析有效的输入 ip 地址时,我都会收到“无效 ip...”错误。我唯一的猜测是存在一些权限错误,但我真的不知道出了什么问题。请帮忙!
if(WSAStartup(MAKEWORD(2,2), &wsaData) != 0){
error("WSAStartup() failed\n\r");
}
// validate port
if( port <= 0 || port > 65535){
sprintf(msg, "Invalid port - %d. Ports must be between 0 and 65536\n\r",
port);
error(msg);
}
// validate ip
inet_addr = inet_addr(ip);
if( inet_addr == INADDR_NONE){
sprintf(msg, "Not an ip - %s\n\r", ip);
error(msg);
} else {
info = gethostbyaddr((char*)&inet_addr, 4, PF_INET);
if(info == NULL){
sprintf(msg, "Invalid ip - %s\n\r", ip);
error(msg);
}
}
【问题讨论】: