citykunan
发表于 2005-1-31 14:34:00
这个没有关系,只要在acad2000.lsp中写入加载,那么别人就没办法轻易改我的图纸了。
f5612140
发表于 2005-1-31 15:13:00
本帖最后由 作者 于 2005-1-31 15:50:41 编辑 <br /><br /> citykunan发表于2005-1-31 14:34:00static/image/common/back.gif这个没有关系,只要在acad2000.lsp中写入加载,那么别人就没办法轻易改我的图纸了。
<BR>如果删了acaD2000.LSP,那么...
citykunan
发表于 2005-1-31 16:22:00
这只是针对一般的cad用户进行的保密工作。
Ea
发表于 2005-1-31 18:03:00
citykunan发表于2005-1-31 10:06:00static/image/common/back.gif真是谢谢EA大侠,大侠果然是反应器方面的专家。但是还有一个问题,就是可以通过图层的TOOLBAR下拉菜单解锁,不知有没有办法处理。还有能不能对特定的图层进行锁定...
ddd 只是个示例,至于使用哪个图层你自己修改程序中相应的部分。使用 Toolbar 可以修改,这个没有办法处理,不过后面只要有其他的命令等触发还会自动锁上的。即使用 Toolbar 解锁了图层并绘制了实体,后面还会删除并锁定的。<br>
citykunan
发表于 2005-2-4 12:53:00
谢谢EA ,图层的问题已解决了,自定义一个函数就可以了。
(defun leolayer (/ layern)<BR> (setq layern "aaa")<BR> layern<BR>)
再用(LEOLAYER)代替"DDD"就可以了。
还有一点我想问问EA大侠,在程序里有没有办法生成永久反应器,存盘在打开,只要程序自动加载,就仍然打不开图层。我想用VLR-PERS函数,永久反映器已经做成,但是从新打开时就有问题。不知有没有办法?
Ea
发表于 2005-2-5 08:39:00
永久反映器的文件在 support 下才可以<br>
citykunan
发表于 2005-2-5 08:57:00
Ea大侠,我已经在acad2000.lsp程序中写入(load "c:\\aa\\test.lsp"),应该可以加载了,但是再打开后还是出现:
; error: VLISP: internal: Document application(.VLX) not found<BR>; error: VLISP: internal: Document application(.VLX) not found<BR>; error: VLISP: internal: Document application(.VLX) not found<BR>; error: VLISP: internal: Document application(.VLX) not found<BR>; error: VLISP: internal: Document application(.VLX) not found<BR>; error: no function definition: DELALLNEW<BR>; error: no function definition: DELALLNEW<BR>; error: no function definition: DELALLNEW<BR>; error: no function definition: DELALLNEW<BR>; error: no function definition: DELALLNEW<BR>; error: no function definition: SAVECHANGEDLYR<BR>; error: no function definition: SAVECHANGEDLYR
不知道是什么原因?谢谢
Ea
发表于 2005-2-5 12:40:00
; error: VLISP: internal: Document application(.VLX) not found<br>
<br>
把编译的 vlx 放到 support 路径下<br>
citykunan
发表于 2005-2-5 13:48:00
我并没有编译过什么vlx文件。我只是在程序中加了vlr-pers:
(vlr-pers
(vlr-acdb-reactor
...........................
) ;_ 结束vlr-acdb-reactor<BR>)
;;编辑器反应器<BR>(vlr-pers
(vlr-editor-reactor
.............................
) ;_ 结束vlr-editor-reactor<BR>)
这样ddd层被锁了,但是在打开这个文件,便会出现:
; error: VLISP: internal: Document application(.VLX) not found<BR>; error: no function definition: DELALLNEW
; error: no function definition: SAVECHANGEDLYR
我已经在打开这个文件的时候加载了这个程序了,为什么还说自定义函数DELALLNEW, SAVECHANGEDLYR找不到呢?谢谢
Ea
发表于 2005-2-5 17:11:00
Note : A reactor is only a link between an event and a Callback function. The Callback<br>
function is not part of the reactor, and is normally not part of the drawing. The reactors<br>
saved in the drawing are only usable if their associated Callback functions are loaded in<br>
AutoCAD.<br>
In other words, if we made our reactor "lineReactor" persistent, we would have to ensure<br>
that the Callback function "print-length" was loaded every time the drawing containing our<br>
lines with reactors was opened.