au-s 发表于 2022-7-6 15:09:56

将lisp更改为在子路径中工作

你好
 
我发现了一个很好的lisp,可以在预览时插入块。
问题是它只在我的支持文件路径中工作。
 
我在其他子路径中有其他Lisp,它们工作正常。
它们之所以有效,是因为我在这里得到了帮助:
 
(defun C:LOADALL(/ lispPath subPath cPath fLst cFil)
(setq lisPpath "K:\\CAD\\AIX-meny-2008\\Lisp\\"
subPath '("ucs" "xref" "Dim" "text")
); end setq
(foreach sp subPath
   (setq cPath(strcat lisPpath sp))
   (if(setq fLst(vl-directory-files cPath "*.lsp" 1))
   (foreach cf fLst
(setq cFil(strcat cPath "\\" cf))
       (load cFil)
      ); end foreach
   ); end if
   ); end foreach
(princ)
);END CODE
 
这确保了“Dim,Xref”文件夹中的LISP有效。
 
但Lisp程序并没有。是否有一个变量或类似变量可以在我不向ACAD搜索文件路径添加额外文件夹的情况下对其进行更改。
 
我用lisp附加了一个文件。
数据块。拉链

jammie 发表于 2022-7-6 15:49:09

嘿,au-s,
 
问题可能出在DBLOCK上。DCL,它需要保存在ACAD搜索路径之一中,以便在加载dblock例程时可以找到并运行它。
 
您是否添加了任何目录“K:\CAD\AIX-meny-2008\Lisp”到您的Acad“支持文件搜索路径”?
 
当做
 
杰米

au-s 发表于 2022-7-6 16:10:34

 
答案是Thanx。
问题是dcl加载,但它既找不到任何幻灯片图像,也找不到块。尽管如此,当我添加一个像“Block”这样的支持路径来支持文件路径,并将所有的Block、slides、dcl、lsp放在其中时,它就工作了。
但是,我必须将所有块放在一个文件夹中。我认为这是不现实的,因为我的办公室有很多街区,我想把它们分开。这意味着我必须将它们添加到我的支持文件路径中。
 
上面的lisp正在添加未添加到支持文件搜索路径中的子路径。
 
DCL,我按你说的做了。我把它放在支持文件搜索路径中,其余的lisp和块放在另一个文件夹中。。。不起作用。
 
我想我需要以某种方式设置块的主方向?
比如(setq home(strcat BlockDir“Path/go/here”)?
页: [1]
查看完整版本: 将lisp更改为在子路径中工作