resullins 发表于 2022-7-6 07:49:29

@格沃奇:是的。每次启动AC时,它都会查找并加载该文件。

GWelch 发表于 2022-7-6 07:53:26

 
这似乎解决了问题。作为一种解释,我的公司曾经有缩写“WH”,这是从那时起遗留下来的。我将对此进行更多的研究,以确保它仍然具有完整的功能,但现在看起来确实如此。
 
谢谢大家,周末愉快。

Lee Mac 发表于 2022-7-6 07:56:46

不过,我想说,如果您不需要“网络”检查,整个代码可以替换为:
 
(load "C:\\ACAD\\LISP\\Earth-Tech.lsp" "Earth-Tech Failed to Load")

alanjt 发表于 2022-7-6 07:57:04

将路径添加到您的支持路径列表(在选项中,只需少量代码即可轻松完成)并使用(load“File.LSP”“fail”)将是更好的做法,也更有意义。然后,在未来,唯一需要调整的是支持路径,而不是担心更改大量代码。如果LISP目标文件夹/路径发生更改,在许多例程上继续这种做法可能会产生大量修复代码的工作。

GWelch 发表于 2022-7-6 08:00:08

 
我知道我之前没有发布Earth-tech.lsp的内容。在查看该文件时,大多数行都包含对ETLOAD的引用,例如:
 
(defun c:cbc_util () (ETload "cbc_util"))
(defun c:srlayer () (ETload "srlayer"))
(defun c:BATT () (ETload "BATT"))
(defun c:WD_END () (ETload "WD_END"))
(defun c:WD_FACE () (ETload "WD_FACE"))
(defun c:store () (ETload "store"))
(defun c:ms2ps () (ETload "ms2ps"))
(defun c:rpoly () (ETload "rpoly"))
(defun c:settxt () (ETload "settext"))
 
等那么,我认为我需要保留一些代码来定义ETLOAD,对吗?

Lee Mac 发表于 2022-7-6 08:05:20

我同意Alan的观点,要么添加包含LISP的文件夹作为支持路径,要么将所有LISP文件放在现有的支持路径中。
 
然后,ETLoad函数可以简单到:
 
6
 
这样,您就可以从一个地方控制LISP源文件夹,而不必担心将来会更改代码。

alanjt 发表于 2022-7-6 08:08:10

听起来你需要探索自动加载功能。。。加载/自动加载使用

alanjt 发表于 2022-7-6 08:09:34

顺便说一句,加载或自动加载不需要文件扩展名。我看不出有任何理由需要一个子功能。

Lee Mac 发表于 2022-7-6 08:14:06

 
同上,如果您需要创建自动加载语句的帮助,或者想要更多信息,请参阅我前面在线程中提供的链接。

GWelch 发表于 2022-7-6 08:16:09

也许对量子力学来说很简单。。。这个周末我肯定需要做点学习。 
听起来,如果我再往前走一步,我就要掉进兔子洞了。 
好吧,见鬼。。。
页: 1 [2]
查看完整版本: Lisp例程加载问题u