受斑竹XYZ之托,对BCYJ的bik外挂字幕工具做一下简要分析。) ~ \, U( D" e# G
' R% K: [" y; U: N/ ~这个工具主要用了DLL代理技术,又叫特洛伊DLL技术.
4 s- y. F) F. w2 _3 Z. B6 v' y由于现有的windows中DLL的使用都没有用数字签名,所以我们可以把原来的DLL改名,自己做一个代理DLL,把无关函数原样转发,要修改的函数修改后再转发给原DLL.代理DLL必须要有和原DLL函数100%相同的导出函数。
3 K0 \& t; ?% S7 h8 D0 E! v" l; A+ ?; x
BCYJ自己在播放bik的关键DLL的基础上制作了一个代理DLL,在关键函数中加入了显示中文字幕的功能。基本原理就是如此。具体实现细节还是比较复杂的,内嵌了汇编。
+ R7 H+ [! R$ r! u" u- _/ D& k! C6 v9 \2 K) a
个人觉得这种方法还是相当不错的,和我用的HOOK方法类似。
: T: s3 i" C) s8 \* D$ d4 @6 q( ^5 D3 ]% p$ E
不知道当时有测试图片没有,想看看实际效果。 |