看看吧,很好的东西,

源代码在线查看: [arx] 用vb.net编写autocad2005的dll程序.txt

软件大小: 19 K
上传用户: oujk123
关键词:
下载地址: 免注册下载 普通下载 VIP

相关代码

				用VB.NET编写AutoCAD2005的DLL程序:
				在Visual Studio.NET中建立一个VB工程,选用类库(ClassLibrary),
				添加引用,浏览找到AutoCAD2005目录下的acdbmgd.dll和acmgd.dll文件,
				在代码类中加入如下代码:
				
				Imports Autodesk.AutoCAD.ApplicationServices
				Imports Autodesk.AutoCAD.DatabaseServices
				Imports Autodesk.AutoCAD.Runtime
				
				Public Class Class1
				     _
				    Public Shared Sub MyTestCmd()
				        MsgBox("Hello World!")
				    End Sub
				End Class
				
				编译,
				在AutoCAD2005中,用NETLOAD命令加载编译后的DLL文件,
				在AutoCAD2005命令行中键入'TEST'运行.
				
				--------------------------------------------------
				
				ObjectARX Managed Wrapper Classes
				
				(1)在AutoCAD2005中,ObjectARX分成了两类,一类是原来的ObjectARX库,另一类是ObjectARX Managed Managed Wrapper Classes.
				(2)ObjectARX Managed Wrapper Classes存放在acdbmgd.dll和acmgd.dll中. "mgd"即"Managed".
				(3)ObjectARX与ObjectARX Managed Wrapper Classes的映射关系:
				   AcDb Autodesk.AutoCAD.DatabaseServices
				   AcRx Autodesk.AutoCAD.Runtime
				   AcEd Autodesk.AutoCAD.ApplicationServices
				   AcUt Autodesk.AutoCAD.DatabaseServices, Autodesk.AutoCAD.ApplicationServices 
				   AcCm Autodesk.AutoCAD.Colors
				   AcGe Autodesk.AutoCAD.Geometry
				   AcGi Autodesk.AutoCAD.GraphicsInterface
				   AcLy Autodesk.AutoCAD.LayerManager
				   AcPl Autodesk.AutoCAD.PlottingServices
				(4)二者有很多不同之处,原来ObjectARX中的全局函数,被打包到一些新的类里边,成了这些类的方法或属性,而反应器则被Events替代了.
				(5)注册命令时,我们使用了Public Shared Sub MyTextCmd(),这个Shared关键字,表明这个命令是static的,而不是instance的.所谓instance的命令,如果你打开3个dwg文件,那么你所注册的命令将会有3个copy,每个文档都有自己的copy,这样就不会发生变量冲突.
							

相关资源