如何在VB中加载DWG文件而不显式打开CAD

如题所述

第1个回答  2017-05-09
Sub Ch2_ConnectToAcad()
On Error Resume Next
’ 连接至 AutoCAD 应用程序
Dim tmCAD As AcadApplication
Set tmCAD = GetObject _
(, "AutoCAD.Application.16")
If Err Then
Err.Clear
Set tmCAD = CreateObject _
("AutoCAD.Application.16")
If Err Then
MsgBox Err.Descri ption
Exit Sub
End If
End If
’ 连接至 AutoCAD 图形
tmCAD.Visible = True ’ 隐式地打开
tmCAD.Documents.Open "c:\123.dwg"
Set sSet = tmCAD.ActiveDocument.SelectionSets.Add("TEST")
tmCAD.ActiveDocument.SendCommand "_ai_selall" & Chr(13)
tmCAD.ActiveDocument.Export app.Path & "tempcad", "WMF", sSet
tmCAD.ActiveDocument.SelectionSets.Item("TEST").Delete
Picture1.Picture = LoadPicture(app.Path & "tempcad.wmf")
tmCAD.Documents.Close
tmCAD.Quit
Set tmCAD = Nothing
End Sub
第2个回答  2017-07-05
真正的原因是Export的对象如果是wmf的话。要把图元对象加入到sSet选择集里面。
是Export的对象如果是dxf的话。代码就没问题。
也就是说sSet是空集。所以楼主会出现“正在运行..”可以打开监视窗口,监视sSet的值。
第3个回答  2017-05-09
真正的原因是Export的对象如果是wmf的话。要把图元对象加入到sSet选择集里面。
是Export的对象如果是dxf的话。代码就没问题。
也就是说sSet是空集。所以楼主会出现“正在运行..”可以打开监视窗口,监视sSet的值。
相似回答