请问当截获了WINSOCK的connect调用后如何分离出主机地址和端口?
解决方案 »
- 求方程自动转换成库
- 怎样实现这种时间edit
- GetDibits返回8位位图,如何获得最佳调色板。
- 今天荣升2星级用户,心情高兴,散分。
- [求助]做windows service程序
- 如何在自写的浏览器种实现打印,另存为,复制,加入收藏夹等功能
- 请问一个程序PostMessage后怎么让它进入等待状态,不去处理该消息??
- 如何获取打印机缓冲区的状态,用什么函数实现
- 如何用VC6.0对freepy3.1进行调试
- 8位bmp灰度图转化为1位二值图,代码有点问题,求大神指点
- 有没有多线程编程的模式?
- ◆ 200分~~!!!请问Xtreme Toolkit的Dock类的SetTheme如何设置才能使Dock像Visual Studio 6?
getsockname得到本地端口、地址,getpeername得到对端端口,地址。socket是connect的第一个参数,所以在截获此调用的时候可以从stack中找到这个值。
SOCKET s,
const struct sockaddr FAR * name,
int namelen
);当截获后SOCKADDR_IN里面怎么找出将要连接的主机地址和端口?
(sockaddr_in *)name->sin_addr是主机地址,可用楼上所说inet_ntoa函数得到字串形式。
(sockaddr_in *)name->sin_port是端口地址,注意转换字节顺序。ntohs(...)
用getpeername()。
UNIT iPort;
pSocket->GetPeerName(strIp, iPort);