Lee Mac 发表于 2022-7-6 03:42:19

也许 吧:
(findfile (strcat (getvar 'dwgprefix) "BX-" (vl-filename-base (getvar 'dwgname)) ".jpg"))

EricDevault 发表于 2022-7-6 03:48:17

这样行得通,有没有办法验证文件大小?

Lee Mac 发表于 2022-7-6 03:51:56

 
使用vl文件大小函数

EricDevault 发表于 2022-7-6 03:55:34

 
啊,谢谢!!

EricDevault 发表于 2022-7-6 03:58:06

经过多次尝试,我仍然无法使其产生我想要的效果。基本上是这样的场景:“piggyback程序”上的DCL和Lisp函数处于锁定状态,但它主要做的是创建一个X-Y坐标。cmd文件供切割机读取。那个cmd必须用于生产,但它是一个用户输入,不能自动执行,这就是为什么我想在F:驱动器上的强制检查文件位置,这是可行的。还有一个BX-123456。必须创建的jpg打印在标签上并粘贴在装运箱外部。这jpg只是上述部分的平面图。这也是一个复制视图、粘贴到绘图和保存的用户输入方法,我想检查BX文件是否正在更新,我唯一能想到的方法是验证大小是否在50kb以上
(defun c:findbox ( / fn )
   (setq fn (strcat (getvar 'dwgprefix) "BX-" (vl-filename-base (getvar 'dwgname)) ".jpg"))
   (alert
       (strcat "The Box Drawing \"" fn "\" was "
         (if (findfile fn)
               "found."
               "not found."
         )
       )
   )
   (princ)
)

我不知道vl文件大小函数应该放在哪里,也就是说它是在以下情况下创建的:

Lee Mac 发表于 2022-7-6 04:03:51

我不完全确定如果找到或未找到文件,您希望采取什么行动,但要验证文件大小,您可以使用:
(defun c:findbox ( / fn )
   (alert
       (strcat
         "The Box Drawing \""
         (setq fn (strcat (getvar 'dwgprefix) "BX-" (vl-filename-base (getvar 'dwgname)) ".jpg"))
         "\" was "
         (if (findfile fn)
               (strcat "found with filesize " (rtos (/ (vl-file-size fn) 1024.0) 2 2) " KB")
               "not found."
         )
       )
   )
   (princ)
)
页: 1 [2]
查看完整版本: 定位本地文件