GetInterfaceObject("VL.Application.16")方法问题
Dim VL As ObjectDim acadApp As AcadApplication
Dim acadDoc As AcadDocument
Set acadApp = GetObject(, "AutoCAD.Application")
Set acadDoc = acadApp.ActiveDocument
Set VL = acadDoc.Application.GetInterfaceObject("VL.Application.16")
此段VB代码在AutoCad07环境下可以得到VL对象,在AutoCAD09环境下取不到VL对象。
但是在AutoCAD09环境下搜索注册表也能查到值"VL.Application.16",此问题如何解决?
如问题解决,愿意付出50元酬劳,谢谢! Dim AcadVersion As Integer
With ThisDrawing.Application
AcadVersion = Val(Left(.Version, 2))
'根据AutoCAD的版本判断使用的VL库类型
Select Case AcadVersion
Case Is = 15
Set VL = .GetInterfaceObject("VL.Application.1")
Case Is >= 16
Set VL = .GetInterfaceObject("VL.Application.16")
End Select
End With
有可能 是你的09安装有问题吧 zzyong00 发表于 2016-10-23 22:15
有可能 是你的09安装有问题吧
09安的应该是没问题的,在xp系统下安的,用vb调cad别的接口都可以调起来的..... zzyong00 发表于 2016-10-23 22:06
试过这段代码,一样取不到对象.... 实际上vl非常鸡肋,仅限于玩 zzyong00 发表于 2016-10-24 21:37
实际上vl非常鸡肋,仅限于玩
需要获取vl对象,后面要用.... 既然你都2009了 用netapi不是更好 顶一下,来个大神啊
页:
[1]