[求助]Auto CAD VBA&VB.Net开发基础与实例教程 例题问题请教
刚接触VB.net,跟着书本例题写,碰到2个问题:VS2005 + 20101:书290页:Dim db As Database = HostApplicationService.WorkingDatabass
提示:未声明名称 HostApplicationService?
2:书280页,最后两行输入后
提示:语句在命名空间中无效 ?
[求助]Auto CAD VBA&VB.Net开发基础与实例教程 例题问题请教
**** Hidden Message ***** 1、引用Autodesk.AutoCAD.DatabaseServices
2、
Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationSerVices
Imports Autodesk.AutoCAD.EditorInput
Namespace ManagedApp
Public Class Init
Implements IExtensionApplication
Public Sub Initialize() Implements Autodesk.AutoCAD.Runtime.IExtensionApplication.Initialize
Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor
' 在AutoCAD命令行上显示一些信息,它们会在程序载入时被显示
ed.WriteMessage("程序开始初始化")
End Sub
Public Sub Terminate() Implements Autodesk.AutoCAD.Runtime.IExtensionApplication.Terminate
' 在 VisualStudio 2005的输出窗口上显示程序结束的信息
Debug.WriteLine("程序结束,你可以在这里做一些清理工作,如关闭AutoCAD文档")
End Sub
End Class
Public Class Commands
_
Public Sub LoadAssembly()
Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor
'Hello.dll程序的文件名
Dim fileName As String = "I:/vb.net/Hello/hello.dll"
' 载入 Hello.dll程序集
ExtensionLoader.Load(fileName)
' 在命令行上显示信息,提示用户 Hello.dll程序集已经被载入
ed.WriteMessage(vbCrLf & fileName & "被载入,请输入Hello进行测试!")
End Sub
End Class
End Namespace 谢谢3楼,问题2中19行 publia class 写成 public Sub 了。
问题1 我第一行就引用了啊 ?
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.Geometry
Imports Autodesk.AutoCAD.Runtime
Public Class Class1
' 创建直线命令
Public Sub TestLine()
' 得到当前文件的数据对象
Dim db As Database = HostApplicationService.WorkingDatabass
' 定义直线对象的起点
Dim pt1 As New Point3d(300, 100, 0)
' 定义直线对象的终点
Dim pt2 As New Point3d(900, 500, 0)
' 在内存中创建一个直线对象
Dim lineEnt As New Line(pt1, pt2)
Using Trans As Transaction = db.TransactionManager.StartOpenCloseTransaction()
' 以读方式打开块表
Dim bt As BlockTable = Trans.GetObject(db.BlockTableId, OpenMode.ForRead)
' 以写方式打开模型空间块表记录
Dim btr As BlockTableRecord = Trans.GetObject(bt.Item(BlockTableRecord.ModelSpace), OpenMode.ForWrite)
' 将图形对象的信息添加到块表中,并返回ObjectId对象
btr.AppendEntity(lineEnt)
' 把直线添加到事务处理中
Trans.AddNewlyCreatedDBObject(lineEnt, True)
' 提交事务处理
Trans.Commit()
End Using
End Sub
End Class
好啊好啊,谢谢
页:
[1]