Тема: как можно проверить загружен Автокад или нет програмно?

Кто-нибудь может мне помочь, суть вот в чем:
написал программу,но она сначала загружает новый автокад, а потом выполняет действия,а при повторе вычерчивания новый экземпляр уже не загружает,
но нужно если автокад уже открыт, чтобы она выполняла в активном документе, а если нет то загружала Автокад

Re: как можно проверить загружен Автокад или нет програмно?

Public Sub LoadAutoCAD()
    On Error Resume Next
    Set ACadApp = GetObject(, "AutoCAD.Application") '(, "ZwCAD.Application")
    If (ACadApp Is Nothing) Then
        Set ACadApp = CreateObject("AutoCAD.Application") '("ZwCAD.Application")
        ACadApp.Visible = True
    End If
    ACadApp.Visible = True
    Set AD = ACadApp.ActiveDocument
End Sub

Re: как можно проверить загружен Автокад или нет програмно?

забыл есчо добавить в модуль постом повыше
    Public ACadApp As AutoCAD.AcadApplication 'ZwCAD.ZwcadApplication
    Public AD As AutoCAD.AcadDocument 'ZwCAD.ZwcadDocument



а в форме пЕши этот кусок
Private Sub Form_Load()
    LoadAutoCAD
End Sub

С Уважением, Михаил
smile

(изменено: Oleg, 26 июня 2009г. 14:57:31)

Re: как можно проверить загружен Автокад или нет програмно?

Спасибо!!! А можешь еще подсказать, как сделать цвет полилинии в блоке по слою, когда я пишу Obj.Color = -1   или    Obj.Color = ByLayer, получается что делает цвет почему-то по Блоку

    P(0) = Нач_коорд_элем(0) - Длина_Элемента / 2: P(1) = Нач_коорд_элем(1) + Ширина_Элемента / 2: P(2) = 0
    P(3) = P(0) + Длина_Элемента: P(4) = P(1): P(5) = 0
    P(6) = P(3): P(7) = P(1) - Ширина_Элемента: P(8) = 0
    P(9) = P(0): P(10) = P(7): P(11) = 0
    P(12) = P(0): P(13) = P(1): P(14) = 0
    Set Obj = blockObj.AddPolyline(P)
    Obj.Color = ByLayer


Заранее спасибо!