明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: LPACMQ

分享一个自动加载的小插件,此插件拖拽进CAD后自动加载目录下的VLX,FAS,LSP应用程序

    [复制链接]
发表于 2021-5-13 14:20:10 | 显示全部楼层
crystalboy 发表于 2021-2-16 18:31
你好,在你共享的基础上对代码进行了修改和修复了几个bug,增加内容如下:1.支持子文件夹    2.支持arx   3 ...

你好,我想问下,我下载使用后,为何自动加载的是lsp,vls,手动再加载才能加载arx和fas?这个是什么原因?谢谢
发表于 2021-5-21 17:29:04 | 显示全部楼层
crystalboy 发表于 2021-2-16 18:31
你好,在你共享的基础上对代码进行了修改和修复了几个bug,增加内容如下:1.支持子文件夹    2.支持arx   3 ...

如果文件夹里面还有几个子文件夹,想要自动加载子文件夹的插件,文件夹名称为  插件加载,该如何添加?
发表于 2021-5-22 01:29:31 | 显示全部楼层
潇湘飞雨 发表于 2021-5-21 17:29
如果文件夹里面还有几个子文件夹,想要自动加载子文件夹的插件,文件夹名称为  插件加载,该如何添加?

代码已经实现了的,加载包括子文件夹下的内容
发表于 2021-5-22 11:29:00 | 显示全部楼层
crystalboy 发表于 2021-5-22 01:29
代码已经实现了的,加载包括子文件夹下的内容

子文件夹有添加路径,测试了只加载了主文件夹的,不知问题何在~
发表于 2021-5-22 11:31:38 | 显示全部楼层
crystalboy 发表于 2021-5-22 01:29
代码已经实现了的,加载包括子文件夹下的内容

可以,,实现了。。。。是我代码自己搞乱掉了。。惭愧!!!!
发表于 2021-5-22 11:38:56 | 显示全部楼层
crystalboy 发表于 2021-5-22 01:29
代码已经实现了的,加载包括子文件夹下的内容

好像还有点小BUG     多次加载测试,   第一次正常,   删除支持文件路径,重新加载,只添加了主文件夹到支持文件路径!
发表于 2021-5-24 13:06:32 | 显示全部楼层
本帖最后由 crystalboy 于 2021-5-24 13:10 编辑
潇湘飞雨 发表于 2021-5-22 11:38
好像还有点小BUG     多次加载测试,   第一次正常,   删除支持文件路径,重新加载,只添加了主文件夹到 ...

我平时都是把安全加载关闭了的,是只有主文件夹添加到cad的支持路径。
|;
;┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄
;功能:添加路径到cad文件搜索路径
;函数:(gf-AddPath strPath)
;参数:str_path---路径
;返回:文件搜索的路径
;示例:(gf-addPath "D:\\kk_lisp")
;      ->  "---;---;---;---;---;---;---;     ;路径省略了
;           D:\\kk_lisp;"
(defun gf-AddPath (strPath)
  (if (findfile strpath)
    (setenv "ACAD" (strcat (getenv "ACAD") ";" strPath ";"))
  )
)
;┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄
;功能:添加路径(包括子路径)到cad文件搜索路径
;函数:(gf-addPaths str_path)
;参数:str_path---路径
;返回:添加后的文件搜索的路径
;示例:(gf-addPaths "D:\\kk_lisp")
;      ->  "---;---;---;---;---;---;---;     ;路径省略了
;           D:\\kk_lisp;D:\\kk_lisp\\test1;D:\\kk_lisp\\test2;D:\\kk_lisp\\test3;"
(defun gf-addPaths (str_path)
  (setq list_folds (gf-getFolds str_path))
  (foreach x list_folds
    (gf-AddPath x)
  )
)
;┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄
;功能:返路径下的文件夹及子文件夹
;函数:(gf-getFolds str_path)
;参数:str_path---路径
;返回:文件夹和子文件夹组成的表
;示例:(gf-getFolds "D:\\kk_lisp")
;     ->  ("D:\\kk_lisp" "D:\\kk_lisp\\test1" "D:\\kk_lisp\\test2" "D:\\kk_lisp\\test3")
(defun gf-getFolds (str_path / list_fold)
  (defun getsonFold (sonpath)
    (setq list_fold (cons sonpath list_fold))
    (foreach x (cddr (vl-directory-files sonpath nil -1))
      (getsonFold (strcat sonpath "\\" x))
    )
  )
  (if (findfile str_path) (getsonFold str_path))
  (reverse list_fold)
)
;┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄ ┄
最新太忙了,天天加班,我这里有函数,自己修改。其实有个想法,检测cad设置的支持路径是否有效,无效则删除。移动路径后,会产生无效的支持路径。只是有这个想法。代码很容易实现。只是太忙了,没时间。

点评

支持优化  发表于 2021-8-5 09:50
回复 支持 2 反对 0

使用道具 举报

发表于 2021-10-28 21:16:54 | 显示全部楼层
谢谢,挺好用的
发表于 2021-10-28 21:17:08 | 显示全部楼层
谢谢,挺好用的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-22 22:18 , Processed in 0.174085 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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