|
昨天晚上通过ce-star解决700w后发觉非常不稳定./ I; _# [" M5 Y
# b& j1 y3 t! A% F1 ~& @% j
然后和K大聊天后试着分析一下ce-star的工作原理$ O" ^" Q. s, T4 l9 }" v; u- z, p- [7 ]% i
ce-star安装包里面的两个重要文件$ U9 ~% v1 k5 N* k
tilmsghok.dll 和 SMSProvider_CDMA.dll9 L6 \' H- p8 a
tilmsghok.dll分析后发现应该是用coredll.dll 来钩住 TelephonyInterfaceLayer.dll 的
, Z) m6 \2 d3 V4 J用IDA分析tilmsghok.dll 发现几个地方出现重要函数 D! ?% Z' @' R/ P1 k
DisableThreadLibraryCalls% q1 c' f, v; D
SetKmode和SetProcPermission: H; n& S2 b- Z* Z4 K+ z) \
下面文章有说明上面函数的作用: [$ y. T/ k1 f1 x- L! A" F
http://www.chinaeda.cn/show.aspx?id=13498&cid=49& ~1 u: p" n- | B
Windows CE跨进程内存注入之实践& F2 Y& e" T1 B9 X! B- t
3 A$ q6 v% _7 ]. a因此猜想工作原来是用dll来钩住TelephonyInterfaceLayer.dll 里的相关程序影响发送和接受sms时的处理
% N: M* e; z' P( B3 x* X. t# J@2008-6-17 by yourhe 第一次修改# q! ?# r8 D9 F! z
: P M+ o, N' k& `' m$ y* H7 N+ w9 ?/ V2 |
通过ce-star 安装文件cestar.set发现
# n4 R: |4 O7 w4 I4 z* I; E/ [;[Registry.Common:%WINDIR%\TelephonyInterfaceLayer.dll]
; Z7 a9 k. ?& H1 I( @' L;HKEY_LOCAL_MACHINE,Comm\Cellular\SMS\Protocols\Text,"DLL","SmsProvider_CDMA.dll"8 i2 g# m# b6 @4 `* T7 p1 E0 `5 p
Cellular\SMS 证明应该是发送接受短信是调用SmsProvider_CDMA.dll 改变文本编码 然后通过tilmsghok.dll 改变发送接受结果" ?$ S0 K" P; l3 Y$ [
@2008-6-17 by yourhe 第二次修正
# V6 e% j, C2 a4 y2 d8 I+ K8 S/ m6 k3 ~6 y; ?8 \! A
目前通过ce-star发送短信非常不稳定,发送的界面内按什么键都tmail.exe报错退出.: h- n1 j: C$ D% n" r( n, s
Cellular\SMS说明了调用了什么与tmail.exe冲突.0 j/ Z1 U" _# _1 A6 y/ b! S
提供一个思路. 能否切换tmail.exe的加载顺序 来改善重启后又不能发短信的问题?4 k# O' S, U1 f _' i
@2008-6-17 by yourhe 第三次修正
4 N; g( W! m0 A, J
3 M0 ?# b8 |4 o希望各位有兴趣继续改进700w短信功能的兄弟给点意见或者建议,或许可以通过大家的努力完全实现中文短信
$ |3 J( @" n7 u" ~7 }1 w3 r! [8 p. L" p* ?' U
[ 本帖最后由 yourhe 于 2008-6-17 22:19 编辑 ] |
评分
-
查看全部评分
|