Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD VBA
  Late binding

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   Late binding (1680 mal gelesen)
BerndE
Mitglied
Hochbautechniker


Sehen Sie sich das Profil von BerndE an!   Senden Sie eine Private Message an BerndE  Schreiben Sie einen Gästebucheintrag für BerndE

Beiträge: 557
Registriert: 05.07.2003

erstellt am: 10. Jun. 2004 01:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi forum,
aus einer access2003-Datenbank heraus will ich autocad öffnen.
da die datenbank auch auf rechnern läuft, die kein autocad haben, habe ich zum autocad-aufruf late binding gewählt....nur....auf einem rechner gehts....auf nem anderen nicht....und auf beiden ist autocad 2000i installiert.
hat jemand ne idee?

------------------

Bernd

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BerndE
Mitglied
Hochbautechniker


Sehen Sie sich das Profil von BerndE an!   Senden Sie eine Private Message an BerndE  Schreiben Sie einen Gästebucheintrag für BerndE

Beiträge: 557
Registriert: 05.07.2003

Revit 2013
ACA 2012 deutsch
BuildingOne 5.4.5
Win7
WindowsNetz

erstellt am: 27. Sep. 2004 15:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Forum
Muss das hier noch mal aufwärmen.
Irgendwie scheint bei mir generell der Wurm drin zu sein mit meinem late binding. Wär mal jemand so freundlich und würde sich den folgenden Code mal anschauen und mir seine Meinung sagen?

    Dim AcadApp As Object
    .
    .
    Set AcadApp = GetObject(, "Autocad.Application")
    If Err Then
        Err.Clear
        Set AcadApp = CreateObject("Autocad.Application")
        AC_Zustand = False
        AcadApp.Visible = True
        If Err Then
            Err.Clear
            MsgBox "Kann AutoCAD nicht erreichen", , "Abbruch"
            Exit Sub
        End If
    End If
    .
    .
    Plan = rst2.Fields("PLName")
    AcadApp.Documents.Open Plan
               
    For Each elem In AcadApp.ActiveDocument.ModelSpace
        If Mid(elem.Name, 1, 5) <> "R_st_" Then GoTo next_elem
    .
    .
wenn if mid(elem.name .... erreicht wird, bleibt die funktion stehen mit der fehlermeldung:
Laufzeitfehler 438:
Objekt unterstützt diese Eigenschaft oder Methode nicht. Die angebotene Hilfe bringt mich nicht weiter, läßt mich aber vermuten, daß was mit meiner late binding nicht stimmt.

------------------

Bernd

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fuchsi
Mitglied
Programmierer c#.net Datawarehouse


Sehen Sie sich das Profil von fuchsi an!   Senden Sie eine Private Message an fuchsi  Schreiben Sie einen Gästebucheintrag für fuchsi

Beiträge: 1201
Registriert: 14.10.2003

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

erstellt am: 27. Sep. 2004 16:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BerndE 10 Unities + Antwort hilfreich

probiers mal so

Function StartAcad() As Object
    On Error Resume Next
 
    Set StartAcad = CreateObject("AutoCAD.APPLICATION")
    If Err.Number = 0 Then
        Exit Function
    Else
        Err.Clear
        Set StartAcad = CreateObject("AutoCAD.APPLICATION.15")
        If Err.Number = 0 Then
            Exit Function
        Else
            Err.Clear
            Set StartAcad = CreateObject("AutoCAD.APPLICATION.16")
            If Err.Number = 0 Then
                Exit Function
            Else
                Err.Clear
                Set StartAcad = CreateObject("AutoCAD.APPLICATION.16.1")
                If Err.Number = 0 Then
                    Exit Function
                End If
            End If
        End If
    End If
    Set StartAcad = Nothing
End Function


diese funktion versucht autocad.application zu starten geht das fehl
probiert er
autocad.application.15 (acad200i) danach
autocad.application.16 (2004) und zu schhluss
autocad.application.16.1 (2005)

zu deinem elem.name glaube ich eher, dass viele eklemente im Modellspace keine eigenschaft NAME haben (z.B.: linien)
also müsstest du vorher abprüfen, ob es sich bei elem um einen block handelt und danach die eigenschaft .NAME abprüfen.


aber schau dir doch dazu mal den bereich thisdrawing.selectionsets an
da kannst du direkt erine art query über alle blöcke mit namen r_st_* machen

------------------
WWW.FFZELL.AT.TC

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2019 CAD.de | Impressum | Datenschutz