标题: “高难度优化伴侣”正式发布了,39的玩家进来看看
性别:未知-离线 casm

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 4
编号 396642
注册 2010-9-19


发表于 2010-9-19 19:20 资料 短消息 看全部作者
我打开补丁,游戏就跳出,怎么回事啊。。。。。


精华帖
顶部
性别:未知-离线 casm

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 4
编号 396642
注册 2010-9-19


发表于 2010-9-23 21:27 资料 短消息 看全部作者


QUOTE:
1。游戏跳出bug
    对于这个bug,如果让我仔细浏览源代码,排查出问题之所在,恐怕是很困难的。所以,我希望凡是遇到跳出bug的玩家,给我发一份跳出前的用户存档。当然,该存档必须有bug再现性,也就是说,如果我使用该存档进行游戏时,有可能再现游戏跳出的bug。

打开游戏后,还没读档呢,一开优化伴侣游戏就跳出
或者先开优化伴侣,打开游戏后,过几秒也会跳出

我跟踪了一下,是在优化伴侣调用WriteProcessMemory的时候游戏直接跳出的,没有任何出错提示
试了光盘版和论坛里的硬盘版,都一样,可能和操作系统(我XP Sp2)有关


精华帖
顶部
性别:未知-离线 casm

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 4
编号 396642
注册 2010-9-19


发表于 2010-9-29 18:35 资料 短消息 看全部作者


QUOTE:
我跟踪了一下,是在优化伴侣调用WriteProcessMemory的时候游戏直接跳出的,没有任何出错提示试了光盘版和论坛里的硬盘版,都一样,可能和操作系统(我XP Sp2)有关
   我也是xp sp2系统。你要以管理员身份登录。你能不能跟踪到WriteProcessMemory()的写进程地址?还有调用GetLastError()一下,看看返回什么值。不过,估计是系统的问题,我也没什么好办法。

1. 是administrators组的,虽然用户名不是administrator

2. 我用OlyDBG跟踪的
00405BD3  |.  FFD7          call    edi                              ;  kernel32.WriteProcessMemory
这条语句执行完,San9PK就跳出了。

3. 接下来是
00405BD5  |.  3BC3          cmp     eax, ebx
00405BD7  |.  75 11         jnz     short 00405BEA
00405BD9  |.  FF15 0C004100 call    dword ptr [<&KERNEL32.GetLastErr>; [GetLastError

jnz跳走了,所以GetLastError没有执行到。
直到后面又调用了WriteProcessMemory(),才执行到GetLastError(),不过这时San9PK已经跳出了,所以GetLastError 返回5,这个5应该不能反映问题。
精华帖
顶部
性别:未知-离线 casm

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 4
编号 396642
注册 2010-9-19


发表于 2010-10-2 18:59 资料 短消息 看全部作者


QUOTE:
这说明,你的san9pk.exe在内存中的分布和我的不一样,应该还是系统的问题。我回去再看看到底是哪条语句导致游戏崩溃。另外,如果你有诸如processinfo.exe之类的内存分析工具。你单独启动39。然后用内存分析工具进行分析,将结果发给我看看吧。

processinfo.exe 哪有啊?《Windows核心编程》的源代码里面的?
精华帖
顶部

正在浏览此帖的会员 - 共 29 人在线




当前时区 GMT+8, 现在时间是 2025-2-16 05:57
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.009055 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP