马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×

- [FONT=courier new]
- 1. 查找指定目录特定文件列表
- ;;;(FindFiles_lst "c:\\hqd9639" "*`.dwg")
- (defun findfiles_lst (dir Pattern / FILSYS pattern folderobj Files result)
- (vl-load-com)
- (setq FILSYS (vlax-create-object "Scripting.FileSystemObject"))
- (if (/= (vlax-invoke-method FILSYS "FolderExists" dir) :vlax-false)
- (progn
- (setq pattern (strcase pattern))
- (setq folderobj (vlax-invoke-method FILSYS "GetFolder" dir))
- (setq Files (vlax-get-property folderobj "Files"))
- (vlax-for file files
- (if (wcmatch (strcase (vla-get-name file)) pattern)
- (setq result (cons (vla-get-path file) result))
- )
- (vlax-release-object file)
- )
- (vlax-release-object files)
- (vlax-release-object folderobj)
- (vlax-release-object FILSYS)
- result
- )
- (progn
- (vlax-release-object FILSYS)
- nil
- )
- )
- )
- ;;;
- 2. 用VLISP重命名文件夹
- ;;;(ren_folder "c:\\hqd9639" "hqd")
- (defun ren_folder (oldfolder newname / FILSYS folderobj)
- (vl-load-com)
- (setq FILSYS (vlax-create-object "Scripting.FileSystemObject"))
- (if (/= (vlax-invoke-method FILSYS "FolderExists" oldfolder) :vlax-false)
- (progn
- (setq folderobj (vlax-invoke-method FILSYS "GetFolder" oldfolder))
- (if (/= (vla-get-Name folderobj) newname)
- (progn
- (vla-put-Name folderobj newname)
- T
- )
- nil
- )
- )
- nil
- )
- )
- ;;;
- 3. 用VLISP获取硬盘系列号
- ;;;(GET_DRIVE_SN "c")
- (defun get_drive_sn (drive / FILSYS driveobj)
- (vl-load-com)
- (setq FILSYS (vlax-create-object "Scripting.FileSystemObject"))
- (if (/= (vlax-invoke-method FILSYS "DriveExists" drive) :vlax-false)
- (progn
- (setq driveobj (vlax-invoke-method FILSYS "GetDrive" drive))
- (vlax-get-property driveobj "SerialNumber")
- )
- nil
- )
- )
- [/FONT]
|