反转 DDRAW 应用程序

逆向工程 视窗 ollydbg 互操作性
2021-07-01 14:09:38

我有一个旧游戏,我想提高分辨率。问题是这个游戏很古老并且是用DDRAWand编写的GDI。这个应用程序有一些奇怪的地方,首先从入口点开始,程序所做的就是创建进程。其次,确实执行了所有其他代码,只是我无法打破它(使逆转过程非常缓慢)。

有没有人试图逆转DDraw应用程序?

到目前为止,我已经扩展了分辨率,应用程序仍然显示默认分辨率,只是推到左上角,一切仍然是 640x480 并且被黑色包围,但很酷的是我可以单击黑色区域中的 640x480,然后单击对象并移动到它们。有谁知道如何解决这个问题?

另一件事,我在这个(EP 之外)代码区域设置什么样的断点似乎并不重要,程序永远不会在那里中断。有什么我在这里想念的吗?

如果有帮助,我可以尝试想出一张图片作为示例;如果没有人理解我是如何描述分辨率的。

另外,我只看到一个调用DirectDrawCreate ,它看起来像指向一个对象或窗口,但我不能完全分辨,因为我不能在这里中断。

1个回答

DDRAW 是一个基于对象的接口。DirectDrawCreate 创建 DDRAW 接口对象(基于作为参数提供的 GUID)。关于黑色区域,很可能渲染部分使用内部较小的分辨率。能分享一下游戏名字吗?