'*************************************************************************** '* '* MODULE NAME: API hook 演示 '* AUTHOR & DATE: tt.t '* 23 April 2007 '* E-Mail: ttui(AT)163.com, sohu邮箱垃圾邮件太多已经不用了 '* '* Usage: 运行FrmHookMain窗口,点补丁,然后点击FrmHookMain窗口外的地方就会发现 '* 不再有dudu的声音了,事实上excel中原来会发出dudu声的功能都不会再发声了 '* '* 这些代码没有用处,完全是技术演示之用 '* '* '* DESCRIPTION: 在写中文字符串转换为拼音函数(HzToPy)过程中,第一次发现VBA功能的强大. '* 于是这次尝试将其他语言中比较好写的API HOOK移植成VBA代码, '* '* 总的来说VBA的写法和其他语言区别不大,但VBA毕竟不太方便,代码必须放在标准模块中. '* 再有就是对指针的支持实在有限,于是最后选择了一种写起来最简单的API hook方法, '* 就是所谓的陷阱法.如果你不太清楚什么是API HOOK,请求助于google. '* '* Theory: 这里就不说API hook的方法了,都是传统方法没什么可说的. '* '* PS: 条件限制没有在Vista系统上测试,听说Vista有些机制 '* 可能影响API hook,暂时没机会测试就先这样吧~ '* '* *64位操作系统下面的API hook代码肯定运行出错,就不要测试了 '* '* '* 原来这段代码是用来解除VBA工程密码保护而写的. '* 但真正发布出来时只能改成这些用处不大的代码,是因为 '* ExcelHome论坛禁止发布解密有关的文章,所以将那些"敏感的"功能被 '* 去掉了.(被删帖+1为代价才知道这个规矩:() '* 我尊重ExcelHome论坛的规则,因为他提供了一个很好的平台供大家交流 '* 但在这个vba工程密码破解软件满天飞的环境中,恪守这种并没有太大意义的 '* 规则我并不很认可.不过没关系,我也不是为了破解而写这些代码的, '* 只是因为解除VBA工程密码保护是API hook的一个很好的应用而选择写 '* 这个功能. '* 更多的话也就不写了,怕再被删:) '* '* 以下代码仅供交流之用,运行前请保存好重要文件,运行后可能会导致excel崩溃(虽然几乎不会发生), '* 请谨慎尝试! '* 本人不对因运行下面代码产生的excel崩溃及数据丢失等后果负责. '* '* '***************************************************************************
oUq22HqU.rar
(20.38 KB, 下载次数: 993)
|