HOOK API,隐藏注册表键值。

prettywolf 2003-08-22 10:25:05
Codeproject里有一个例子,是HOOK Advapi32.dll里面的RegEnumValueW这个API的,在XP下能很好地工作,但在98下却没有反应。
codeguru里的一个例子,用了相同的方法,只不过它HOOK了DDRAW.dll里面的DirectDrawCreateEx在98和XP下都能很好地工作。
我也试过将第一个例子的RegEnumValueW改成RegEnumValueA,但还是不行,98和XP下,这个函数的参数应该是一样的呀。
究竟是什么原因呢??
...全文
62 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
farfh 2003-08-23
  • 打赏
  • 举报
回复
今天不上班,俺也来凑热闹,呵呵,是否用到那个函数,你测试一下不就知道了,我机子没98,呵呵,不好试啊。
prettywolf 2003-08-22
  • 打赏
  • 举报
回复
你的意思是我没HOOK对这个API?
farfh 2003-08-22
  • 打赏
  • 举报
回复
对了,是DUMPBIN,你试一下
farfh 2003-08-22
  • 打赏
  • 举报
回复
建议你查一下REGEDIT.EXE调用的DLL,然后,使用VC下的那个什么DUMP什么的文件(我以前用过,好久没用,名字忘了)把可疑的DLL的API函数导出来,这样一般就可以抓出来了,我以前HOOK的时候就这么干的,呵呵。
prettywolf 2003-08-22
  • 打赏
  • 举报
回复
RegEnumValueW改成RegEnumValueA这两个我都试过了。
farfh 2003-08-22
  • 打赏
  • 举报
回复
应该把ANSI和UNICODE的两个函数都重载了。
prettywolf 2003-08-22
  • 打赏
  • 举报
回复
aa
prettywolf 2003-08-22
  • 打赏
  • 举报
回复
MSDN中对RegEnumValue的Require:Unicode: Implemented as Unicode and ANSI versions. Note that Unicode support on Windows Me/98/95 requires Microsoft Layer for Unicode.
会不会是这个问题?
prettywolf 2003-08-22
  • 打赏
  • 举报
回复
Win98下不可能列举注册都不用RegEnumValue这个吧?
farfh 2003-08-22
  • 打赏
  • 举报
回复
有可能啊,你先HOOK,然后用OutputDebugString来测试一下是否确实调用了这个函数啊,如果调用了,那就是这个函数啊,你自己测试一下不就知道了

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