首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

超难-delphi 怎么实现打开其他程序时就改变其原始的类名

2012-03-03 
超难---------------delphi 如何实现打开其他程序时就改变其原始的类名。我看到一个外挂,他实现多开游戏的

超难---------------delphi 如何实现打开其他程序时就改变其原始的类名。
我看到一个外挂,他实现多开游戏的原理就是通过外挂打开程序时,游戏的类名就改掉了。

我看他就是一个exe的程序,没有相关dll,应该不是hook吧

请教大家又什么办法可以实现这个功能

我网上找了好久都没找到相关的说明。。。

[解决办法]
你怎么就确定它是改类名实现多开?

问题提得有点....

所谓类名是指windowclass的成员className吗?
[解决办法]
一般程序限制单例运行都是用全局互斥对象做到的,看能否从这里下手。修改类名无法做到多开。
[解决办法]
可從全局互斥入手;與否,可能有點難度...
[解决办法]
运行时修改窗口的ClassName?
[解决办法]
我想到两个办法动态修改类名:
1. 运行前修改一下EXE文件里存储的的窗口类名,不过一旦EXE被加壳或者窗口类名是动态生成的,就没办法了。而且对于多开的情况,也不适合。
2. HOOK 该进程的 RegisterWindowClass函数和CreateWindow函数,把函数的参数改掉。感觉应该比较可行。

热点排行