|
Dim strfilename As String '文件名
Dim acadapp As New AcadApplication
Dim doc As AcadDocument
opfd.ShowDialog() '获取文件名
strfilename = opfd.FileName
doc = acadapp.Documents.Open(strfilename) '打开CAD文件
Dim ssetobj As AcadSelectionSet '定义一个选择集
Dim acadent As AcadEntity '定义一个图元实体
Dim adadpl As AcadPolyline
ssetobj = acadapp.ActiveDocument.SelectionSets.Add("test")
ssetobj.Select(AcSelect.acSelectionSetAll, , , , ) '选择所有实体
For Each acadent In ssetobj
If acadent.ObjectName = "AcDbPolyline" Then
adadpl = acadent ' 这句出错
End If
Next
以上代码的红色部分出错,本人初学,弄了很长时间不知道原因,请高手解答!!
错误原因:
无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型“.AcadPolyline”。此操作失败的原因是对 IID 为“{4D07B3DA-1D65-4D58-967A-E3A02E255EE0}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 不支持此接口 (异常来自 HRESULT:0x80004002 (E_NOINTERFACE))。
|
|