cad版本查询 lisp
(getvar "acadver")2010版本返回值是:"18.0s (LMS Tech)"
2004版本返回值是:"16.0s (LMS Tech)"
有没有直接返回2010或者2004 的语句,
Autodesk没有提供,自己再处理 好吧,那只能根据对返回值的字符串处理,用cond判断了 从注册表中读取,有的。 直接用函数(ver)的返回值判断 命令: (ver)
"Visual LISP 2004 (en)" (cond
((= cadver "R16.0") (setq str "ACAD-201:804")) ;_CAD2004
((= cadver "R16.1") (setq str "ACAD-301:804")) ;_CAD2005
((= cadver "R16.2") (setq str "ACAD-4001:804")) ;_CAD2006
((= cadver "R17.0") (setq str "ACAD-5001:804")) ;_CAD2007
((= cadver "R17.1") (setq str "ACAD-6001:804")) ;_CAD2008
((= cadver "R17.2") (setq str "ACAD-7000:409")) ;_CAD2009
((= cadver "R18.0") (setq str "ACAD-8001:804")) ;_CAD2010
((= cadver "R18.2") (setq str "ACAD-A001:804")) ;_CAD2012ACAD-A005:804
((= cadver "R19.0") (setq str "ACAD-B002:409")) ;_CAD2013
) (atoi (substr (ver) 13)) 谢谢大神,都解决了我的问题,我自己用(substr (ver) 13 4)就ok啦。。
这个功能具体的用途是什么呀
页:
[1]
2