guigonse 发表于 2022-7-5 15:58:08

其中是默认的AutoCAD r

你知道,我指的是将错误函数从in转储到out的函数;它非常有用,我可以在ACAD 2007中找到它,也可以在Visual Lisp IDE中找到。
 
它应该在以下时间激活
但是我唯一得到的是一条单行消息,其中包含一条几乎无法理解的错误消息。
 
顺便说一句,AutoCAD r14是指PreVisual 1995的AutoCAD版本(是的,我老了

David Bethel 发表于 2022-7-5 16:18:23

这在2000版中消失了。我也很怀念
 
您可以尝试添加到您的例程中:

(vl-load-com)
(vl-bt)

我不喜欢它。
 
IDE中应该有一些调试工具,但我不熟悉。
 
-大卫

guigonse 发表于 2022-7-5 16:24:54

AutoCAD R12!!唯一的一个!!好极了!!!
 
我一直在浏览IDE的调试选项,但在2007年(我的合法版本)的步骤和功能手表有点。。。婴儿车!!
 
我会看看你提出的代码,非常感谢!

ur_naz 发表于 2022-7-5 16:34:16

*error*是一个函数,当lisp程序捕捉到错误时自动调用。一些程序可能会重新定义此函数,以抑制消息输出到命令行。所以你必须检查哪个是这样做的。

David Bethel 发表于 2022-7-5 16:48:35

这里比较了新旧错误返回:
 

(defun c:old-err ()
(setq *error* nil)
(cond ((= 1 1)
      (setq a "LIN")
      (setq s (itoa a))))
(prin1))

 

(load "OLD-ERR")
old-err
error: bad argument type
(ITOA A)
(SETQ S (ITOA A))
(COND ((= 1 1) (SETQ A "LIN") (SETQ S (ITOA A))))
(C:OLD-ERR)
*Cancel*

 
新的回溯(VL-BT)2004

(defun c:new-err ()
(vl-load-com)
(vl-bt)
(setq *error* nil)
(cond ((= 1 1)
      (setq a "LIN")
      (setq s (itoa a))))
(prin1))

 
VS
 
5
 
旧的系统好多了。最新的回报至少可以说是神秘的。
 
-大卫

guigonse 发表于 2022-7-5 17:04:17

啊!!我不懂一个
 
应该研究(vl bt)和(vl load com),但可以肯定的是,旧的默认错误是赢家。。。
页: [1]
查看完整版本: 其中是默认的AutoCAD r