AutoCAD的二次开发主要有C++开发ARX程序(ARX)和C# .NET开发的程序(DLL)。ARX程序加载是采用ARXLoad命令加载,而.NET开发程序用Netload加载。从方便程度分,有手工加载、半自动加载和自动加载三种方式。下面以本人主持的.NET开发的JSL-路线专家系统加载为例来说明。
1、手工加载
手工加载,其实就是命令行加载。在命令行输入Netload,对话框提示选择.NET程序集,浏览到JSL-路线专家系统安装路径下的C:\Program Files\JSL-路线专家系统\Jsl.RoadExpert.CADShell.dll文件,点击打开,即完成加载工作。
2、半自动加载
手工加载方式在多次加载时显得重复啰嗦。那么是否有更方便的方式来减少重复工作呢?答案是肯定的。可以通过自定义按钮的方式来将加载过程写入按钮的宏中。命令函输入CUI,即进入自定用户界面,将 ^C^Cnetload C:/Program Files/JSL-路线专家系统/Jsl.RoadExpert.CADShell.dll 输入新建或修改已有的按钮宏中即可,点击按钮即可实现JSL-路线专家系统的加载。这里注意路径中“\”必须用“/”代替,至于原因,参见文章 让AutoCAD宏飞起来的翅膀——反斜杠。
3、自动加载
半自动加载还不是最方便的,尤其在软件开发过程中进行调试时,需要反复加载软件。那么AutoCAD还提供一种自动加载方式,就是修改注册表。新建记事本文件,重命名为netload.reg,加入以下内容,然后双击文件将信息添加到注册表即可。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R16.2\ACAD-4001:804\Applications\MXCAD]
"LOADER"="C:\Program Files\JSL-路线专家系统\Jsl.RoadExpert.CADShell.dll"
"MANAGED"=dword:0001c101
"LOADCTRLS"=dword:00000002
"LOADCTRLS":控制程序随CAD加载的方式,设为Ox02随CAD启动一起加载;
"LOADER":告诉CAD所要加载的程序的路径;
"MANAGED":设为Ox01,告诉CAD这是托管程序。
这样,可以根据需要进行二次开发程序的加载方式,最大限度的减少人工。