找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 4930|回复: 21

[研讨] zml84的查看DWG文件版本

[复制链接]

已领礼包: 604个

财富等级: 财运亨通

发表于 2013-11-30 09:07:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
今天看了一下zml84的日字文件,《查看DWG文件版本》为什么时灵时不灵,难道是传说中的六脉神剑?还有改进空间吗?
  1. ;;功能:查看DWG文件版本 by zml84
  2. ;;http://zml84.blog.sohu.com/113218838.html
  3. (defun C:DWGVER (/ DWGFILE F INITDIR TMP)
  4.   (setq Initdir (getvar "dwgprefix"))
  5.   (setq DWGFILE (getfiled "选择DWG文件" Initdir "dwg" 0))
  6.   (if (and
  7.         (setq F (open DWGFILE "r"))
  8.         (setq TMP (substr (read-line F) 1 6))
  9.       )
  10.     (progn
  11.       (close F)
  12.       (setq TMP        (assoc TMP
  13.                        '(("AC1.50" "AutoCAD R2.05")
  14.                          ("AC1002" "AutoCAD R2.6")
  15.                          ("AC1004" "AutoCAD R9")
  16.                          ("AC1006" "AutoCAD R10")
  17.                          ("AC1009" "AutoCAD R11 or R12")
  18.                          ("AC1012" "AutoCAD R13")
  19.                          ("AC1014" "AutoCAD R14")
  20.                          ("AC1015" "AutoCAD 2000 or 2000i or 2002")
  21.                          ("AC1018" "AutoCAD 2004 or 2005 or 2006")
  22.                          ("AC1021" "AutoCAD 2007 or 2008 or 2009")
  23.                          ("AC1024" "AutoCAD 2010")
  24.                         )
  25.                 )
  26.       )
  27.       (setq TMP (cadr TMP))
  28.     )
  29.   )
  30. )

tmp.lsp

831 Bytes, 下载次数: 6, 下载积分: D豆 -1 , 活跃度 1

本帖被以下淘专辑推荐:

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-11-30 09:23:24 | 显示全部楼层
2013 2014 图形是 AC1027

点评

关键是并非所有.dwg文件打开后,(read-line F)都能成功。同样是.dwg文件,有什么讲究吗?  详情 回复 发表于 2013-11-30 12:47
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

 楼主| 发表于 2013-11-30 12:47:02 | 显示全部楼层
st788796 发表于 2013-11-30 09:23
2013 2014 图形是 AC1027

关键是并非所有.dwg文件打开后,(read-line F)都能成功。同样是.dwg文件,有什么讲究吗?

点评

是不是那些需要修复的readline会出现错误  详情 回复 发表于 2013-11-30 12:57
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-11-30 12:57:40 来自手机 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-11-30 12:47
关键是并非所有.dwg文件打开后,(read-line F)都能成功。同样是.dwg文件,有什么讲究吗?

是不是那些需要修复的readline会出现错误

点评

比如wblock定义的块,后缀名仍然.dwg,读时为nil  发表于 2013-11-30 12:59
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

 楼主| 发表于 2013-11-30 13:10:28 | 显示全部楼层
本帖最后由 /db_自贡黄明儒_ 于 2013-11-30 13:12 编辑

;;下面这样写,程序就不容易出错,但对于wblock生成块文件,仍然返回nil
  1. ;;[功能] 查看DWG文件版本
  2. (defun C:DWGVER        (/ DWGFILE F INITDIR LST TMP)
  3.   (setq Initdir (getvar "dwgprefix"))
  4.   (setq DWGFILE (getfiled "选择DWG文件" Initdir "dwg" 0))
  5.   (setq        lst '(("AC1.50" "AutoCAD R2.05")
  6.               ("AC1002" "AutoCAD R2.6")
  7.               ("AC1004" "AutoCAD R9")
  8.               ("AC1006" "AutoCAD R10")
  9.               ("AC1009" "AutoCAD R11 or R12")
  10.               ("AC1012" "AutoCAD R13")
  11.               ("AC1014" "AutoCAD R14")
  12.               ("AC1015" "AutoCAD 2000 or 2000i or 2002")
  13.               ("AC1018" "AutoCAD 2004 or 2005 or 2006")
  14.               ("AC1021" "AutoCAD 2007 or 2008 or 2009")
  15.               ("AC1024" "AutoCAD 2010")
  16.              )
  17.   )
  18.   (if (and DWGFILE
  19.            (setq F (open DWGFILE "r"))
  20.            (setq TMP (read-line F))          
  21.       )
  22.     (setq TMP (cadr (assoc (substr TMP 1 6) lst)))
  23.   )
  24.   (if F
  25.     (close F)
  26.   )
  27.   TMP
  28. )

点评

