乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 34|回复: 3

[编程交流] 加载lisp时出现问题

[复制链接]

29

主题

36

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
150
发表于 2022-7-6 10:59:02 | 显示全部楼层 |阅读模式
我在日常工作中使用了许多lisp例程。但我面临着一个有时非常痛苦的问题。
 
我无法将lisp代码保存在office PC中,因此我使用名为LOADER的lisp文件从U盘加载它们,该文件包含加载所有lisp例程的代码。加载器文件的格式如下所示
 
(加载“j:/lisp/a.lsp”)
(加载“j:/lisp/b.lsp”)
......
 
现在的问题是,不同的计算机会将USB检测为不同的驱动器,例如H:/或G:/。因此,根据驱动器名,我必须对lisp文件加载器进行更改。
 
其次,一些lisp例程加载其他lisp例程来完成它们的工作,因此除了加载文件之外,我可能还需要修改其他lisp例程中的代码,以避免出现加载错误。
 
是他们解决这个问题的方法。
 
谢谢
回复

使用道具 举报

20

主题

344

帖子

325

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
100
发表于 2022-7-6 11:31:14 | 显示全部楼层
试试这个。这将遍历字母表,查找具有/lisp/目录的所有驱动器,然后加载该目录中的所有lisp。我不认为这完全是你想要的,但这只是一个开始。
 
  1. (defun c:loadlots( / a b c)
  2. (foreach fv1 (abc)
  3.    (if (setq a (vl-directory-files (strcat fv1 ":/lisp/") "*.lsp"))
  4.      (foreach fv2 a
  5.    (load (strcat fv1 ":/lisp/" fv2))
  6.    )
  7.      )
  8.    )
  9. (princ)
  10. )
  11. (defun abc( / a b)
  12. (setq a 64)
  13. (repeat 26 (setq b (cons (chr (setq a (1+ a))) b)))
  14. b
  15. )
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 11:58:54 | 显示全部楼层
嗨,萨尔曼。
我的建议是,将Lisp文件保存在驱动器c:或d:中的某个位置无关紧要,并使用Autocad中的命令cui正常加载所有Lisp以及Autocad运行。
 
当做
塔瓦特
回复

使用道具 举报

5

主题

194

帖子

193

银币

初来乍到

Rank: 1

铜币
24
发表于 2022-7-6 12:10:28 | 显示全部楼层
另一个网站上发布了一条帖子,可能会有所帮助
 
http://www.theswamp.org/index.php?topic=32565.0
 
当做
 
杰米
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-6 11:20 , Processed in 0.407663 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表