我通常使用此功能打开任何和所有文件或文件夹。
说实话,我不知道。我很快编写了这些函数,但它们都为我工作,没有任何错误。也许李对开放式方法的看法是正确的(这在以前是众所周知的!)。
编辑:更正。您只使用了单反斜杠“\”,其中需要双反斜杠“\”(或单正斜杠“/):眨眼: 我也试过两次反斜杠;那没用。只是试着向前砍,也没有掷骰子。我没有得到SDI错误,我检查了变量:设置为0。
更正:我只是愚蠢。在我修复了文件名中愚蠢的拼写错误后,双反斜杠确实有效(添加双反斜杠会意外删除目录名中的一个字母)。
p、 你怎么像刚才那样删掉文字? 嗯*困惑*。。。李的代码行得通吗?
我还没有试过李的,或者至少我不知道如何将其合并,并将其篡改为以只读方式打开文件。
您的代码使用了双反斜杠。现在我的问题是,它打开了行中的下一个图形,但没有关闭它或打开下一个图形。我不知道它在等什么。我暂时删除了主要例程,只是为了看看脚本是否只是正确地打开和关闭文件——我的脚本几乎是“打开,关闭,'是'放弃更改”(也尝试删除了这个,没有区别)。
编辑:在第二个图形打开后,脚本生成器仍希望运行某些内容,但什么也没有发生。任何关闭图形、中止计算或重新开始的尝试都会在AutoCAD中产生致命的异常。 我知道没有办法通过标准的OPEN命令来故意以只读方式打开;因此,我发布了代码,该代码*在所需(只读)状态下*打开图形。
我不知道您正在尝试执行什么*其他*任务,因此我无法建议在整个图形目录中实现此代码的适用方法。我想到了一对夫妇,但讨论什么行不通是没有意义的。更多(完整?)IMO需要信息。 我的脚本最终是这样的(在尝试实现您给我的代码之前):
_.open "C:\dir\dir\dir\seconddrawing.dwg" _.kcms _.close y
.
.
.
_.open "C:\dir\dir\dir\lastdrawing.dwg" _.kcms _.close y
其中“kcms”是我制作的一个LISP例程(用于检查我在另一个主题中窃听过的注释记号)。它只是在图形中的所有文字/多行文字/块之间循环,并提取注释记号,然后将结果输出到。txt文件。我在那里列出了“seconddrawing.dwg”,因为我已经打开了第一个图形,我只是在进入脚本之前先在其上运行kcms(以防止AutoCAD询问我是否要打开它的只读副本)。无论如何,这一切都是可行的。
在您的代码之后,我将其更改为:
(_openr "C:\\dir\\dir\\dir\\seconddrawing.dwg") _.close y
.
.
.
(_openr "C:\\dir\\dir\\dir\\lastdrawing.dwg") _.close y
我删除了_u。kcms临时查看我是否能够成功打开和关闭图纸。我想问题可能是AutoCAD直到我打开一个图形后才承认存在openr,但如果是这样的话,我怀疑它会首先打开第二个图形。当它打开第二个后,它不会关闭它,它只是停留在那里等待其他事情发生。将光标悬停在VLIDE窗口上会将光标更改为“思考”模式,正如我之前所说,我在尝试关闭AutoCAD或中止例程时遇到了一个致命的异常。
我不认为我的主要例程会成为问题,因为我知道如果我以“正常的方式”打开绘图,它可以工作,也可以与脚本一起工作切换到只读选项给我带来了麻烦,这有点糟糕,因为我期待着能够做到这一点。
p、 很抱歉发了这么长的帖子。我一次又一次地试图减少冗长,但都没有用。
页:
1
[2]