欢迎光临散文网 会员登陆 & 注册

在Windows 11上游玩Tinker

2023-08-21 15:46 作者:D0000000000  | 我要投稿

Windows Vista Ultimate 有个很不错的游戏叫Tinker,可惜仅限Windows Vista Ultimate游玩,本文记录了为了让Tinker 在Windows 11 上运行对Tinker 做的修改。


启动失败现象

此游戏仅适用于Windows Vista® Ultimate。

无法开始游戏

根据这个提示猜测,如果想要游戏运行,需要干掉游戏的系统版本检测。


干掉版本检测

这里使用IDA Freeware进行反编译。

首先IDA打开游戏的主程序Tinker.exe,查找游戏调用的外部接口,尝试寻找获取Windows 版本的API。

GetVersionExW

有一个函数名叫GetVersionExW,跟着函数名找到了调用的地方

此处即为判断Windows 版本号的地方。

查看伪代码并查阅GetVersionExW和GetProductInfo的文档,推断v48为是否是Windows Vista,v43为是否是Ultimate。若需要在Windows 11上运行,VersionInfomation[8],即dwMinorVersion应当为非0,v43的1和28为PRODUCT_ULTIMATEPRODUCT_ULTIMATE_N,均为Ultimate的产品类型,需要修改为对应Windows 10的产品类型,例如PRODUCT_PROFESSIONALPRODUCT_CORE,或修改跳转条件为任意条件。


修改代码

修改此处jnz和jz跳转,使跳转条件永远不成立,跳过Widows 版本不匹配的分支

一种修改方式
对应的伪代码

修改完成后Patch一下,运行查看效果

运行非常完美,甚至可以直接识别我的XBOX手柄,不过这游戏手柄体验一般。至此,Tinker在Windows 11上完美运行,功能正常,可正常游戏。

在Windows 11上游玩Tinker的评论 (共 条)

分享到微博请遵守国家法律