EaBIM一直以来积极响应国家“十二五”推进建筑业信息化的号召,对建筑领域的信息技术开展深入技术交流和探讨!致力于打造“BIM-建筑师-生态技术”三位一体综合资源交流共享平台,希望为BIM与可持续设计理念及技术的普及做出微小的贡献!!!

萧闫子 发表于 2014-1-8 14:07:43

[用户交互] 如何启动指定的AutoCAD版本画图

我们画图的时候一般都是先用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啦。
页: [1]
查看完整版本: [用户交互] 如何启动指定的AutoCAD版本画图