找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: ayl1004

[发布] 提供三个acet*.fas里面的自定义函数

[复制链接]

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-5 13:07:21 | 显示全部楼层
ayl1004 发表于 2013-8-5 13:02
第四个fas,另外两个fas----util2 util3因为加入了错码加密方法,这方法用我现在的工具无法解密,但是可以 ...

哪些是现在解密过的,给大家贴上来啊。

点评

大大,我的工具是解密数据区的,这些公布的都是fas里的自定义函数代号名,后面的整数是编号,未公布的前面的编号都是存储的变量、函数、参数、以及浮点数和字符串两种lisp数据类型,还有fas内部函数,这些东西总不能  详情 回复 发表于 2013-8-5 13:21
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3884个

财富等级: 富可敌国

 楼主| 发表于 2013-8-5 13:21:58 | 显示全部楼层
本帖最后由 ayl1004 于 2013-8-5 13:34 编辑
newer 发表于 2013-8-5 13:07
哪些是现在解密过的,给大家贴上来啊。


大大,我的工具是解密数据区的,这些公布的都是fas里的自定义函数代号名,后面的整数是编号,未公布的前面的编号都是存储的变量、函数、参数、以及浮点数和字符串两种lisp数据类型,还有fas内部函数,这些东西总不能公布吧;另外,表达式区的代码就是引用这些编号来执行函数运算的,我说过,还没整成工具。

我再声明一下,这些编号,是我的工具编的绝对编号,而不是被表达式引用的相对编号,想找相对编号,只要找到一个fas内部函数 _al-bind-alist 的相对编号就行了。
不能再说了,再说就露馅了,呵呵。。。

点评

那就是看不到源码了哦?  详情 回复 发表于 2013-8-5 14:01
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-5 14:01:14 | 显示全部楼层
ayl1004 发表于 2013-8-5 13:21
大大,我的工具是解密数据区的,这些公布的都是fas里的自定义函数代号名,后面的整数是编号,未公布的 ...

那就是看不到源码了哦?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3884个

