挂海论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
 友情提示:文字/图片广告均非网站意见,请担保交易勿直接付款,由此产生的责任自负
玩游戏来117游戏网(H5不下载也能玩手游传奇,吃鸡,竞技都有)不懂社区·好资源不错过·各位资源站大佬欢迎来采集搬运IOS签名/udid证书出售/送证书加群1040456405 ██【我要租此广告位】██
... .
查看: 2962|回复: 1
打印 上一主题 下一主题

[交流] WSASend发送问题

[复制链接]
3正式会员
145/300

145

积分

39

主题

5

听众
已帮网友解决0 个问题
好评
-1
贡献
106
海币
2683
交易币
0
跳转到指定楼层
楼主
发表于 2015-4-13 16:14:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提醒:若下载的软件是收费的"请不要付款",可能是骗子,请立即联系本站举报,执意要付款被骗后本站概不负责。(任何交易请走第三方中介,请勿直接付款交易以免被骗!切记).

友情提示:文字/图片广告均非本站意见,请担保交易勿直接付款,由此产生的责任自负!!!↑↑



得到WSAsend发送的套接字后,直接 call WSASend 数据发送完成后,客户端就会断掉,服务端确认收到数据,和服务端无关,
代码:

        SocketHander:= Get_DWORD(dwbase+$74);
        if SocketHander = 0 then Exit;
        OutputDebugStringA(PChar(Format('SocketHander:%.8x,SendIndex:%.8x',[SocketHander,SendIndex])));
        FillChar(pBuffers,SizeOf(TWsaBuf),$00);
        pBuffers.len:= len;
        pBuffers.buf:= dword(@buf);

        FillChar(Overlapped,SizeOf(TOverlapped),$00);
        BytesSent.len:= 0;
        pBuffers.len:= len;

        asm
          pushad
            mov   edi,len
            mov   esi,dwbase
            push  0  // Callback = nil
            lea   edx,Overlapped
            push  edx
            push  0  //Flags
            lea   eax,BytesSent
            push  eax
            push  1
            lea   edx,pBuffers
            push  edx  //pBuffers
            push  SocketHander  //Socket
            call  WSASend  //call  ws2_32.WSASend
            call  WSAGetLastError
            mov   WSALastError,eax
           popad
        end;
        OutputDebugStringA(PChar(Format('WSALastError:%d',[WSALastError])));
***************************************************************************************************************
od调试:
游戏发送情况:


0012E638   00636478  /CALL 到 WSASend 来自 Game.00636473
0012E63C   00000638  |Socket = 638
0012E640   1A0B72B0  |pBuffers = 1A0B72B0
0012E644   00000001  |nBuffers = 1
0012E648   0012E65C  |pBytesSent = 0012E65C
0012E64C   00000000  |Flags = 0
0012E650   1A0B7280  |pOverlapped = 1A0B7280
0012E654   00000000  \Callback = NULL

|pBuffers:
1A0B72B0  1D 00 00 00 48 73 0B 1A                          ...Hs

|pBuffers.buffer:

1A0B7348  B1 FF 26 B4 49 07 DE 09 33 D6 BB 56 A0 47 F0 F9  ?&碔?3只V燝瘗
1A0B7358  04 62 A8 8C AD 86 C1 92 AC 1B 22 67 3D           b▽瓎翏?"g=J

***************************************************************************************************************
dll发送情况:



0712F494   06B96AA6  /CALL 到 WSASend 来自 06B96AA1
0712F498   00000638  |Socket = 638
0712F49C   0712F524  |pBuffers = 0712F524
0712F4A0   00000001  |nBuffers = 1
0712F4A4   0712F52C  |pBytesSent = 0712F52C
0712F4A8   00000000  |Flags = 0
0712F4AC   0712F530  |pOverlapped = 0712F530
0712F4B0   00000000  \Callback = NULL

|pBuffers:
0712F524  1D 00 00 00 B0 78 F3 06                          ...皒?..

|pBuffers.buffer:
06F378B0  B1 FF 26 B4 49 07 DE 09 33 D6 BB 56 A0 47 F0 F9  ?&碔?3只V燝瘗
06F378C0  04 62 A8 8C AD 86 C1 92 AC 1B 22 67 3D           b▽瓎翏?"g=...
***************************************************************************************************************
求解,这种以前用send调用游戏都没问题... WSASend调用就都这问题..最近又碰到。

联系我时,请说是在 挂海论坛 上看到的,谢谢!



上一篇:一个生成伪随机数的超级算法
下一篇:D3D的后台截图复制不到TBITMAP
免责声明:
1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关。一切关于该内容及资源商业行为与www.52ghai.com无关。

2、本站提供的一切资源内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。

3、本站信息来自第三方用户,非本站自制,版权归原作者享有,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

4、如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵犯你版权的,请邮件与我们联系删除(邮箱:xhzlw@foxmail.com),本站将立即改正。

16

积分

11

主题

2

听众
已帮网友解决0 个问题
好评
0
贡献
5
海币
78
交易币
0
沙发
发表于 2015-6-24 22:24:13 | 只看该作者
帖子不错 万一火了呢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明|Archiver|手机版|小黑屋|挂海论坛

GMT+8, 2025-4-5 06:14 , Processed in 0.095911 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.2

本站资源来自互联网用户收集发布,如有侵权请邮件与我们联系处理。xhzlw@foxmail.com

快速回复 返回顶部 返回列表