设为首页收藏本站官方微博

shane007 请进。

[复制链接]
查看: 1675|回复: 4
打印 上一主题 下一主题

shane007 请进。

跳转到指定楼层
楼主
发表于 2009-2-8 21:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

shane007 请进。

我发两张改变字体函数前后的图像你看看。。。就是CreateFontIndirectA和GetStockObject
7 j7 |, M" @8 r2 M2 U7 A修改成中文宋体。。! x1 a0 u. |! h. ]& \

: Y! H; Q9 `, G6 j# Z: o以下是我用字体函数软件测试后的结果。
! r. n' _& X6 M5 N
7 ~7 [5 U8 Q& e' RGetStockObject [CallFrom:0041445C]2 T( K. |9 }: }' f, ]% w( `0 t
(DWORD:00000004)
) j3 Z' h1 z; u# O# b) \GetStockObject returns: 1900011
& |( E' r5 E( z9 M7 C! K2 WGetStockObject [CallFrom:0040F306]
4 U* z, N0 _/ k6 G8 D: a6 N(DWORD:00000004)
6 P7 Z1 y1 M# u7 W! C8 cGetStockObject returns: 19000118 i5 F. M, `9 D1 L+ p! n* L% z
CreateFontIndirectA [CallFrom:00421F6C]
( u& F% w. j9 E& k(LPLOGFONT:0048AD38:FFFFFFF0_00000000_00000000_00000000_00000190_00_00_00_80_03_02_01_31:"MS Mincho")
) z- G% p" i' n  P/ L# ?CreateFontIndirectA returns: B90A0E6F
: V" T9 P" l/ j0 h1 E- hGetStockObject [CallFrom:004221DB]
! P6 W* p5 [$ L. B% k) ]) r3 f1 j(DWORD:00000000)
9 H8 ?. R! v* P; ?- e3 Y1 iGetStockObject returns: 1900010- D/ P6 a3 c+ f4 w) X: Y
GetStockObject [CallFrom:004221DB]
, K6 N6 A! W6 ]' ]8 d$ s" j2 C(DWORD:00000000)2 F, p0 u' ^+ h& \
GetStockObject returns: 1900010
2 V$ W( \! I, D# x0 J8 EGetStockObject [CallFrom:004221DB]* l. W2 J- s0 E7 E9 Z
(DWORD:00000000)
) R7 K! a( A0 d( C0 DGetStockObject returns: 19000101 W5 n* l7 i1 k5 y
GetStockObject [CallFrom:004221DB]9 a$ t/ b. s+ H  b7 H
(DWORD:00000000); N9 @' D9 n, ~( K; E
GetStockObject returns: 1900010
. s) Q; n! _5 ]+ o8 g# h9 C% PGetStockObject [CallFrom:004221DB]
* d) g' g2 ^# d* d, v' F4 g(DWORD:00000000)
6 `3 L8 F: ^# U' }6 S" jGetStockObject returns: 1900010  s. A9 o3 n. P7 L! e! G: q' n1 ~
GetStockObject [CallFrom:004221DB]: u6 v! [" I( Z1 F8 O* f& B
(DWORD:00000000)" \) C& [4 j1 N) g
GetStockObject returns: 1900010
. s/ R$ s( R' @/ H) b  c4 ~GetStockObject [CallFrom:004221DB]
# Z, \5 l# ^4 D. T(DWORD:00000000)
) C9 y# D) ~% q( p8 ]; [GetStockObject returns: 1900010
. |6 G3 ~0 F/ w! P* K0 m9 fGetStockObject [CallFrom:004221DB]
* ~3 _$ m  @6 \/ H(DWORD:00000000)
8 {/ I+ O9 N1 n- E$ c. W+ I, zGetStockObject returns: 1900010
% J, }  s6 F% f4 c4 CGetStockObject [CallFrom:004221DB]) Z9 x+ \( X+ ?: o! S: h
(DWORD:00000000)/ U! z4 h- ~+ a* e3 c  c% e
GetStockObject returns: 1900010, j" S6 p$ N4 }# R+ I" `
GetStockObject [CallFrom:004221DB]
, X, C6 f3 I) F5 Y' l$ \; s. k/ A(DWORD:00000000)
0 b8 @0 I: b6 a* V% K7 R# d" Z' ZGetStockObject returns: 1900010( P) K8 r; d* f6 t" p- u
GetStockObject [CallFrom:004221DB]9 N* i) r5 `) ^8 ?! `: L. o
(DWORD:00000000)! m2 w% o- R2 [
GetStockObject returns: 1900010
) J: x4 W! {: i- ]) N8 DGetStockObject [CallFrom:004221DB]; q7 L) z. b# k" g! c( n7 o
(DWORD:00000000); x+ k+ f! |5 ]) U# L
GetStockObject returns: 19000102 g' t1 Q7 _. Y: Y" A+ {1 ^$ a
GetStockObject [CallFrom:004221DB]
( a& O. a5 x" [  ^0 Y(DWORD:00000000)! K, L  g! j7 _: W
GetStockObject returns: 1900010( }8 f1 e0 `/ y) K
GetStockObject [CallFrom:004221DB]6 [3 t2 A. q1 S
(DWORD:00000000)% a8 i) y0 i, e
GetStockObject returns: 1900010, I. ~7 x  `0 e: X
GetStockObject [CallFrom:004221DB]
( w) Z: K  y/ x' f9 n$ [(DWORD:00000000). J$ H2 v9 d2 }& }3 d
GetStockObject returns: 1900010
+ @8 L* K5 {0 z5 FGetStockObject [CallFrom:004221DB]& s9 J. w, {0 W+ X2 X1 m
(DWORD:00000000)
4 X3 c! v0 f( h* j( {$ q2 n6 _* D% vGetStockObject returns: 19000102 {5 b: V' |# ^* i7 p  Q7 [
GetStockObject [CallFrom:004221DB]
) J% S; ^/ f. s, E2 t4 y/ I/ g(DWORD:00000000)8 |2 H( g& `" Y  B5 {# V! a" z0 V
GetStockObject returns: 1900010/ t( y6 p5 r- V" c
GetStockObject [CallFrom:004221DB]& Z" T! D& o% R( d! e4 |, }- |
(DWORD:00000000)
. d* r. r* p; {5 t! xGetStockObject returns: 19000103 z, I1 @0 t, H  `) M3 Y
GetStockObject [CallFrom:004221DB]1 B# r- C9 c! |+ E' Q9 {
(DWORD:00000000)
# A6 n5 I) F# Z5 |) y) u7 K/ ]3 KGetStockObject returns: 1900010
) ^, L; _% P5 `GetStockObject [CallFrom:004221DB]0 X. ?, P/ I3 l
(DWORD:00000000)- D! ?9 {8 @/ ?' l, U& y
GetStockObject returns: 19000109 V' P  ~7 }( b/ t- o8 O) a- m. [
GetStockObject [CallFrom:004221DB]
) x9 j/ E+ X/ X: Y( I: S1 p(DWORD:00000000)' S$ d+ F7 |! F" u1 X
GetStockObject returns: 1900010" N( r7 \' x2 _' @4 Y, j
GetStockObject [CallFrom:004221DB]
- g$ }2 f  Q' K6 b6 i* T- W$ W(DWORD:00000000)
7 u) N' u% \8 SGetStockObject returns: 1900010
, c8 N5 A$ W: N) G5 iGetStockObject [CallFrom:004221DB]
4 \* K0 ^  ?3 {(DWORD:00000000), K4 i0 k3 i# k+ K. @
GetStockObject returns: 1900010. r" p, v( R( z9 P8 m4 x
GetStockObject [CallFrom:004221DB]
: I& H) p& z  c8 n(DWORD:00000000)& T! W* j4 U* G2 O" E2 f5 r  P
GetStockObject returns: 1900010+ }# z' ?) D! V! N
GetStockObject [CallFrom:004221DB]
# F1 f1 ~7 R9 W8 n/ W  V(DWORD:00000000)3 w, C0 J2 S' K3 A- J2 G0 i4 S
GetStockObject returns: 1900010
* S: O2 a2 _' S# {GetStockObject [CallFrom:004221DB]
$ b$ C# H" c2 n% a(DWORD:00000000)
8 o4 F& _5 C3 t9 a: {' ]GetStockObject returns: 1900010
4 o1 M6 e' X% F9 uGetStockObject [CallFrom:004221DB]
# a; u4 K4 i3 G# x. ](DWORD:00000000)& ^4 e9 W' [0 F: c; _9 A
GetStockObject returns: 1900010( U& H5 F* l+ b) X6 y; s4 l/ r
GetStockObject [CallFrom:004221DB]2 I! G6 G/ A: y
(DWORD:00000000)# ?# N# |. |* u/ V
GetStockObject returns: 1900010
) O: _$ i$ S: P) e% C* k; bGetStockObject [CallFrom:004221DB]: J8 U% i; v8 h9 B8 R. V
(DWORD:00000000)7 L  b1 n; {0 M1 g! ^* |
GetStockObject returns: 1900010: n6 ?$ q2 D* P4 g% l
GetStockObject [CallFrom:004221DB]
% A# D/ V5 B, ~; N7 Y' p* W6 c(DWORD:00000000)
' _) _0 a' S$ l$ BGetStockObject returns: 1900010
" ]/ Z/ ]0 N9 v/ V6 nGetStockObject [CallFrom:004221DB]. c* E6 G/ l5 w5 p0 O( I
(DWORD:00000000)! j7 D$ ~5 p) b6 ?5 a4 F1 `
GetStockObject returns: 1900010& L; H1 ~9 R# M9 A+ r
GetStockObject [CallFrom:004221DB]( G+ z3 b3 M" W5 s0 {. W
(DWORD:00000000)
/ j% {( ?8 S0 C: H0 f- B# d( IGetStockObject returns: 1900010
* K3 a! c2 H( G3 dGetStockObject [CallFrom:004221DB]
, y5 r6 m/ m$ n( V( x& r* P; ^(DWORD:00000000)
. _' W" d( L5 X( h: GGetStockObject returns: 1900010
$ h4 w, ]. r1 l5 H0 d( H% YGetStockObject [CallFrom:004221DB]! ~0 Z5 G; H1 a, p3 p+ {: c1 T
(DWORD:00000000)
- @+ Z2 g2 V( a1 ^GetStockObject returns: 1900010% Y( T4 m8 \9 _& r( q: z
GetStockObject [CallFrom:004221DB]
: K$ _- e$ D: M- E4 X! o(DWORD:00000000)* N$ R9 _% [* H6 p6 g
GetStockObject returns: 1900010
3 E5 S: P0 W# ~# N* G3 a  |GetStockObject [CallFrom:004221DB]
9 S' q; M- N. F' |; v. S) Z(DWORD:00000000)
" N9 H; p- i9 DGetStockObject returns: 1900010! D5 `( E1 w- b% W* u
GetStockObject [CallFrom:004221DB]
2 k  R5 ]. d9 L  E5 o(DWORD:00000000)- l* l2 o, F# V4 X6 [# w1 [2 v
GetStockObject returns: 1900010) Q/ J1 S# N, I7 b: G9 X
GetStockObject [CallFrom:004221DB]& u- s! g: f) M7 \3 C4 o  e
(DWORD:00000000)
& J: W5 S8 P: [% vGetStockObject returns: 1900010, w6 p* k5 S( x% T* C
GetStockObject [CallFrom:004221DB]9 ^# `" y) X' @
(DWORD:00000000)
) l( j# @$ Q+ R& IGetStockObject returns: 1900010
" W' Z, E; d- n4 _. o. v  ?GetStockObject [CallFrom:004221DB]
! Q7 l; m1 {# r7 s& {- I(DWORD:00000000)
# w+ x! L# g3 B8 _2 bGetStockObject returns: 1900010
0 F& U% R) W2 }. L- c. hGetStockObject [CallFrom:004221DB]2 t3 f6 x- H8 C# l0 a& D% e7 k2 i: K
(DWORD:00000000)
5 i* T& a, Z+ h5 U1 _. LGetStockObject returns: 1900010
& P) a' W& R8 W0 PGetStockObject [CallFrom:004221DB]
: I; W2 w. c) s! O; [(DWORD:00000000)2 ]& L5 i% V( u
GetStockObject returns: 19000108 _6 r: [) d' k! I
GetStockObject [CallFrom:004221DB]' M2 _; `* Z5 ]+ l
(DWORD:00000000)
1 {/ B, ?( |8 f  C# R! \/ _& n7 FGetStockObject returns: 19000100 w- q) K( t, E7 f! e/ V4 M
GetStockObject [CallFrom:004221DB]. A: S; w5 c* j6 O
(DWORD:00000000)- g3 ]/ v6 o5 x1 r. b1 `3 m
GetStockObject returns: 1900010
4 c; u4 S, |, a$ C1 NGetStockObject [CallFrom:004221DB]- F! v) i% i# ]
(DWORD:00000000)& p3 c2 c: E2 W% ~0 h* {
GetStockObject returns: 1900010
% c" v( P# o/ @. w) L1 qGetStockObject [CallFrom:004221DB]
7 h* H6 p8 Y2 t8 G  R(DWORD:00000000)% u3 Z' r9 k6 K; P0 B
GetStockObject returns: 1900010
. h6 b2 j# q! i/ a2 [GetStockObject [CallFrom:004221DB]( {% q" A; y0 x# y7 L' s9 Q
(DWORD:00000000)
. b: N) C5 x( o0 U4 I2 X9 q, QGetStockObject returns: 1900010' M: F2 a9 z" }2 j7 X0 ~6 J) t1 o; B& E+ E
GetStockObject [CallFrom:004221DB]
! I1 {  o% G2 y(DWORD:00000000)
# g6 Z1 u) e, ]* ?GetStockObject returns: 1900010
, E8 w, l1 n" T0 ^1 hGetStockObject [CallFrom:004221DB]
/ Y( A) d6 O8 _# f% i(DWORD:00000000)
+ {/ |. ]4 X+ sGetStockObject returns: 1900010
6 c! Z& G' _# _+ v# j/ P0 C  PGetStockObject [CallFrom:004221DB]9 P- V# r$ D/ w3 r" e# r+ B4 }
(DWORD:00000000)
- i# I' E5 O9 g5 M9 a+ hGetStockObject returns: 19000102 Z; ^: s8 u* Y& e% q. O. i
GetStockObject [CallFrom:004221DB]
! n7 P- N: o9 z' O+ e(DWORD:00000000)
+ ?  {) i4 G/ p3 h8 B: VGetStockObject returns: 1900010- P8 }; Q+ m5 A: s0 S
GetStockObject [CallFrom:004221DB]
; X, U8 Q( f+ a* u(DWORD:00000000)) }+ e. n- C, i7 t5 @( {1 r) g, b
GetStockObject returns: 1900010
! e1 c; X/ B/ i: o/ ]: }# k8 H; x9 aGetStockObject [CallFrom:004221DB]$ I* X* D" n. N* Y% r8 i/ y
(DWORD:00000000)7 B& d& L6 Z/ F1 ?0 K+ B
GetStockObject returns: 1900010
: V9 J- `/ t1 R6 }( T9 TGetStockObject [CallFrom:004221DB]
! a8 G9 i: i0 s1 s+ M(DWORD:00000000)
: i9 T, @. f, D5 |3 Z0 O) @0 o  TGetStockObject returns: 1900010
$ I0 o8 {( I* C( ?: IGetStockObject [CallFrom:004221DB]
! P" K7 C/ U( C$ U(DWORD:00000000)# r& e. q3 s/ u7 j' c
GetStockObject returns: 1900010
! `* Q" @& v  x. Z! JGetStockObject [CallFrom:004221DB]& K9 h5 I6 B6 b2 ?1 w0 N
(DWORD:00000000)' [+ T9 Z0 |& U* y  K; B
GetStockObject returns: 1900010
# y; }/ @2 [) n0 J, {& GGetStockObject [CallFrom:004221DB]/ \! [- F* ]2 \* n
(DWORD:00000000)
/ P, i; \  c1 z' z6 JGetStockObject returns: 1900010
9 n+ j% E  x( I# ~: H( M' mGetStockObject [CallFrom:004221DB]
4 T% M: M  R, h1 o( @  x(DWORD:00000000)0 Z: y) O" R5 q" |' J0 V
GetStockObject returns: 1900010
5 X7 I- O. V! F6 B7 g9 yGetStockObject [CallFrom:004221DB]
& {* k0 w7 l& r/ _3 S- e(DWORD:00000000)
: R1 _. w* m0 f8 x  \/ D5 NGetStockObject returns: 1900010
+ f, o! S9 `& e  r+ E2 T! u. J9 ?GetStockObject [CallFrom:004221DB]# t. l, p( g2 m* b/ F/ M2 [* k8 {
(DWORD:00000000)2 g8 f5 C( }8 y: r  r# F
GetStockObject returns: 1900010
7 Z/ ?. Q9 E4 I* ]' y* s$ aGetStockObject [CallFrom:004221DB]
+ o+ j% D5 m, }/ x; R(DWORD:00000000): ~- S. ^7 q  W5 v! g0 O
GetStockObject returns: 1900010
" Y' N! M" X2 [GetStockObject [CallFrom:004221DB]6 z: t- m7 D5 I" \4 ~
(DWORD:00000000)* n3 F# }1 ^5 V3 f4 }3 ^
GetStockObject returns: 1900010$ c1 m1 g4 f+ ]( V) f& ?& `
GetStockObject [CallFrom:004221DB]
' b' _8 E" n1 Q: H7 Y/ l(DWORD:00000000)8 y# `- u3 ^6 H+ r) x
GetStockObject returns: 1900010$ i$ j; _$ H; e: Y; c" U
GetStockObject [CallFrom:004221DB]
0 F7 p- X  d6 x+ g6 C. X(DWORD:00000000)" ?3 J2 O* ]' V+ z5 u
GetStockObject returns: 19000108 C! b) ]$ U! t, }, N
GetStockObject [CallFrom:004221DB]
8 m4 a  l- x  y' J(DWORD:00000000)4 K% b* i. S- @, H7 v7 e
GetStockObject returns: 1900010. d. H8 L* w- D" `) c4 F
GetStockObject [CallFrom:004221DB]
7 s  J0 V  [% R; B2 W; _(DWORD:00000000)+ O1 O) k* {" O. Y$ E
GetStockObject returns: 19000103 }& k4 S( {7 n: D5 H
GetStockObject [CallFrom:004221DB]
4 a7 R: s% o+ v9 s(DWORD:00000000)
6 C  t* k( }" dGetStockObject returns: 1900010/ `6 ]  y& y' Z
GetStockObject [CallFrom:004221DB]
% x8 b1 Z( J1 u% B( F(DWORD:00000000)" A& d$ c4 @) G1 k
GetStockObject returns: 19000107 k8 H  x: s' L( F6 T
GetStockObject [CallFrom:004221DB]
, ^* v2 F7 J1 M: V(DWORD:00000000)0 h' ~' L5 l/ ~2 R7 j; C4 D) e
GetStockObject returns: 1900010
7 y4 Z3 c  d, y! GGetStockObject [CallFrom:004221DB]
* a, I! }" _7 G- i  _% N$ C. H4 |(DWORD:00000000)8 g, f3 W) Q% G1 a) H, o
GetStockObject returns: 1900010
1 P% H5 `8 R6 U' @. R; YGetStockObject [CallFrom:004221DB]
  j# \7 W5 u- \9 d$ O" _: ^! `(DWORD:00000000)
9 n! T: D0 _( X( ]/ Y4 IGetStockObject returns: 19000100 _$ g  O' a+ A3 r
GetStockObject [CallFrom:004221DB]9 e+ p/ i) n. O; ?: R
(DWORD:00000000)
3 O3 j9 U. w% ~" g% i5 WGetStockObject returns: 1900010; R% J$ d( K2 B/ w
GetStockObject [CallFrom:004221DB]
5 C* V6 R- ^5 [) @(DWORD:00000000)# y4 |3 }" ]- n# {8 ~8 T* v
GetStockObject returns: 1900010, f% c% {& }% u
GetStockObject [CallFrom:004221DB]
4 ?2 w& ]6 Z. E4 b0 T; u* K: a/ H(DWORD:00000000)
! l! c8 C/ s% Q' j& _GetStockObject returns: 1900010
1 \1 c" ]" a& r' R# l! qGetStockObject [CallFrom:004221DB]
6 `: }3 k& o  C/ v7 G1 W3 K(DWORD:00000000): ?+ ?: c( k4 B2 P; b2 [$ V, @- `% f/ ^
GetStockObject returns: 1900010
/ f! e( U9 K/ A& S# v4 e$ a- rGetStockObject [CallFrom:004221DB]
. K/ f5 N" ]: }& a(DWORD:00000000)
+ g4 k8 Z8 Z' z" xGetStockObject returns: 1900010. `/ \' K- U: S. y6 F) S, W
GetStockObject [CallFrom:004221DB]
3 z, n6 i& W3 S) g- |  U( U(DWORD:00000000)& q7 x( I/ Q, F7 I# t
GetStockObject returns: 1900010% T# Q% b4 Z4 I
GetStockObject [CallFrom:004221DB]
/ J1 G5 I4 N* J7 ?4 A(DWORD:00000000)( T! @, y! H8 p$ Q2 p
GetStockObject returns: 1900010) _8 J& e7 }( l! S
GetStockObject [CallFrom:004221DB], E- y# X( s' ?* k$ M4 r9 L* K3 x
(DWORD:00000000)
8 v( W2 g% @1 l4 dGetStockObject returns: 1900010; _- V* o: [; e2 O3 T6 a
GetStockObject [CallFrom:004221DB]
& |: g( a3 K- ]' K4 ~(DWORD:00000000)6 k1 S* _3 I# t2 D. ]' v
GetStockObject returns: 1900010

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

沙发
发表于 2009-2-8 22:00 | 只看该作者
恭喜你,你快成功了。, o$ P- p0 |, a2 G; ^3 Q

+ p$ t+ {$ w) Y4 {2 l举例说明
$ Y! g+ i# x- |  t  Q
# v8 [. l! ?) O0 s6 V) v) `shift-jis 码的             冒险  2个字$ }2 N# X! Q, K& |) [( n1 f2 I
gb-2312码来表示就是     朻尟  2个字
3 S: N. [6 P6 y  @* r; l0 c- }0 i7 {1 D6 R
所以找到文本的地方,用gb-2312码写入冒险  2个字,出来就不是朻尟,而是冒险  2个字了。3 y4 G* O7 S- n

5 R9 ~$ Q* A, m5 E% b另外,本来这里只能讨论avg的汉化的。. ~9 ?0 ?( U. X% h* b; d
出于对汉化的兴趣,还是在这个问题上帮助一下你。
) L) N9 G. x+ W% u+ W' C1 o5 D
1 p' Z5 o' `0 K成功了的话,别忘了报告一下喔。
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2009-2-8 22:10 | 只看该作者
是啊。我也以为大功告成呢。结果改完函数后试着汉化了一下。。。。[s:16]。还是不成功。。你有时间再看看吧。有什么都短消息吧。不能太占用论坛的地方了[s:2]再次感谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

地板
发表于 2009-2-8 22:13 | 只看该作者
估计是字幕编码不对,
2 y7 Z& u5 h0 w  w# e
; \5 \. h7 a! V* U% ]3 f2 ]字幕在哪个文件里?
3 l8 t/ M6 m0 Y
8 @7 F/ v1 {7 V* S: V; `4 R; S) a把汉化前后的2进制码贴出来看看?
回复 支持 反对

使用道具 举报

5#
 楼主| 发表于 2009-2-8 22:17 | 只看该作者
这个游戏的文本都在主程序里。。二进制代码我用ue改的。不会错的。估计还是字体的原因。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

快速回复 返回顶部 返回列表