更改

跳转至: 导航搜索

Player.exe/zh

添加1,006字节2024年1月23日 (星期二)
无编辑摘要
目前全球流通的Ballance中,几乎所有的Player.exe都是修改版,我们不知道是谁修改了它,但是这种修改的确让Ballance被更多人玩了。目前已知,至少在2005年1月,这种版本已经开始传播。对于原版Player.exe,如果在启动时不插入光盘,那么其会弹出一个窗口要求你插入光盘,从而拒绝启动。检测的原理是检测系统中是否有一个名为Ballance的,类型为光驱的磁盘编号。对于是否会读取里面的内容,尚待探究。
 
== 调试卡顿 ==
 
在Windows中对Player.exe附加调试器进行调试时,若暂停调试,则可能会发生鼠标移动卡顿的情况,极大地影响了调试的便利性。据chirs241097推测,可能是某些Callback(回调)或同步对象等未注销。后经过Swung 0x48的查找,chirs241097的实践验证,得出可能是因为Ballance通过调用<code>SetWindowsHookEx(WH_KEYBOARD_LL, ...)</code>使用了一个底层的键盘Hook,所有键盘鼠标操作均需要通过Ballance所创建的回调处理,而此使Ballance被调试器暂停,无法得到处理,因此Windows在等待默认时间的超时后,取消处理,最终造成了卡顿。
 
解决方案<ref>https://stackoverflow.com/a/64018775</ref>则是打开注册表编辑器,转到<code>HKEY_CURRENT_USER\Control Panel\Desktop\LowLevelHooksTimeout</code>(值为DWORD类型),将其改为1即可。此数值代表了之前所说的超时等待时间,单位为毫秒。
 
== 参考 ==
 
<references />
{{游戏文件}}
1,132
个编辑

导航菜单