vb.net&cad二开自学笔记4:net程序的自动加载

开发好的netapp插件可用以下方法,实现跟随CAD的启动自动加载!

一、autolisp法

(1)启动组:创建xxx.lsp程序其中用(command "netload" 你的netapp.dll完整路径),注意路径中的\用\\代替,然后在cad中用appload命令在启动组中加载xxx.lsp

(2)修改acad.lsp或acaddoc.lsp文件内容:

(defun S::STARTUP() ;函数名不可以改变,在其内添加(command "netload" 你的netapp.dll完整路径),为了避免多个插件自动启动的冲突,可使用append函数追加命令,示例代码如下:

(defun-q MYSTARTUP ( )

... your startup function ...

)

(setq S::STARTUP (append S::STARTUP MYSTARTUP))

上面的代码把启动函数附加到现有的 S::STARTUP 函数中,然后重定义 S::STARTUP 函数以包含该启动代码。不管以前的 S::STARTUP 函数是否存在,它都可以正常工作。

二、注册表法

  1. 运行regedit命令打开注册表。

  2. 找到如下路径:

[计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R24.3\ACAD-7101\Applications\AcMgd],亦可以在注册表编辑器中搜索AcMgd

4.搜索到后一般能看到AcMgd项内应包含四个键值,项内若为空白则可手工添加如下几个值如图:

"DESCRIPTION"=".NET Managed Layer"

"LOADCTRLS"=dword:00000002

"LOADER"="C:\\Users\\Administrator\\source\\repos\\MyCADNet\\bin\\Debug\\MyCADNet.dll"

"MANAGED"=dword:00000001

AcMgd键值内容

上述注册表值的含义如下:

DESCRIPTION

描述信息

LOADCTRLS

确定怎样加载和何时加载程序.

1 - 检测到代理程序就加载

2 -一起动就加载

4 - 命令运行就加载

8 -用户请求或另一应用请求即加载

16 - 不加载

32 - 显式加载

LOADER

指定dll加载的位置及文件的全路径名称,注意路径中的\全部用\\代替

MANAGED

指定是.NET 程序及还是ObjectARX 文件, 1 代表 .NET 程序, 0代表ObjectARX 。

这个注册表可以自己编写安装程序自动设定!

相关推荐
一只小灿灿13 天前
VB.NET 从入门到精通:开启编程进阶之路
.net·vb.net
中游鱼2 个月前
微软官方 .NET 混淆软件 Dotfuscator
microsoft·c#·.net·混淆·vb.net·dotfuscator
中游鱼2 个月前
目前最新 Reflector V11.1.0.2067版本 .NET 反编译软件
c#·.net·vb.net·.net reflector·反编译.net·最新版本
rrokoko3 个月前
TIOBE 编程指数 9 月排行榜公布 VB.Net第七
.net·vb.net
VB.Net3 个月前
EmguCV学习笔记 VB.Net 11.9 姿势识别 OpenPose
opencv·计算机视觉·c#·图像·vb.net·emgucv·姿势识别
VB.Net3 个月前
EmguCV学习笔记 VB.Net 12.1 二维码解析
opencv·计算机视觉·c#·图像·vb.net·二维码·emgucv
VB.Net3 个月前
EmguCV学习笔记 VB.Net 12.3 OCR
opencv·计算机视觉·c#·ocr·图像·vb.net·emgucv
VB.Net3 个月前
EmguCV学习笔记 C# 12.3 OCR
opencv·计算机视觉·c#·ocr·vb.net·emgucv
VB.Net3 个月前
EmguCV学习笔记 VB.Net 11.6 图像分割
opencv·计算机视觉·c#·图像分割·dnn·vb.net·emgucv
VB.Net3 个月前
EmguCV学习笔记 VB.Net 11.4 图像分类
opencv·计算机视觉·c#·dnn·图像·vb.net·emgucv