本帖最后由 kucha007 于 2024-3-3 19:22 编辑
最近因为多选文件的函数总是无法创建文件(似乎是没有权限?),所以接触了一下Doslib。
目前Doslib已经开源,也是不错的工具。唯一麻烦的点是需要根据CAD版本加载不同的ARX
话不多说,资源分享给大家
开源项目地址:https://wiki.mcneel.com/doslib/home
加载ARX的函数:
- ;判断并加载对应版本的ARX
- (defun K:LoadDosLib (ARXPath / K:STR->Lst AcadVer ProARCH FileNam)
- ;根据分隔符拆分字符串@LeeMac
- (defun K:STR->Lst (STR Del / len Lst pos)
- (setq len (1+ (strlen Del)))
- (while (setq pos (vl-string-search Del STR))
- (setq Lst (cons (substr STR 1 pos) Lst)
- STR (substr STR (+ pos len))
- )
- )
- (reverse (cons STR Lst))
- )
- (setq AcadVer (substr (getvar "AcadVer") 1 2)
- ProARCH (strcase (getenv "PROCESSOR_ARCHITECTURE"))
- FileNam (if (eq "X86" ProARCH)
- (strcat "DOSLib" AcadVer ".ARX")
- (strcat "DOSLib" AcadVer "x64.ARX")
- )
- )
- (if (not (member ARXPath (K:STR->Lst (getenv "ACAD") ";")))
- (setenv "ACAD" (strcat (getenv "ACAD") ";" ARXPath));DosLibARX路径
- )
- (if (findfile FileNam)
- (arxload FileNam nil)
- (princ (strcat "\n——★★★ " ARXPath "未找到" FileNam ",请检查 ★★★——\n"))
- )
- (princ)
- )
函数用法:
- (K:LoadDOSLib "C:\\DosLibARX");路径自己解压后修改
复制代码
DosLib功能用法详见帮助文档
|