编LISP求助,程序不能按设计意图运行!!!!!
<p>我想利用LISP 对当前打开的文件,其所在文件夹的所有DWG文件进行批量处理,可程序运行后,总对当前打开的文件起作用,不能对批量打开的DWG文件进行处理,,,,请高手帮忙!!!!</p><div class="htmlcode" id="mc36122" style="BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; PADDING-LEFT: 5px; BORDER-LEFT: #ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid;"><font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/defun.htm" target="_black"><font color="#0000ff">defun</font></a><font color="#0000ff"><b>C:bclf</b></font>
<font color="#ff0000">(</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/vl-load-com.htm" target="_black"><font color="#0000ff">vl-load-com</font></a><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> HOLDECHO <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/getvar.htm" target="_black"><font color="#0000ff">getvar</font></a>
<font color="#ff00ff">"cmdecho"</font><font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setvar.htm" target="_black"><font color="#0000ff">setvar</font></a>
<font color="#ff00ff">"cmdecho"</font>
<font color="#008000">0</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> HOLDLSP <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/getvar.htm" target="_black"><font color="#0000ff">getvar</font></a>
<font color="#ff00ff">"ACADLSPASDOC"</font><font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setvar.htm" target="_black"><font color="#0000ff">setvar</font></a>
<font color="#ff00ff">"acadlspasdoc"</font>
<font color="#008000">0</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/if.htm" target="_black"><font color="#0000ff">if</font></a>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/61.htm" target="_black"><font color="#0000ff">=</font></a>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/getvar.htm" target="_black"><font color="#0000ff">getvar</font></a>
<font color="#ff00ff">"DWGTITLED"</font><font color="#ff0000">)</font>
<font color="#008000">1</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/progn.htm" target="_black"><font color="#0000ff">progn</font></a><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> path <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/getvar.htm" target="_black"><font color="#0000ff">getvar</font></a>
<font color="#ff00ff">"DWGPREFIX"</font><font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a><br/> DWG_LIST <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/acad_strlsort.htm" target="_black"><font color="#0000ff">acad_strlsort</font></a>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/vl-directory-files.htm" target="_black"><font color="#0000ff">vl-directory-files</font></a> path <font color="#ff00ff">"*.dwg"</font>
<font color="#008000">1</font><font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> list_number <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/vl-list-length.htm" target="_black"><font color="#0000ff">vl-list-length</font></a> dwg_list<font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> index <font color="#008000">0</font><br/> nm <font color="#008000">0</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/repeat.htm" target="_black"><font color="#0000ff">repeat</font></a> list_number<br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> dwgfile <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/nth.htm" target="_black"><font color="#0000ff">nth</font></a> index DWG_LIST<font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><font color="#0000ff">vla-open</font>
<font color="#ff0000">(</font><font color="#0000ff">vla-get-documents</font>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/vlax-get-acad-object.htm" target="_black"><font color="#0000ff">vlax-get-acad-object</font></a><font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/strcat.htm" target="_black"><font color="#0000ff">strcat</font></a> path dwgfile<font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/vl-Catch-All-Apply.htm" target="_black"><font color="#0000ff">vl-Catch-All-Apply</font></a><br/> '<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/lambda.htm" target="_black"><font color="#0000ff">lambda</font></a>
<font color="#ff0000">(</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><font color="#0000ff">vla-Remove</font><br/> <font color="#ff0000">(</font><font color="#0000ff">vla-GetExtensionDictionary</font><br/> <font color="#ff0000">(</font><font color="#0000ff">vla-Get-Layers</font><br/> <font color="#ff0000">(</font><font color="#0000ff">vla-Get-ActiveDocument</font>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/vlax-Get-Acad-Object.htm" target="_black"><font color="#0000ff">vlax-Get-Acad-Object</font></a><font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff00ff">"ACAD_LAYERFILTERS"</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/command.htm" target="_black"><font color="#0000ff">command</font></a>
<font color="#ff00ff">"purge"</font>
<font color="#ff00ff">"a"</font>
<font color="#ff00ff">"*"</font>
<font color="#ff00ff">"n"</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> index <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/1+.htm" target="_black"><font color="#0000ff">1+</font></a> index<font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> nm <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/1+.htm" target="_black"><font color="#0000ff">1+</font></a> nm<font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/command.htm" target="_black"><font color="#0000ff">command</font></a>
<font color="#ff00ff">"qsave"</font><font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/alert.htm" target="_black"><font color="#0000ff">alert</font></a>
<font color="#ff00ff">"You Must Open An Exited Dwg-file With READ-ONLY First!"</font><font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/prompt.htm" target="_black"><font color="#0000ff">prompt</font></a>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/strcat.htm" target="_black"><font color="#0000ff">strcat</font></a>
<font color="#ff00ff">"Batch operate "</font>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/itoa.htm" target="_black"><font color="#0000ff">itoa</font></a> nm<font color="#ff0000">)</font>
<font color="#ff00ff">" files!"</font><font color="#ff0000">)</font><font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setvar.htm" target="_black"><font color="#0000ff">setvar</font></a>
<font color="#ff00ff">"acadlspasdoc"</font> HOLDLSP<font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setvar.htm" target="_black"><font color="#0000ff">setvar</font></a>
<font color="#ff00ff">"cmdecho"</font> HOLDECHO<font color="#ff0000">)</font><br/> <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/princ.htm" target="_black"><font color="#0000ff">princ</font></a><font color="#ff0000">)</font><br/> <font color="#ff0000">)</font><br/><br/></div> <p>批处理LISP不擅长,用VBA方便一些.</p><p>用VBA打开每一个dwg,然后SendCommand一个lisp命令,处理后保存关闭.</p> 何不试下打开文件后,先对其它文件执行命令,最后再执行当前文档。
页:
[1]