能力值:
( LV2,RANK:10 )
|
-
-
2 楼
PS大法,楼下继续.
|
能力值:
( LV4,RANK:50 )
|
-
-
3 楼
他木有调用GetVersion,而用了其他方法
|
能力值:
( LV3,RANK:20 )
|
-
-
4 楼
.........
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
楼主玩GTA4?
|
能力值:
( LV3,RANK:20 )
|
-
-
6 楼
不是,我不玩 GTA4...
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
调用了, 你无分析过吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
sysdm.cpl
|
能力值:
( LV3,RANK:20 )
|
-
-
9 楼
sysdm.cpl 调用了 GetVersionEx , 但显示的字符串“Service Pack 2”,不是用 GetVersionEx 来确定的, 也不是注册表。
请问, 你是改注册表吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
如果仅让它显示是"Service Pack 3",用资源编辑器改就行...
|
能力值:
( LV13,RANK:410 )
|
-
-
11 楼
Peb里面0x1f4h处也有SP的版号,不过那是一个Unicode的字符串。我这边调试sysdm.cpl的时候,他显示的SP版号似乎就是从这个字符串获得的。
他查询系统的SP版号也是使用的GetVersionExW,你钩挂的时候可能没改写OSVERSIONINFO.szCSDVersion成员变量....
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
当然最简单的是在注册表中改了,
看下面----------->
|
能力值:
( LV13,RANK:410 )
|
-
-
13 楼
楼主受还原软件的困扰,改注册表得等重启吧?所以还是Hook GetVersionExW算了
不过如果你Hook了GetVersionExW就不在再挂ExA了,他会调用ExW版的。另外如果想更隐蔽一点,可以挂上ntdll.RtlGetVersion,或者自己来以暂停模式启动进程,然后把它的Peb里面的SP版号数字和字符串全部改了再让他继续运行好了。这样应该是效率最高的方法了。。。
|
能力值:
( LV3,RANK:20 )
|
-
-
14 楼
你好, 我改了的啊, 我还做了一个程序一测试结果, 结果如我所改和, 我自已在勾了 GetVersionExA , GetVersionExW 的情况下调用 GetVersionExA, 已确实是按我指定的返回了“Service Pack 3(OSVERSIONINFO.szCSDVersion)”.....
|
能力值:
( LV3,RANK:20 )
|
-
-
15 楼
谢谢, 这个方法是好, 但对游戏不太好用, 因为这个游戏有很多进程都调用了 GetVersionExW, 我以前也试过手动直接改游戏 的 GetVersionExW 返回结果, 当时好像是改了游戏的成 4 个程序, 但还是不行, 所以改用 HOOK........
|
能力值:
( LV3,RANK:30 )
|
-
-
16 楼
我觉得是不是先看看它调用了哪些函数,然后再勾
我是新手
|
能力值:
( LV3,RANK:30 )
|
-
-
17 楼
另外侠盗飞车4早就过时啦,现在都玩《侠盗飞车5:圣地安列斯》,很不错,可以联机的,有很多服务器
|
能力值:
( LV3,RANK:20 )
|
-
-
18 楼
我想解决问题, 不是玩....
|
能力值:
( LV15,RANK:670 )
|
-
-
19 楼
直接调试游戏,在它判断版本的地方给改一下
|
能力值:
( LV3,RANK:20 )
|
-
-
20 楼
改过了, 没用!!!
|
|
|