明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 64615|回复: 150

[资源] 无聊发布CAD版本转换以及去除教育版戳记程序源代码

    [复制链接]
发表于 2011-10-15 22:15:59 | 显示全部楼层 |阅读模式
多年以前注册明经,一直潜水多,冒泡少。
今天无聊,发布两个源代码程序,里面用到了objectdbx、MSComDlg.CommonDialog、shell、递归等。里面很多函数来自于明经。
声明一下,我不是编程专家,程序里肯定还有些bug,告诉我bug的人我要感谢你,要拍砖的人请绕道。
如果觉得好用,不妨给俺加点分



经检查,上述lsp文件中还缺如下几个函数,请自行将如下代码复制到dwgconverter.lsp文件末尾,再加载。
;;=========获取ObjectDBX版本字符串============
(defun GetObjectDBXVer (/ VERSION)
  (if (>= (setq VERSION (atoi (getvar "acadver"))) 16)
    (strcat "ObjectDBX.AxDbDocument." (itoa VERSION))
    nil
  )     ;end if
)     ;end defun

;;;===========从图元表中提取dxf组码值函数组码值函数
(defun dxf (Item dxfList /) (cdr (assoc Item dxfList))) ;defun

;;=================删除文件函数===================
;; 能删除所有文件,不管只读、隐藏与否,都能删除
;; vl-file-delete不能删除只读文件
;;Scripting.FileSystemObject格式
;;fso.DeleteFile ( filespec[, force] )
;;参数
;; fso  必选项, 应为 FileSystemObject 的名称。
;; filespec 必选项, 要删除的文件的名称,filespec 可以在最后的路径成分中包含通配字符。
;; force   可选项, Boolean 值,如果要删除设置了只读属性的文件,则为 true ;如果不删除则为 false (默认)。
;; Arguments [Typ]:
;;   Fil = FileName, "C:\\test\\Autoexec.bat" [STR]
;; Notes:
;;   - Requires ScrRun.dll.
;; USAGE: (DelFile "C:\\test\\*.*")
;; USAGE: (DelFile "C:\\test\\Autoexec.bat")
(defun DeleteFile (FIL / FILSYS FILDIR SS ENT)
  (setq FILSYS (vlax-create-object "Scripting.FileSystemObject"))
  (setq FILDIR (vl-filename-directory FIL))
  (setq
    SS (vl-directory-files
  FILDIR
  (strcat (vl-filename-base FIL) (vl-filename-extension FIL))
  1
       )
  )
  (foreach ENT SS
    (vlax-invoke
      FILSYS
      "deletefile"
      (strcat FILDIR "\\" ENT)
      :vlax-false
    )
  )
  (vlax-release-object FILSYS)
  (princ)
)     ;end defun


(defun AddSeprate (DataList delimiter / i len dealdata TempData)
;;添加分隔符函数
  (setq i   1
len (length DataList)
  )
  (if len
    (progn
      (setq dealdata (nth 0 DataList))
      (if (numberp dealdata)
(setq dealdata (rtos dealdata 2))
      )
      (repeat (1- len)
(setq TempData (nth i DataList))
(if (numberp TempData)
   (setq TempData (rtos TempData 2))
)
(setq dealdata (strcat dealdata delimiter TempData))
(setq i (1+ i))
      )
    )
  )
  (setq DataList dealdata)
)
(defun makelist        (str pat / i j n lst)
;;生成表记录函数:把字符串变为表
  (cond
    ((/= (type str) (type pat) 'STR))
    ((= str pat) '(""))
    (T
     (setq i 0
           n (strlen pat)
     )
     (while (setq j (vl-string-search pat str i))
       (setq lst (cons (substr str (1+ i) (- j i)) lst)
             i         (+ j n)
       )
     )
     (reverse (cons (substr str (1+ i)) lst))
    )
  )
)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

点评

程序很好,为什么在win7 64位下就不能用呢?  发表于 2014-8-7 20:13
命令: DwgConverter 正在初始化 VBA 系统...; 错误: *error* 函数中出错AutoCAD 变量设置被拒绝: "acadlspasdoc" nil  发表于 2013-1-5 12:13

评分

参与人数 25明经币 +26 金钱 +149 收起 理由
muwind + 1 很给力!
434939575 + 1 很给力!
ucuc2003 + 1 很给力!
flytoday + 1 提了只能用于2010以上版本
chlh_jd + 1 很给力,有点小问题后续
革天明 + 1 很给力!
CAD绘图 + 10
yanshengjiang + 1 很给力!
lrd1861 + 1 赞一个!
prcstone + 10

查看全部评分

本帖被以下淘专辑推荐:

发表于 2017-10-12 17:26:50 | 显示全部楼层
命令: DWGCONVERTER
错误:Automation 错误。 加载 VBA 时出现问题
AutoCAD 变量设置被拒绝: "acadlspasdoc" nil
这个怎么解决。。。。。。。。看了评论也没解
发表于 2017-10-9 21:59:39 | 显示全部楼层
本帖最后由 qwerasdf123456 于 2017-10-9 22:37 编辑

顶22222222222222222222222222222
发表于 2017-11-9 13:13:14 | 显示全部楼层
好长的代码 眼晕 先下载慢慢研究
发表于 2011-10-15 22:23:00 | 显示全部楼层
谢谢楼主,分享这么好的代码
发表于 2011-10-16 05:27:16 | 显示全部楼层
支持一下辛苦了
发表于 2011-10-16 08:28:41 | 显示全部楼层
多谢版主!好用,谢谢了!!
发表于 2011-10-16 08:37:25 | 显示全部楼层
辛苦了
辛苦了
发表于 2011-10-16 10:19:01 | 显示全部楼层
函数里面好像有多余括号,适用版本提示2010及以上
 楼主| 发表于 2011-10-16 12:04:25 | 显示全部楼层
xyz2009xyz 发表于 2011-10-16 10:19
函数里面好像有多余括号,适用版本提示2010及以上

因为这个函数是从我的函数库里挑出来的,因此出现了多余括号,我已经修改完毕。
至于只能用于2010版本以上,那是程序中的限制,既然是源代码,那么自己可以修改,只要支持objectdbx的autocad版本就成。
 楼主| 发表于 2011-10-16 12:17:03 | 显示全部楼层
里面可能还缺个别引用的函数,我没有仔细查,如果有缺的,请大伙提出来,我一并补上。
发表于 2011-10-16 17:02:22 | 显示全部楼层
iceberg2509 发表于 2011-10-16 12:04
因为这个函数是从我的函数库里挑出来的,因此出现了多余括号,我已经修改完毕。
至于只能用于2010版本以 ...

可惜啊,我不会改哦,不知道有没人改下呢,
cad2004
发表于 2011-10-16 21:48:18 | 显示全部楼层
不错不错,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-22 09:20 , Processed in 0.223285 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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