G版的自动保存,没有保存的图纸打开后,提示保存实际没有保存。
本帖最后由 chenqiang26 于 2019-7-15 15:06 编辑只有打开已经保存的文件才会自动备份保存,如果是新建Drawing文件没有保存之前,仍然会提示已经保存到***目录 ,但是实际并没有生成文件。 ;;文件备份 By Gu_xl 2013.05.19
(defun c:tt1 (/ PATH NAME TIME) (vl-load-com)
(setq path (getvar 'dwgprefix)
name (getvar 'dwgname)
time (rtos (getvar 'cdate) 2 4)
time (vl-string-subst "-" "." time)
)
(if (not (findfile (strcat path "备份目录")))
(progn
(gxl-file-CreateFolder (strcat path "备份目录") 0)
)
)
(command "save" (strcat path "备份目录\\" (VL-FILENAME-BASE name) "-" time ".dwg"))
(Explore(strcat path "备份目录\\" )
)
)
(defun gxl-file-CreateFolder (FNAME att / SYS FOLDER)
(if (not (findfile FNAME))
(progn
(setq SYS (vlax-create-object "Scripting.FileSystemObject"))
(setq FOLDER (VL-CATCH-ALL-APPLY
'vlax-invoke-method
(list SYS 'CREATEFOLDER FNAME)
)
)
(if (not (VL-CATCH-ALL-ERROR-P FOLDER))
(progn
(vlax-put FOLDER
"Attributes"
att
)
(vlax-release-object FOLDER)
)
)
(vlax-release-object SYS)
)
)
)
;;;(Explore 路径) 浏览文件夹
;;;(Explore "c:\\") (Explore 5)
(defun Explore ( target / Shell result ) (vl-load-com)
;; ?Lee Mac 2010
(setq Shell(vla-getInterfaceObject (vlax-get-acad-object) "Shell.Application"))
(setq result
(and (or (eq 'INT (type target)) (vl-file-directory-p target))
(not
(vl-catch-all-error-p
(vl-catch-all-apply 'vlax-invoke (list Shell 'Explore target))
)
)
)
)
(vlax-release-object Shell)
result
) 那你保存到外部文本或者注册表里去不就得了 烟盒迷唇 发表于 2019-7-16 20:59
那你保存到外部文本或者注册表里去不就得了
我是说这个打开lisp加载启动组之后,我打开之前的图纸修改,比如设置成1分钟自动保存一次,他每分钟会在文件夹生成一个备份的DWG文件。但是如果我是新建的CAD还没有保存,他每分钟也会提示保存了一个DWG文件 ,但是实际上没有生成备份的DWG文件! 为什么提示没有权限 这个好用,感谢分享
页:
[1]