明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: Gu_xl

[【Gu_xl】] 【Gu_xl】Lisp程序设计错误处理的技巧

    [复制链接]
发表于 2023-2-28 11:25:07 | 显示全部楼层
写的很好,谢谢G版
发表于 2023-3-1 08:40:51 | 显示全部楼层
很好!研究一下了!
发表于 2024-2-22 17:07:25 | 显示全部楼层
可以整理一下下载吗?复制好多少了括号
发表于 2024-8-22 15:33:13 | 显示全部楼层
本帖最后由 xxyyzzlg 于 2024-8-22 16:10 编辑

感谢楼主的精心梳理和热心分享。在使用中发现用下面的函数能正确处理错误,恢复系统变量。
(Gxl-ErrStaSys '("cmdecho" 0 "orthomode" 0 "cecolor" "256" "celtype" "bylayer" "clayer"  "构造线层"))
但若是将某个系统变量对应的值,改用赋值后的变量名,则失败。比如:
(setq envName (getenv "Ager1"))   ;确定该环境变量的值为 "构造线层"
(Gxl-ErrStaSys '("cmdecho" 0 "orthomode" 0 "cecolor" "256" "celtype" "bylayer" "clayer" envName ))
** Error: 参数值错误: AutoCAD 变量值: ENVNAME **

而在命令行里用  (setvar "clayer" envname) 是成功的。
搞不清是我用的方法不对,还是这个函数不支持这种用法了。
发表于 2024-8-23 13:24:57 | 显示全部楼层
已用 (mapcar 'eval lst) 解决
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-22 15:40 , Processed in 0.174289 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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