反复加载LIsp文件
你好我有一个个人lisp,在2012年的AutoCAD上运行了好几年,没有问题。我现在在2015年,文件有问题,它不会从启动套件加载,如果我添加一个加载来键入一个命令来加载它,它会一直保持到我点击escape。
这是我用来快速加载它的代码:
(defun c:jmos()(quickld“jmos”)(if loadok(c:jmos))(princ))
现在,我如何让它用命令加载一次,而不必点击escape或让启动套件实际加载文件?
提前感谢,
当做 假设文件包含一个c:jmos函数,并且在加载时不返回“ERROR”,这应该可以工作:
(defun c:jmos () (if (/= "ERROR" (load "jmos" "ERROR")) (c:jmos)) (princ)) 你好
我尝试了那行代码,但仍然在加载它,并告诉我它已加载,直到我点击escape。有一行我需要添加到jmos lisp中吗,因为前一行在Acad lisp文件中?
当做 该文件是否包含c:jmos函数? 你好
ACAD。LSP文件包含加载JMO的快速加载命令行。LSP,这两个都是在2015年ACAD lisp文件加载后加载的。
JMO。LSP文件包含一堆自定义命令,命令行,所以不确定为什么它会突然一次又一次地加载,就像是在循环,我真的不明白为什么。一旦我退出,我可以使用lisp文件中的命令,一切似乎都正常。但当我加载它加载一次,就是这样。
如果我可以在打开一个文件时加载这两个文件,我会很好,只是不确定如何加载,我已经将它们添加到启动套件中,并且没有go,所以我添加了快速加载命令,这样我就不必继续加载每个图形,我只需打开70张图纸,这样就可以减少鼠标点击次数。
当做 你还没有回答我的问题。基于您的原始代码,我假设jmos。lsp包含一个名为“c:jmos”的函数。是这样吗? 尝试从这里使用我的自动加载函数版本加载程序-这应该会报告任何问题,而不是将您发送到无限循环中。
对于您的程序,可以按以下方式调用函数:
(autoload "jmos" '("jmos")) 你好
我想我不明白这个问题,我正在使用一个附加的lisp(MARVIC),它将命令设置为默认值,我有一个用户lisp文件(jmos.lsp),它将一些短命令更改为我的首选项以及一些添加的命令,我从R13起就一直在使用它,并且在2012年之前没有出现任何问题。2015年,我不得不改变很多事情,只是为了让它工作,但加载的事情是一件我似乎无法理解的事情。
仅供参考:Acad计划。lsp负载,添加Acad。lsp(MARVIC)加载,并假设加载JMO。lsp。
希望这能帮助你了解我的情况
我尝试在附加Acad中添加自动加载线。lsp和它不起作用,所以有其他的事情可以尝试吗?
感谢大家到目前为止提供的帮助,虽然我们的解决方案还不完善,但正确解释这一点可能是我的错。我想这应该不会这么难,但是为了改变而改变那些千古不变的东西。。。
当做
如果有错误,您会收到什么错误?
在评估我的自动加载功能之前,你是否确保它已加载? 大家好,
没有错误,它好像从来没有这样做过,但我不知道我怎么能看到它是否正在读取Lisp文件中的那一行,我知道这曾经是检查的方法,但自从我用Lisp深入了解这一点以来,已经很多年了,现在我只记得足够危险了,哈哈
仅供参考:它确实加载了2015年Acad。lsp和(马尔维克)Acad。lsp,但这就是它停止的地方。
我在Lisp文件的末尾添加了这一行,我不认为它在哪里会影响它,但我可能错了?
是否有一个LISP命令行可以添加到JMOS列表中,以在第一个实例后停止加载?
我试过“普林斯”,但没有效果。
当做
页:
[1]
2