ronjonp 发表于 2017-2-22 07:09:10

这很奇怪,可能是我正在使用的2016版本…
Command: *Cancel*
Command: *Cancel*
Command: *Cancel*
Command: *Cancel*
Command: (findfile "_Routine_Library\\MT2ML - MText to Mleader\\MT2ML - MText to Mleader.LSP")(Load "_Routine_Library\\MT2ML - MText to Mleader\\MT2ML - MText to Mleader.LSP")\\MT2ML
Select source text: -
*Invalid selection*
Expects a single object.
Select source text: MText
*Invalid selection*
Expects a single object.
Select source text: to
*Invalid selection*
Expects a single object.
Select source text: Mleader.LSP")
*Invalid selection*
Expects a single object.
Select source text: ; error: bad argument type: lentityp nil
Command: Specify opposite corner or : *Cancel*
Command: (load "
("_>
("_> _Routine_Library
("_>
("_> Z2S - Zoom to Pipe Network Structure
("_>

mstg007 发表于 2017-2-22 09:21:08

为什么不直接将子文件夹添加到支持路径中呢?或者您可以使用Lee的目录文件例程来加载它们。
类似这样的内容:
(foreach lisp (lm:directoryfiles "C:\\MYLispFiles" "*.lsp" t) (load lisp))

Master_Shake 发表于 2017-2-22 09:31:53

罗恩先生,因为每个文件夹中都有一个lisp例程。为了修改该例程,我有一个void类型的文件夹,可以在那里备份
我认为真正的攻击方法是创建一个主例程,尽管它需要更多的工作
(defun c:Main_Routine ()
(defun c:CLC()
(findfile "_Routine_Library\CLC - Change Selected\CLC - Change Selected.LSP")(load "CLC - Change Selected.lsp")(C:CLC))
(defun c:DEMO()
(findfile "_Routine_Library\DEMO - Demo Selection\DEMO - Demo Selection.LSP")(load "DEMO - Demo Selection.lsp")(C:DEMO))
(defun c:DPG()
(findfile "_Routine_Library\DPG - Delete Duplicate Points\DPG - Delete Duplicate Points.LSP")(load "DPG - Delete Duplicate Points.lsp")(C:DPG))
(princ)

在我的CUI和宏按钮中,我现在可以从中调用例程,它确实可以工作。有点疼,但确实管用。

ronjonp 发表于 2017-2-22 09:49:33

就个人而言,我会创建一个主例程文件。这有几个好处,主要是你可以重用子例程,即单个错误捕获,选择对象的单个例程等。

mstg007 发表于 2017-2-22 10:02:36

在我看来,上面例子中Lee的目录文件和加载要简单得多。如果你关心版本的话,为什么不用Dropbox之类的?
我不确定为什么您需要创建一个已经可用的“主”文件。
页: 1 [2]
查看完整版本: 在支持路径的子文件夹中调用例程