财富等级: 富可敌国

 楼主| 发表于 2013-8-13 11:28:16 | 显示全部楼层

  1. (defun ACET-SAFE-COMMAND (START END LST / N A RES)
  2.   (if START
  3.     (progn
  4.       (ACET-CMD-EXIT)
  5.       (command (CAR LST))
  6.       (SETQ N 1)
  7.     )
  8.     (SETQ N 0)
  9.   )
  10.   (while (< N (LENGTH LST))
  11.     (SETQ A (NTH N LST))
  12.     (if        (NOT (EQUAL (GETVAR "cmdnames") ""))
  13.       (command A)
  14.       (SETQ N (+ (LENGTH LST) 100))
  15.     )
  16.     (SETQ N (+ N 1))
  17.   )
  18.   (if END
  19.     (ACET-CMD-EXIT)
  20.   )
  21.   (EQUAL N (LENGTH LST))
  22. )
  23. (defun ACET-UCS-CMD (LST / A CUCS ORG XDIR YDIR)
  24.   (ACET-SYSVAR-SET (LIST "osmode" 0))
  25.   (SETQ CUCS (ACET-UCS-GET nil))
  26.   (if (and (= 1 (LENGTH LST))
  27.            (EQUAL STR (TYPE (CAR LST)))
  28.            (SETQ A (CAR LST))
  29.            (or (ACET-STR-EQUAL (SUBSTR A 1 2) "_P")
  30.                (ACET-STR-EQUAL (SUBSTR A 1 1) "P")
  31.            )
  32.       )
  33.     (progn
  34.       (SETQ A (CAR ACET:UCS-LIST))
  35.       (SETQ ACET:UCS-LIST (CDR ACET:UCS-LIST))
  36.       (if A
  37.         (progn
  38.           (command "_.ucs")
  39.           (MAPCAR 'COMMAND LST)
  40.           (if (NOT (EQUAL A (ACET-UCS-GET nil)))
  41.             (progn
  42.               (SETQ ORG (TRANS (CAR A) 0 1))
  43.               (SETQ XDIR (TRANS (CADR A) 0 1 T))
  44.               (SETQ YDIR (TRANS (CADDR A) 0 1 T))
  45.               (command "_.ucs")
  46.               (command "_3p" ORG)
  47.               (command (ACET-GEOM-VECTOR-ADD ORG XDIR))
  48.               (command (ACET-GEOM-VECTOR-ADD ORG YDIR))
  49.             )
  50.           )
  51.         )
  52.       )
  53.     )
  54.     (progn
  55.       (command "_.ucs")
  56.       (MAPCAR 'COMMAND LST)
  57.       (SETQ A (CAR LST))
  58.       (if (or (NOT (EQUAL 2 (LENGTH LST)))
  59.               (NOT (EQUAL STR (TYPE A)))
  60.               (and (NOT (ACET-STR-EQUAL (SUBSTR A 1 2) "_S"))
  61.                    (NOT (ACET-STR-EQUAL (SUBSTR A 1 1) "S"))
  62.                    (NOT (ACET-STR-EQUAL (SUBSTR A 1 2) "_D"))
  63.                    (NOT (ACET-STR-EQUAL (SUBSTR A 1 1) "D"))
  64.               )
  65.           )
  66.         (SETQ ACET:UCS-LIST (CONS CUCS ACET:UCS-LIST))
  67.       )
  68.     )
  69.   )
  70.   (ACET-SYSVAR-RESTORE)
  71. )
  72. (defun ACET-UCS-GET (NA / E1 ORG XDIR YDIR)
  73.   (if (and NA
  74.            (SETQ E1 (ENTGET NA ("*")))
  75.            (= "VIEWPORT" (CDR (ASSOC 0 E1)))
  76.            (= 1 (CDR (ASSOC 71 E1)))
  77.       )
  78.     (SETQ ORG  (CDR (ASSOC 110 E1))
  79.           XDIR (CDR (ASSOC 111 E1))
  80.           YDIR (CDR (ASSOC 112 E1))
  81.     )
  82.     (SETQ ORG  (GETVAR "ucsorg")
  83.           XDIR (GETVAR "ucsxdir")
  84.           YDIR (GETVAR "ucsydir")
  85.     )
  86.   )
  87.   (LIST ORG XDIR YDIR)
  88. )
  89. (defun ACET-PSPACE-VIEWPORT-ENAME (/ SS NA)
  90.   (SETQ        SS
  91.          (SSGET        "_x"
  92.                 (LIST '(0 . "VIEWPORT")
  93.                       '(67 . 1)
  94.                       '(69 . 1)
  95.                       (CONS 410 (ACET-STR-ESC-WILDCARDS (GETVAR "ctab")))
  96.                 )
  97.          )
  98.   )
  99.   (if SS
  100.     (SETQ NA (SSNAME SS 0))
  101.   )
  102.   NA
  103. )
  104. (defun ACET-CURRENTVIEWPORT-ENAME (/ SS NA)
  105.   (SETQ        SS
  106.          (SSGET        "_x"
  107.                 (LIST '(0 . "VIEWPORT")
  108.                       '(67 . 1)
  109.                       (CONS 69 (GETVAR "cvport"))
  110.                       (CONS 410 (ACET-STR-ESC-WILDCARDS (GETVAR "ctab")))
  111.                 )
  112.          )
  113.   )
  114.   (if SS
  115.     (SETQ NA (SSNAME SS 0))
  116.   )
  117.   NA
  118. )
  119. (defun ACET-SPINNER ()
  120.   (if (NOT #SPIN)
  121.     (SETQ #SPIN "-")
  122.   )
  123.   (cond
  124.     ((= #SPIN "-") (SETQ #SPIN "\"))
  125.     ((= #SPIN "\") (SETQ #SPIN "|"))
  126.     ((= #SPIN "|") (SETQ #SPIN "/"))
  127.     (t (SETQ #SPIN "-"))
  128.   )
  129.   (PRINC (STRCAT (CHR 8) #SPIN))
  130. )
  131. (defun ACET-DXF (CODE E1)
  132.   (CDR (ASSOC CODE E1))
  133. )
  134. (defun ACET-GETVAR-FIXED-PROFILE (VAR / VAL KEY TP)
  135.   (SETQ KEY (vlax-product-key))
  136.   (SETQ KEY (STRCAT "HKEY_CURRENT_USER\" KEY "\\FixedProfile\\General"))
  137.   (if (SETQ VAL (VL-REGISTRY-READ KEY VAR))
  138.     (progn
  139.       (SETQ TP (SUBSTR VAL 1 5))
  140.       (SETQ VAL (SUBSTR VAL 6))
  141.       (cond
  142.         ((EQUAL TP "REAL_") (SETQ VAL (ATOF VAL)))
  143.         ((EQUAL TP "INT__") (SETQ VAL (ATOI VAL)))
  144.         ((NOT (EQUAL TP "STR__")) (SETQ VAL (READ VAL)))
  145.       )
  146.     )
  147.   )
  148.   VAR
  149. )
  150. (defun ACET-GETVAR-CPROFILE (VAR / PROF VAL KEY TP)
  151.   (SETQ PROF (GETVAR "cprofile"))
  152.   (SETQ KEY (vlax-product-key))
  153.   (SETQ KEY (STRCAT "HKEY_CURRENT_USER\" KEY "\\Profiles\" PROF "\\General"))
  154.   (if (SETQ VAL (VL-REGISTRY-READ KEY VAR))
  155.     (progn
  156.       (SETQ TP (SUBSTR VAL 1 5))
  157.       (SETQ VAL (SUBSTR VAL 6))
  158.       (cond
  159.         ((EQUAL TP "REAL_") (SETQ VAL (ATOF VAL)))
  160.         ((EQUAL TP "INT__") (SETQ VAL (ATOI VAL)))
  161.         ((NOT (EQUAL TP "STR__")) (SETQ VAL (READ VAL)))
  162.       )
  163.     )
  164.   )
  165.   VAR
  166. )
  167. (defun ACET-GETVAR-DWG (VAR / NA E1 LST N VAL E2)
  168.   (if (SETQ E1 (DICTSEARCH (NAMEDOBJDICT) "BNS_VARIABLES"))
  169.     (progn
  170.       (SETQ NA (CDR (ASSOC 255 E1)))
  171.       (if (SETQ E2 (DICTSEARCH NA VAR))
  172.         (progn
  173.           (SETQ E2 (CDR (MEMBER '(100 . "AcDbXrecord") E2)))
  174.           (SETQ LST (1 40 70 330 2))
  175.           (SETQ N 0)
  176.           (while (and (< N (LENGTH LST)) (NOT VAL))
  177.             (SETQ VAL (ASSOC (NTH N LST) E2))
  178.             (SETQ N (+ N 1))
  179.           )
  180.           (if (EQUAL (CAR VAL) 2)
  181.             (SETQ VAL (READ (CDR VAL)))
  182.             (SETQ VAL (CDR VAL))
  183.           )
  184.         )
  185.       )
  186.     )
  187.   )
  188.   VAL
  189. )
  190. (defun ACET-GETVAR (LST / VAR VAL FLAG)
  191.   (if (SETQ VAR (CAR LST))
  192.     (progn
  193.       (if (NOT (SETQ FLAG (CADR LST)))
  194.         (SETQ FLAG (+ 1 2 4))
  195.       )
  196.       (SETQ VAR (XSTRCASE VAR))
  197.       (if (= 1 (LOGAND 1 FLAG))
  198.         (SETQ VAL (ACET-GETVAR-DWG VAR))
  199.       )
  200.       (if (and (= 2 (LOGAND 2 FLAG)) (NOT VAL))
  201.         (SETQ VAL (ACET-GETVAR-CPROFILE VAR))
  202.       )
  203.       (if (and (= 4 (LOGAND 4 FLAG)) (NOT VAL))
  204.         (SETQ VAL (ACET-GETVAR-FIXED-PROFILE VAR))
  205.       )
  206.     )
  207.   )
  208.   VAL
  209. )
  210. (defun ACET-SETVAR-FIXED-PROFILE (VAR VAL / KEY TP)
  211.   (SETQ KEY (vlax-product-key))
  212.   (SETQ
  213.     KEY        (STRCAT "HKEY_CURRENT_USER\" KEY "\\FixedProfile\\General")
  214.   )
  215.   (cond
  216.     ((NOT VAL) (VL-REGISTRY-DELETE KEY VAR))
  217.     ((or (EQUAL (TYPE VAL) 'STR)
  218.          (EQUAL (TYPE VAL) 'REAL)
  219.          (EQUAL (TYPE VAL) 'INT)
  220.          (EQUAL (TYPE VAL) 'LIST)
  221.      )
  222.      (SETQ TP (VL-PRIN1-TO-STRING (TYPE VAL)))
  223.      (while (< (STRLEN TP) 5)
  224.        (SETQ TP (STRCAT TP "_"))
  225.      )
  226.      (if (NOT (EQUAL (TYPE VAL) STR))
  227.        (SETQ VAL (VL-PRIN1-TO-STRING VAL))
  228.      )
  229.      (SETQ VAL (STRCAT TP VAL))
  230.      (VL-REGISTRY-WRITE KEY VAR VAL)
  231.     )
  232.     (t
  233.      (PRINC "\nInvalid type in acet-setvar-fixed-profile")
  234.     )
  235.   )
  236. )

点评

大师,这个代码是解密出来就这样易读的吗?  详情 回复 发表于 2013-8-13 11:43

评分

参与人数 1D豆 +1 收起 理由
/db_自贡黄明儒_ + 1 这相可供大家临摹学习

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-13 11:43:34 | 显示全部楼层

大师,这个代码是解密出来就这样易读的吗?

点评

斑竹,你别损我了 手工整理的  详情 回复 发表于 2013-8-13 11:45
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3884个

财富等级: 富可敌国

 楼主| 发表于 2013-8-13 11:45:16 | 显示全部楼层
newer 发表于 2013-8-13 11:43
大师,这个代码是解密出来就这样易读的吗?

斑竹,你别损我了

手工整理的

点评

其实LZ给讲解下这个解密用什么写法会增加难度会更让Lisper少些担心  详情 回复 发表于 2013-8-13 11:59
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-8-13 11:59:12 | 显示全部楼层
ayl1004 发表于 2013-8-13 11:45
斑竹,你别损我了

手工整理的

其实LZ给讲解下这个解密用什么写法会增加难度会更让Lisper少些担心{:soso_e100:}

点评

感觉都差不多吧 神马都是浮云  详情 回复 发表于 2013-8-13 12:06
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3884个

财富等级: 富可敌国

 楼主| 发表于 2013-8-13 12:06:49 | 显示全部楼层
st788796 发表于 2013-8-13 11:59
其实LZ给讲解下这个解密用什么写法会增加难度会更让Lisper少些担心

感觉都差不多吧
神马都是浮云
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3884个

财富等级: 富可敌国

 楼主| 发表于 2013-8-13 13:31:23 | 显示全部楼层
我忽然犯愁了,发这些函数定义是不是又得罪一些人了?

点评

得罪谁啊,要得罪也是ADESK公司,他们不会怪你的,你是普及他们产品嘛,他们自己的产品都不怕破解,还怕下面的FAS了。 除了他们,还有谁用这个ACET FAS挣钱的吗?  详情 回复 发表于 2013-8-13 13:48
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-13 13:48:45 | 显示全部楼层
本帖最后由 newer 于 2013-8-13 13:49 编辑
ayl1004 发表于 2013-8-13 13:31
我忽然犯愁了,发这些函数定义是不是又得罪一些人了?

得罪谁啊,要得罪也是ADESK公司,他们不会怪你的,你是普及他们产品嘛,他们自己的产品都不怕破解,还怕下面的而且是自己的 ACET FAS了。
除了他们,还有谁用这个ACET FAS挣钱的吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3884个

财富等级: 富可敌国

 楼主| 发表于 2013-8-13 13:51:06 | 显示全部楼层
可是,我大概看了一下,基本的功能acet里都有,这不是让部分人丢了饭碗?

点评

原来的ACET不也是能用嘛,只是看不到源码而已了,你公布和没公布对用ACET来说没什么不同。你要这么说,XDRX API应该砸了更多人的饭碗,其实尼,不会的。  详情 回复 发表于 2013-8-13 13:56
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-13 13:56:07 | 显示全部楼层
ayl1004 发表于 2013-8-13 13:51
可是,我大概看了一下,基本的功能acet里都有,这不是让部分人丢了饭碗?

原来的ACET不也是能用嘛,只是看不到源码而已了,你公布和没公布对用ACET来说没什么不同。你要这么说,XDRX API应该砸了更多人的饭碗,其实尼,不会的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

发表于 2013-8-30 15:50:55 | 显示全部楼层
破解ACET-SYS-KEYSTATE的定义没有呀,我想不装ET就能使用这一函数

点评

这是ARX定义的吧  详情 回复 发表于 2013-8-30 16:09
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-8-30 16:09:41 来自手机 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-8-30 15:50
破解ACET-SYS-KEYSTATE的定义没有呀,我想不装ET就能使用这一函数

这是ARX定义的吧
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3884个

财富等级: 富可敌国

 楼主| 发表于 2013-8-31 23:44:53 | 显示全部楼层
本帖最后由 ayl1004 于 2013-9-3 16:20 编辑

全部6个.fas的非完整.lsp文件,里面的单引号自己添加,跳转指令自己整理。

评分

参与人数 1D豆 +5 收起 理由
/db_自贡黄明儒_ + 5 很给力!经验;技术要点;资料分享奖!

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-22 05:26 , Processed in 0.245289 second(s), 65 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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