以下是我的做法:
用VB做的CAD的函数库,在VB的程序中调用,然后控制CAd。
在用来控制CAD的VB函数库中,为了使程序始终处理当前Acad的激活文件时(CAD自身的程序也是这样的吧,没太多考察过)。通常会处理Thisdrawing的切换问题,使用这个Set Thisdrawing = Acadapp.ActiveDocument.
我的子程序一般都是这样写的,从未出现过问题。
但是最近的一个程序中使用了一个:
Dim Oucs As AcadUCS Set Oucs = Thisdrawing.ActiveUCS
每次程序运行到这里就报错,如果监视Thisdrawing.ActiveUCS 他的值是<>.
如果你监视Thisdrawing,他有值,如果你展开他,也可以看到他的ActiveUCS。这时在监视栏中的Thisdrawing.ActiveUCS也突然有值了。按“F8”程序也可以继续运行。
大家遇到过这样的问题吗? |