我测试正常,没有读不出来, 你用 Notepad 打开 DWG, 前面几个字符就是 版本号 , 这个程序原理就是这个  详情 回复 发表于 2013-11-30 15:32
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-11-30 15:32:49 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-11-30 13:10
;;下面这样写,程序就不容易出错,但对于wblock生成块文件,仍然返回nil

我测试正常,没有读不出来, 你用 Notepad  打开 DWG, 前面几个字符就是 版本号 , 这个程序原理就是这个
dwgver.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2013-11-30 15:47:08 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-11-30 13:10
;;下面这样写,程序就不容易出错,但对于wblock生成块文件,仍然返回nil

不会是加密了的DWG文件吧?有一种软件是老板们的最爱,就是加密软件,把图形文件加密后,文件名不变,磁盘内容全变了,这个程序是肯定没用的。

点评

我用打开我自己定义的块,或者其它wbLOck生成的块文件,均返回niL,我的机子是没有加密的,  详情 回复 发表于 2013-11-30 17:27
这种DWG估计是直接打不开的。  详情 回复 发表于 2013-11-30 15:51
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-11-30 15:51:22 | 显示全部楼层
ll_j 发表于 2013-11-30 15:47
不会是加密了的DWG文件吧?有一种软件是老板们的最爱,就是加密软件,把图形文件加密后,文件名不变,磁 ...

这种DWG估计是直接打不开的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2013-11-30 15:53:57 | 显示全部楼层
newer 发表于 2013-11-30 15:51
这种DWG估计是直接打不开的。

在支持加密的机子上是能打开的,而且表面上也没有什么不一样,但一些需要对字符处理的Lisp文件就无法正常运行了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

 楼主| 发表于 2013-11-30 17:27:07 来自手机 | 显示全部楼层
ll_j 发表于 2013-11-30 15:47
不会是加密了的DWG文件吧?有一种软件是老板们的最爱,就是加密软件,把图形文件加密后,文件名不变,磁 ...

我用打开我自己定义的块,或者其它wbLOck生成的块文件,均返回niL,我的机子是没有加密的,

点评

你 CAD 什么版本?  详情 回复 发表于 2013-11-30 17:40
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-11-30 17:40:25 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-11-30 17:27
我用打开我自己定义的块,或者其它wbLOck生成的块文件,均返回niL,我的机子是没有加密的,

你 CAD 什么版本?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2013-11-30 17:47:43 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-11-30 17:27
我用打开我自己定义的块,或者其它wbLOck生成的块文件,均返回niL,我的机子是没有加密的,

你使用的不是2013+版本的ACAD吧?这个程序只到2010文件(ACAD版本只到2012)。你把dwg文件使用Win的写字板打开看看,最前面的几个字母是什么?在你程序中所列有吗?

点评

我有05版wblock生成的块文件,用记事本打开,什么内容也没有 看来zml84的这种方法不靠谱  详情 回复 发表于 2013-12-2 08:16
05版的,星期一上班我打开看看,到底怎公回事  详情 回复 发表于 2013-12-1 00:00
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

 楼主| 发表于 2013-12-1 00:00:57 来自手机 | 显示全部楼层
ll_j 发表于 2013-11-30 17:47
你使用的不是2013+版本的ACAD吧?这个程序只到2010文件(ACAD版本只到2012)。你把dwg文件使用Win的写字 ...

05版的,星期一上班我打开看看,到底怎公回事
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

 楼主| 发表于 2013-12-2 08:16:56 | 显示全部楼层
本帖最后由 /db_自贡黄明儒_ 于 2013-12-2 08:44 编辑
ll_j 发表于 2013-11-30 17:47
你使用的不是2013+版本的ACAD吧?这个程序只到2010文件(ACAD版本只到2012)。你把dwg文件使用Win的写字 ...


我有05版wblock生成的块文件,用记事本打开,什么内容也没有
看来zml84的这种方法不靠谱

ren.rar

71 Bytes, 下载次数: 3, 下载积分: D豆 -1 , 活跃度 1

ren.rar

75 Bytes, 下载次数: 0, 下载积分: D豆 -1 , 活跃度 1

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2013-12-2 08:24:10 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-12-2 08:16
我有05版wblock生成的块文件,用记事本打开,什么内容也没有
看来zml84的这种方法不靠谱

如果你上传没有错误的话,这个文件的确打不开,因为是0字节。
估计你是在图形打开状态压缩的,Acad打开图形后,会建立锁定,建议你退出图形再压缩上传。

点评

谢谢元老的耐心和热情,看来是我的文件错误导致我得出了错误的结论,zml84的方法是可行的  详情 回复 发表于 2013-12-2 08:54
我更新了,谢谢元老帮看看  发表于 2013-12-2 08:28
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-2 21:42 , Processed in 0.276841 second(s), 70 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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