文档详情

AuToCAD启动自定义加载程序研究AuToCAD启动自定义加载程序研究.doc

发布:2017-12-14约7千字共8页下载文档
文本预览下载声明
AuToCAD启动自定义加载程序研究(转) 默认分类 2010-03-24 13:19:18 阅读212 评论0 字号:大中小 CAD文件加载顺序:?????? acad2006.lsp (AutoCAD使用) ?????? acad.rx (用户自定义的*.arx文件加载清单) ?????? 注:在CAD2006中,由错误提示怀疑:*.arx文件检测先于acad2006.lsp加载。 ?????? acad.lsp (用户自定义的Lsp自动加载程序) ?????? acad2006doc.lsp (AutoCAD使用) ????? acetutil.fas (Express Tools初始化程序) ?????? acaddoc.lsp (用户自定义的Lsp自动加载程序) ?????? mymenu.mnc (用户自定义或第三方编译菜单文件) ????? mymenu.mnl (用户自定义或第三方菜单文件) ????? acad.mnc (AutoCAD编译菜单文件) ?????? acad.mnl (AutoCAD菜单文件) ???? acetmain.mnc (Express Tools编译菜单文件) ????? acetmain.mnl (Express Tools菜单) ????? 使用“对话框方式”加载的文件 ????? s::startup (自动执行函数,可用于自定义状态栏等) 注册表法加载顺序未知。 注意: 1.如果acad.lsp、acaddoc.lsp或MNL文件中包含自定义函数S::STARTUP,那么,创建新图形或打开现有图形时就会调用这个函数。因此,在 LISP启动文件中添加S::STARTUP函数定义,就可以执行全部所需的安装操作。如果需要关于“S::STARTUP”函数的详细信息,请参阅“AutoCAD 2000 Customization Guide”的第六章。 2.默认情况下,acad.lsp 仅在启动 AutoCAD 时加载一次,而 acaddoc.lsp 可随每个文档(或图形)一起加载。这样可使用户将加载 acad.lsp 文件和启动应用程序相关联,将 acaddoc.lsp 文件和文档或图形启动相关联。通过更改 ACADLSPASDOC 系统变量的设置,可以修改加载这些启动文件的默认方法。在CAD2006中,第一次新建图形时,也会出现对话框询问:acad.lsp是仅在启动 AutoCAD 时加载一次,还是随每个文档(或图形)一起加载。 不同位置的acad.lsp 和acaddoc.lsp按如下顺序加载:?????? CAD安装目录(即:acad.exe所在文件夹) ?????? “支持文件搜索路径”所包含的文件夹的逆序加载 ????? Dwg文件所在文件夹(打开Dwg文件时加载) 有关同名覆盖的问题:l???????? 同名文件被最后加载的版本覆盖。 比如:你定义了一系列自己编制的lisp程序并放在acad.lsp文件中,但该acad.lsp放在CAD安装目录中。当“支持文件搜索路径”所包含的文件夹中,由于未知原因出现了一个与你自定义的acad.lsp文件不同的acad.lsp文件时, 你自定义的acad.lsp文件就不会被加载。解决的办法是将后加载的acad.lsp文件删除或用自己定义的acad.lsp替换放后加载的acad.lsp文件,或将自己定义的acad.lsp放在更靠后加载的目录中。 l???????? 同名函数(或命令)被最后加载的版本覆盖。 知道AutoCAD 2000启动时各个文件加载的顺序,可能就会明白一个文件对另一个文件的影响。例如,已经在从acad.lsp文件加载的LISP程序中定义了一个函数,但是在启动AutoCAD 2000后,这个函数却不工作。这是因为acaddoc.lsp是在acad.lsp文件之后加载,此函数已经被acaddoc.lsp文件重新定义了。 l???????? 加载的dll文件同名但dll里的函数不同名,dll不会相互覆盖。 --------------------------------------------------------------------------------------------------------------------- 关于CAD启动时自动加载程序的研究(二) 1.Lisp法:a.在ACAD.EXE所在目录加入acad.lsp或acaddoc.lsp acad.lsp或acaddoc.lsp文件内容: (defun S::STARTUP() ;函数名不可以改变 (command _netload my.dll); my.dll为相对路径也可用绝对路径 ) 或:(load “1111.lsp”)在111
显示全部
相似文档