scgame
. ?$ i. T4 w& I+ t
+ {* S# c6 D. c; A! T$ }+ V你好,exttextout函数替换工具的功能部分的设计我写好了。 + h( E( Y; {# d D
请编写后放入gdi32.dll的proxy dll里,谢谢! + G& ~0 Q. ]0 |- n3 u
这个工具制作完以后可以通用于所有Exttextout输出字幕的游戏 ,非常有用。
' z% ]! i$ I( h- V2 _& j, B- w; w9 j
hook Exttextout 为myExttextout,对传入的字符串作如下变化。
5 ]. u D Q; Q+ E0 ?- b/ \* F- o先把hash变换为1个12位的字符串,比如eb013c782344,然后到sub.ini文件寻找key Y- Y, j$ h) T/ g: f6 C0 X
eb013c782344_cn,如有取出key值作为译文,如无,则在eb013c782344_en中写入原文, " `. G! ?. n" v' s+ d
在eb013c782344_cn写入一个空字符串,以备翻译。
( B$ n) V6 F4 i5 T, O
. m# w4 `2 W0 n' J$ O对了,为了不导致乱码,还要hook creatfont系列函数。
! ~+ ^6 @" \, \* x: p8 K" p把charset和字体修改一下,就可以出中文了。/ h0 U; N9 G5 W1 W+ |4 J
可以先用那个俄文游戏试试看。5 [) U6 Y! A8 v8 ~9 ?7 l
5 k7 m2 J: y3 S% d# j( V
有问题的话,请提问。 |