乐筑天下

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

[编程交流] 写一个打开面包的脚本

[复制链接]

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:40:13 | 显示全部楼层
我发现开放方法有时很麻烦,尤其是当VLIDE在评估时是开放的。
 
我通常使用此功能打开任何和所有文件或文件夹。
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:42:43 | 显示全部楼层
 
说实话,我不知道。我很快编写了这些函数,但它们都为我工作,没有任何错误。也许李对开放式方法的看法是正确的(这在以前是众所周知的!)。
 
编辑:更正。您只使用了单反斜杠“\”,其中需要双反斜杠“\”(或单正斜杠“/):眨眼:
回复

使用道具 举报

10

主题

31

帖子

21

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-6 09:46:46 | 显示全部楼层
我也试过两次反斜杠;那没用。只是试着向前砍,也没有掷骰子。我没有得到SDI错误,我检查了变量:设置为0。
 
更正:我只是愚蠢。在我修复了文件名中愚蠢的拼写错误后,双反斜杠确实有效(添加双反斜杠会意外删除目录名中的一个字母)。
 
p、 你怎么像刚才那样删掉文字?
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:50:06 | 显示全部楼层
嗯*困惑*。。。李的代码行得通吗?
回复

使用道具 举报

10

主题

31

帖子

21

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-6 09:54:31 | 显示全部楼层
 
我还没有试过李的,或者至少我不知道如何将其合并,并将其篡改为以只读方式打开文件。
 
您的代码使用了双反斜杠。现在我的问题是,它打开了行中的下一个图形,但没有关闭它或打开下一个图形。我不知道它在等什么。我暂时删除了主要例程,只是为了看看脚本是否只是正确地打开和关闭文件——我的脚本几乎是“打开,关闭,'是'放弃更改”(也尝试删除了这个,没有区别)。
 
编辑:在第二个图形打开后,脚本生成器仍希望运行某些内容,但什么也没有发生。任何关闭图形、中止计算或重新开始的尝试都会在AutoCAD中产生致命的异常。
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:56:27 | 显示全部楼层
我知道没有办法通过标准的OPEN命令来故意以只读方式打开;因此,我发布了代码,该代码*在所需(只读)状态下*打开图形。
 
我不知道您正在尝试执行什么*其他*任务,因此我无法建议在整个图形目录中实现此代码的适用方法。我想到了一对夫妇,但讨论什么行不通是没有意义的。更多(完整?)IMO需要信息。
回复

使用道具 举报

10

主题

31

帖子

21

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-6 10:00:50 | 显示全部楼层
我的脚本最终是这样的(在尝试实现您给我的代码之前):
 
  1. _.open "C:\dir\dir\dir\seconddrawing.dwg" _.kcms _.close y
  2. .
  3. .
  4. .
  5. _.open "C:\dir\dir\dir\lastdrawing.dwg" _.kcms _.close y

 
其中“kcms”是我制作的一个LISP例程(用于检查我在另一个主题中窃听过的注释记号)。它只是在图形中的所有文字/多行文字/块之间循环,并提取注释记号,然后将结果输出到。txt文件。我在那里列出了“seconddrawing.dwg”,因为我已经打开了第一个图形,我只是在进入脚本之前先在其上运行kcms(以防止AutoCAD询问我是否要打开它的只读副本)。无论如何,这一切都是可行的。
 
在您的代码之后,我将其更改为:
 
  1. (_openr "C:\\dir\\dir\\dir\\seconddrawing.dwg") _.close y
  2. .
  3. .
  4. .
  5. (_openr "C:\\dir\\dir\\dir\\lastdrawing.dwg") _.close y

 
我删除了_u。kcms临时查看我是否能够成功打开和关闭图纸。我想问题可能是AutoCAD直到我打开一个图形后才承认存在openr,但如果是这样的话,我怀疑它会首先打开第二个图形。当它打开第二个后,它不会关闭它,它只是停留在那里等待其他事情发生。将光标悬停在VLIDE窗口上会将光标更改为“思考”模式,正如我之前所说,我在尝试关闭AutoCAD或中止例程时遇到了一个致命的异常。
 
我不认为我的主要例程会成为问题,因为我知道如果我以“正常的方式”打开绘图,它可以工作,也可以与脚本一起工作切换到只读选项给我带来了麻烦,这有点糟糕,因为我期待着能够做到这一点。
 
p、 很抱歉发了这么长的帖子。我一次又一次地试图减少冗长,但都没有用。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 06:07 , Processed in 0.744617 second(s), 64 queries .

© 2020-2025 乐筑天下

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