|
我们画图的时候一般都是先用GetObject、CreateObject来连接或者启动CAD。但是如Set acadapp = GetObject(, "AutoCAD.Application")
Set acadapp = CreateObject("AutoCAD.Application")
之类的启动方式,只能启动默认的CAD版本,或者是已经打开的CAD版本画图,那怎么启动我们指定的版本呢?没错,就在"AutoCAD.Application"里面加上版本号就OK了。方法见如下:
1.先把安装在电脑中的版本都搜索出来:方法及图见http://hi.baidu.com/kakanimo/blog/item/22f6fed2185887d8a9ec9ac8.html
2.点击按钮的时候先判断选了哪个版本,然后动态设置"AutoCAD.Application"中启动的CAD版本号。- Private Sub Command4_Click()
- Dim i As Integer
- For i = 0 To 13
- If Option1(i).Value = True Then
- Select Case i
- Case 0 To 1
- '"AutoCAD 2002"
- class = "AutoCAD.Application.15"
- Case 2 To 3
- ' "AutoCAD 2004"
- class = "AutoCAD.Application.16"
- Case 4 To 5
- ' "AutoCAD 2005"
- class = "AutoCAD.Application.16.1"
- Case 6 To 7
- '"AutoCAD 2006"
- class = "AutoCAD.Application.16.2"
- Case 8 To 9
- '"AutoCAD 2007"
- class = "AutoCAD.Application.17"
- Case 10 To 11
- ' "AutoCAD 2008"
- class = "AutoCAD.Application.17.1"
- Case 12 To 13
- '"AutoCAD 2009"
- class = "AutoCAD.Application.17.2"
- End Select
- Exit For
- End If
- Next
- Call AcadOpen_2
- End Sub
- 各版本的版本号见上面代码中。下面就是连接代码,都已经注释的很详细了。
- Public Function AcadOpen_2()
- Dim runing As Boolean '是否已经有运行的版本
- runing = True '当它已经启动CAD了
- On Error Resume Next '进行出错的处理
- Set acadapp = GetObject(, class)
- If Err Then '如果AutoCAD应用程序启动失败,进行下面的处理
- Err.Clear
- Set acadapp = CreateObject(class)
- runing = False '原来没有启动,是新启动的CAD
- If Err Then '启动AutoCAD出错处理
- MsgBox Err.Description
- End If
- End If
- acadapp.Visible = True '设置cad可见
- If runing = True Then '表明已经运行,就新建一个文档
- acadapp.Documents.Add '增加一个文档
- End If '新打开CAD,这个时候自动会增加一个文档,所以这里不需要加
-
- End Function
- -----------------
复制代码 这样就连接上了指定的CAD啦。
|
|