看流星社区

 找回密码
 注册账号
查看: 2613|回复: 0

判断游戏是否掉线通用方法,DLL插入

[复制链接]

该用户从未签到

发表于 2014-6-22 11:01:18 | 显示全部楼层 |阅读模式
条件需求:
1.智辅以DLL形式插入到游戏进程
2.找到游戏主SOCKET 句柄


首先去看一次 recv API 第4个参数意义。
然后了解 MSG_PEEK 参数用意.
记得印象中百度小妞知道怎么用捏。

//看懂后看下面的代码



BYTE buf;
int recvRet;
while(TRUE)
{
//向SOCKET读取内容。一般只回读取到一个字节后 然后被游戏线程读走所有的缓冲。
recvRet = recv(sClient,(CHAR*)&buf,1,MSG_PEEK);
if ((recvRet == 0) ||(recvRet == SOCKET_ERROR))
{
//表示socket 连接已经中断了
break;
}
}

此代码需要执行到独立线程中,因为recv是堵塞函数.
至于如何通知智辅游戏断开了,方法太多。 互斥体 信号量 ,线程句柄。自定义消息。等等手段了。
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-5-29 10:45

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

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