明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2230|回复: 16

[提问] 错误,继续执行--->

[复制链接]
发表于 2019-7-14 21:56 | 显示全部楼层 |阅读模式
本帖最后由 尘缘一生 于 2019-7-14 22:00 编辑

      当你开发许多的函数和命令,你并不能保证他们都正确,即便都正确,你也不知道他是否适合所有CAD版本,那么如何有个函数存在,把它放在每一个函数与程序的前面,一旦加载运行错误,不影响其他的加载与运行?
    假如这个函数叫    (defun   error-1 ())

1:出现加载无法加载时候,防止中断退出,继续加载下面的。
3:加载成功即便,运行错误,就立即结束。


(defun  1 ()
.....
)
(defun  2 ()
.....
)

(defun  C:A ()
.....
)

........

那么上面常规写法变成如下

(defun  1 ()
(error-1)
.....
)
(defun  2 ()
(error-1)
.....
)

(defun  C:A ()
(error-1)
.....
)

这个函数,有吗?我说的不是 CAD那个错误处理函数
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2019-7-15 09:38 | 显示全部楼层
本帖最后由 1291500406 于 2019-10-11 19:20 编辑
自贡黄明儒 发表于 2019-7-15 08:31
我上次问你的问题你还没正面回答。
本次问题只能用vl-catch-all-error-p

(alert(bb_StrConv "石必强AutoLisp" 1))  ——> "石必强AUTOLISP"
(alert(bb_StrConv "石必强AutoLisp" 2))  ——> "石必强autolisp"
(alert(bb_StrConv "石必强AutoLisp" 4))  ——>"石必强AutoLisp"
(alert(bb_StrConv "石必强AutoLisp" 8))  ——>"石必强AutoLisp"
(alert(bb_StrConv "石必强AutoLisp" 1)) ——> "石必强AUTOLISP"
(alert(bb_StrConv "石必强AutoLisp" 2)) ——>"石必强autolisp"
(alert(bb_StrConv "石必强AutoLisp" 4)) ——>"石必强AutoLisp"
(alert(bb_StrConv "石必强AutoLisp" 8)) ——>"石必强AutoLisp"
(defun bb_StrConv (str b)(vla-eval (vlax-get-acad-object)
(strcat "ThisDrawing.setVariable \"USERS1\",StrConv (\"" str  "\", " (rtos b) ")"))
(getvar "users1"))

评分

参与人数 1明经币 +1 收起 理由
自贡黄明儒 + 1 很给力!

查看全部评分

发表于 2019-10-10 14:16 | 显示全部楼层
cghdy 发表于 2019-10-10 13:41
你lisp玩的那么6,你的无敌面板什么时候发布啊

还在搞 主要是没有时间 又不会一边学一边搞
还没有搞完  做图库dcl达不到我想要的效果  又刚开始学opendcl,不好学,教程也没有,帮助全英文(看不懂),进度很慢
目前就搞成这样了

本帖子中包含更多资源

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

x
发表于 2019-7-16 08:41 | 显示全部楼层
很佩服前辈的折腾精神。
一个最简单有效的办法就是:
(load "1.lsp")
(load "2.lsp")
(load "3.lsp")
(load "4.lsp")
(load "5.lsp")
,,,,,,,,
任何一个出错都不影响其它的加载与运行(1、2、3、4、5不能有互用的东西)
发表于 2019-7-15 08:12 | 显示全部楼层
VBS 是 On Error Resume Next
lisp不知道

点评

这就是lisp没有跳转语句啊,没办法。  发表于 2019-7-15 09:01
发表于 2019-7-15 08:31 | 显示全部楼层
1291500406 发表于 2019-7-15 08:12
VBS 是 On Error Resume Next
lisp不知道

我上次问你的问题你还没正面回答。
本次问题只能用vl-catch-all-error-p

点评

上次的词典问题,不想用,因为:有清理词典的程序,会被清理掉,我在寻求其他办法。  发表于 2019-7-15 09:03
这个看了很多本坛资料,并完不成我说的功能。  发表于 2019-7-15 09:02
发表于 2019-7-15 09:21 | 显示全部楼层
你这个老头,尽乱想天开,桌子给你画了一个圈,你只能在圈中玩。明白不?
发表于 2019-7-15 09:53 | 显示全部楼层
你们怎么会那么多语言  我就llisp都够呛
发表于 2019-7-15 10:05 | 显示全部楼层
taoyi0727 发表于 2019-7-15 09:53
你们怎么会那么多语言  我就llisp都够呛

估计你岁数比我大的缘故吧。
发表于 2019-10-8 10:09 | 显示全部楼层
vl-catch-all-error-p
发表于 2019-10-10 13:41 | 显示全部楼层
taoyi0727 发表于 2019-7-15 09:53
你们怎么会那么多语言  我就llisp都够呛

你lisp玩的那么6,你的无敌面板什么时候发布啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-25 08:49 , Processed in 1.986724 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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