乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 63|回复: 12

[编程交流] 你能删除(DWS)文件吗

[复制链接]

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 22:30:45 | 显示全部楼层 |阅读模式
我的公司使用AutoCAD标准检查器。我们有一个与边框相关的DWS文件,当我们向客户提交图纸时,必须删除所有图纸。我正在寻找一个lisp例程,如果有的话,它将卸载DWS文件。有人能帮忙吗?
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 22:36:16 | 显示全部楼层
您将如何手动解除它们的关联?
回复

使用道具 举报

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 22:45:22 | 显示全部楼层
我必须打开每张图纸,然后执行以下两种方法之一;工具栏:工具/Cad标准/配置或命令行:标准。对话框出现后,选择加载的标准(如果图形有,有些没有),然后点击(X)按钮,从图形中删除标准(DWS文件)。保存图形,关闭它,打开下一个图形并重复。
我发现了一个批处理例程,可以打开文件夹中的每个图形,并在图形上运行清理LISP,但我需要将其添加到其中。遇到麻烦,如果有任何帮助,我们将不胜感激。
回复

使用道具 举报

4

主题

327

帖子

324

银币

初来乍到

Rank: 1

铜币
19
发表于 2022-7-5 22:49:07 | 显示全部楼层
我不使用它们,但您可以尝试将系统变量STANDARDSVIOLATION设置为0
回复

使用道具 举报

8

主题

80

帖子

72

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 22:51:22 | 显示全部楼层
清除是否删除dws文件?
回复

使用道具 举报

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 23:00:40 | 显示全部楼层
不,清除对它们不起作用。必须在命令行中键入(标准),选择文件,然后点击(X)按钮删除它们。当你处理几百幅画的时候,你会觉得很糟糕。这就是为什么我希望有人知道如何编写LISP或一些可以处理这个问题的东西。
回复

使用道具 举报

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 23:05:30 | 显示全部楼层
这是我在互联网上找到的代码,但它不起作用,它可能起作用,但不是我想要它做的。我不确定它是做什么的,因为我不理解这个代码。
 
  1. (vl-load-com); Doc is the document (drawing) you want to erase all DWS file associations.
  2. (defun DeleteDWSDict (Doc / DictObj)
  3. (if
  4. (not
  5. (vl-catch-all-error-p
  6.   (setq DictObj
  7.    (vl-catch-all-apply
  8.     'vla-Item
  9.     (list
  10.      (vla-get-Dictionaries Doc)
  11.      "AcStStandard"
  12.     )
  13.    )
  14.   )
  15. )
  16. )
  17. (progn
  18. (prompt (strcat "\n Deleted " (itoa (vla-get-Count DictObj)) " DWS file associations."))
  19. (vla-Delete DictObj)
  20. )
  21. (prompt "\n No attached DWS files.")
  22. )
  23. (princ)
  24. )
回复

使用道具 举报

4

主题

327

帖子

324

银币

初来乍到

Rank: 1

铜币
19
发表于 2022-7-5 23:09:52 | 显示全部楼层
也许我遗漏了什么,但为什么你需要摆脱标准呢?
如果将客户端副本保存到文件中,然后运行批处理脚本,将系统变量standardsviolation设置为0,则客户端可以对图形执行任何操作,而无需任何nag屏幕。
回复

使用道具 举报

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 23:14:49 | 显示全部楼层
公司流程,这是我们必须做的,不知道为什么。也许是为了减少文件大小,这样它就不会出现在电子传输中,谁知道呢。。。这是我们被告知要做的。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 23:19:52 | 显示全部楼层
 
它只是删除了AcStStandard字典-我不知道标准存储在那里,也没有办法测试它,但我可以为您提供这样做的功能:
 
  1. (defun c:test (/ DictObj)
  2. (vl-load-com)
  3. (if (not (vl-catch-all-error-p
  4.             (setq DictObj (vl-catch-all-apply 'vla-item
  5.                             (list (vla-get-Dictionaries
  6.                                     (vla-get-ActiveDocument
  7.                                       (vlax-get-acad-object))) "AcStStandard")))))
  8.    (progn
  9.      (princ (strcat "\n<< Deleted " (itoa (vla-get-Count DictObj)) " DWS File Associations >>"))
  10.      (vla-Delete DictObj))
  11.    (princ "\n<< No Attached DWS Files >>"))
  12. (princ))
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-11 06:35 , Processed in 0.787151 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表