xyz2009xyz 发表于 2011-3-22 12:55:08

CAD二次开发安装制作问题

CAD二次开发安装制作问题:
按秋枫大侠指导步骤做成STEUP.EXE之后,添加CAD支持搜索路径,加载菜单都没问题,就是下面一段初始化之后,用load加载LISP只能加载一部分,大概只能加载到红色部分的,后面的不行,我注释掉前面的,又能加载后面的,不过也是一部分,因为搜集lisp比较多,是不是这个有个数限制,还是有其他原因,求助。


(initxyzApplication)
;; 加载主程序
;; 为节省内存,这里也可以以autoload函数形式定义
;; 有几条写几条
   (LOAD "YH_dimxy.LSP");   
   (LOAD "AutoNum.LSP");
   (LOAD "AMEND_BLOCK.LSP");
   (LOAD "EXP17.LSP");
   (LOAD "TextSDodge.lsp");
   (LOAD "RB.LSP");
   (LOAD "EF_Text.lsp");
   (LOAD "BatchPlot.lsp");
   (LOAD "cstyles.lsp")
   (LOAD "inputBox.lsp");文字样式批量修改
   (LOAD "ZZFIND_new.LSP");
   (LOAD "EF_Lib.VLX")
   (LOAD "EF_AutoIME.VLX");
   (LOAD "sz2.lsp");
   (LOAD "CAD图层操作.LSP");
   (LOAD "ExchangeText.LSP");
   (LOAD "lj.VLX");
   (LOAD "MTEXT加强.LSP");
   (LOAD "RubbishCleaner.LSP");
   (LOAD "安装图工具.LSP");
   (LOAD "按绘图系数统计线段长度.lsp");
   (LOAD "移动到对象中心.LSP");
   (LOAD "一键开关特性窗口.LSP");
   (LOAD "加载宏命令.LSP");
   (LOAD "可以框选的修剪需要修正.lsp");
   (LOAD "画五角星程序.LSP");


见附件,加载LISP程序

Gu_xl 发表于 2011-3-22 13:19:20

回复 xyz2009xyz 的帖子

如果前面的lisp程序有错,或者单独运行没问题,单前后程序相互干扰,导致后面程序出错,出错之后的程序都不会加载!你最好将所有lisp程序打包成vlx文件,调试成功后再加载!就一句话即可了!(load "我的程序.vlx" "我的程序加载不成功!")

daiguafan 发表于 2011-3-22 14:42:26

原来如此啊

xyz2009xyz 发表于 2011-3-23 18:48:25

本帖最后由 xyz2009xyz 于 2011-3-23 18:50 编辑

呵呵,再问一下,如果想做成按需加载应该怎么弄呢?
别人的答复:在工作中,为了减少内存开支,最好是按需加载,使用autoload函数是很好的办法

可以加载fas及vlx文件解决方法
答:两者可选一种:
1.修改acad2000doc.lsp中的函数ai_ffile内容,增加查找fas及vlx文件的语句:
(defun ai_ffile (app)
    (or (findfile (strcat app ".lsp"))
      (findfile (strcat app ".exp"))
      (findfile (strcat app ".exe"))
      (findfile (strcat app ".arx"))
      (findfile (strcat app ".fas"))
      (findfile (strcat app ".vlx"))
      (findfile app)
    )
)

或者:
2.直接在autoload中的文件中写上扩展名,如:
    (autoload "文件名.vlx" '("执行命令"))


这个函数是写在acad2000doc.lsp中吗?或者写在其他位置也可以!

亜湖摆渡 发表于 2013-1-5 23:26:34

学习了
页: [1]
查看完整版本: CAD二次开发安装制作问题