首页
社区
课程
招聘
bp WSARecv函数问题
发表于: 2008-8-5 17:12 7138

bp WSARecv函数问题

2008-8-5 17:12
7138
bp  WSARecv,断下来后接受的数据怎么看啊?以前用bp recv的时候,直接数据窗口跟随就可以了,可现在不知道该怎么找接受到的数据在内存的地址.请高手帮一下.谢谢!

以下是对这个函数的描述:
简述:从一个套接口接收数据。

          #include <winsock2.h>

          int WSAAPI WSARecv ( SOCKET s, LPWSABUF lpBuffers,
          DWORD dwBufferCount, LPDWORD lpNumberOfBytesRecvd,
          LPINT lpFlags, LPWSAOVERLAPPED lpOverlapped,
          LPWSAOVERLAPPED_COMPLETION_ROUTINE
          lpCompletionRoutine );

         
s:一个标识已连接套接口的描述字。
lpBuffers:一个指向WSABUF结构数组的指针。每一个WSABUF结构包含一个缓冲区的指针和缓冲区的长度。
dwBufferCount:lpBuffers数组中WSABUF结构的数目。
lpNumberOfBytesRecvd:如果接收操作立即结束,一个指向本调用所接收的字节数的指针。
lpFlags:一个指向标志位的指针。
lpOverlapped:一个指向WSAOVERLAPPED结构的指针(对于非重叠套接口则忽略)。
lpCompletionRoutine:一个指向接收操作结束后调用的例程的指针(对于非重叠套接口则忽略)。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 196
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有没有高手回答一下
2008-8-5 17:26
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
3
db [[esp+8]+4]
2008-8-5 19:21
0
雪    币: 184
活跃值: (65)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
4
断下来后是不能看到收到的数据的,因为还没有收,记得把函数执行完。
2008-8-5 20:11
0
雪    币: 267
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
这个如果填写完成例程,则需另外考虑
2008-8-5 21:36
0
雪    币: 164
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
这是异步接收,就是函数执行完,也未必看得到数据~
2008-8-5 23:04
0
雪    币: 5167
活跃值: (4037)
能力值: ( LV12,RANK:240 )
在线值:
发帖
回帖
粉丝
7
那就自己先看看该函数是否使用了重叠模式

如果使用了重叠模式,那就先记下buf所在,然后断那个回调函数(lpCompletionRoutine),等着看buf吧。

不过我倒是很少碰上这个函数使用重叠模式。
2008-8-6 10:08
0
游客
登录 | 注册 方可回帖
返回
//