明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1698|回复: 3

[基础] 输出文件 路径不能识别

[复制链接]
发表于 2011-3-15 11:33:01 | 显示全部楼层 |阅读模式
各位前辈大虾们:
小弟了拼凑这么一个程序 ,主要的功能是   
选择需要打印为eps文件的图层 ,
按层名输出为eps文件 ,
打印设置为调用上一次.

在本机电脑上没有问题,能够正确执行
按层名输出到D:\\My Documents\\ 目录下
但是给单位同事使用的时候结果大家都不能用,
不明白是哪里出了问题,
已经排除了CAD版本的因素 ,因为我的电脑AutoCAD04 09 都能正常执行 ,别人的都不能正常执行
怀疑过几个变量,cmddia等,也不是
在就是电脑windows设置的因素,好像也没什么太大的区别
实在是没辙了,想不出也没查出是 为什么
恳请前辈大虾们指教~
谢过~
如果有可能,请在帮小弟把打印时独立的图层恢复回去,
这个也没搞定,起先想调用09的图层恢复,没管用,
后来自己写了一下,说输入字符超出限制(因为图层很多,图层名很长)
谢了~



;;;17:49 2011-2-23


;主要是这里的问题
(defun dayin (tc) ;tc 为打出的文件名
(setq tc (strcat "D:\\My Documents\\" tc))
(command "-plot" "" "" "<上一次打印>" "" "y" tc "" "" "y")
)

(defun c:tt ( / ss n ent i xz xz1 xz2 cm xz3)
     ;这里就是独立图层,没啥   
   (if (or (= xz nil)(= xz 1))(setq xz1 "on" xz2 "off" xz3 "Y")
     )
      (princ "\n首选对象所在层将被置为当前")(princ)
   (setq ss (ssget))
   (setq n (sslength ss) i 0)
   (command "layer" xz2 "*" xz3 "")
   (repeat n
      (setq ent (entget (ssname ss i)))
      (setq i (+ i 1))
      (setq cm (cdr (assoc 8 ent)))
      (if (and (= i 1)(/= xz 2))(command "layer" "s" cm))
      (if (/= i 1)(command xz1 cm))
   )
   (command "")


;这里就是检测当前显示的图层名设为变量 ,后面作为eps文件名,也没啥
(setq n 1)
(while (setq lay (tblnext "layer" (not lay)))
  (if (> (cdr (assoc 62 lay)) 0)
    (if (= n 1)
      (progn (setq date (cdr (assoc 2 lay))  ) (setq n 2))
      (setq date (strcat date "," (cdr (assoc 2 lay)))   ))
))

  (dayin date)  ;data为图层列表
)





 楼主| 发表于 2011-3-15 17:45:30 | 显示全部楼层
自己顶顶
 楼主| 发表于 2011-3-17 19:23:07 | 显示全部楼层
又沉了,再顶顶
 楼主| 发表于 2011-3-22 13:07:47 | 显示全部楼层
又沉了,再顶顶
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-2 00:09 , Processed in 0.187792 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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