明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 542|回复: 1

【K:SearchAndLoadFunc】搜索并加载路径下的程序

[复制链接]
发表于 2023-9-7 09:51 | 显示全部楼层 |阅读模式
本帖最后由 kucha007 于 2023-9-7 09:57 编辑

做了个自用的工具箱,程序更新改名后还得调整加载函数。
干脆程序全部扔到指定路径下面,直接搜索并加载得了:
注:此函数不搜索子文件夹中的程序
  1. (vl-load-com)
  2. (defun K:SearchAndLoadFunc (FuncPath / FuncTypes Error i FileNamLst FileNam FilePath xx)
  3.   ;(setq FuncPath "C:\\FuncPath");搜索程序的目录
  4.   (setq FuncTypes '("*.LSP" "*.FAS" "*.VLX"));搜索源程序的类型
  5.   (setvar "SECURELOAD" 0);从所有位置加载文件(信任不警告)
  6.   (setq Error Nil);清空变量,避免串门
  7.   (repeat (setq i (length FuncTypes))
  8.     (if (setq FileNamLst (vl-directory-files FuncPath (nth (setq i (1- i)) FuncTypes) 1))
  9.       (mapcar
  10.         '(lambda (FileNam / FilePath)
  11.             (setq FilePath (strcat FuncPath "\\" FileNam))
  12.             (if (vl-catch-all-error-p (vl-catch-all-apply  'load (list FilePath)));捕捉到了错误
  13.                (setq Error (cons FilePath Error))
  14.             )
  15.          )
  16.         FileNamLst
  17.       )
  18.     )
  19.   );加载程序并搜集错误
  20.   (if Error ;如果有发生错误
  21.     (progn
  22.       (princ "\n——★★★ 以下文件未加载成功,请检查! ★★★——")
  23.       (foreach xx Error (princ (strcat "\n--> " xx)))
  24.     )
  25.   )
  26.   (princ)
  27. )



用法:
  1. (K:SearchAndLoadFunc "C:\\FuncPath")


评分

参与人数 2明经币 +2 收起 理由
yanchao316 + 1 赞一个!
不一样地设计 + 1 神马都是浮云

查看全部评分

发表于 2023-9-7 16:26 | 显示全部楼层
沙发啊,好代码,谢谢楼主分享。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-30 16:05 , Processed in 0.656873 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表