| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Autocad gestartet ? Teil 2 (953 mal gelesen)
|
HJ Mitglied
Beiträge: 4 Registriert: 24.08.2004
|
erstellt am: 25. Aug. 2004 23:41 <-- editieren / zitieren --> Unities abgeben:
Ein Versuch herauszufinden ob Autocad gestartet ist. Wenn nicht erfolgt eine Fehlermeldung (hier 429 Objekterstellung durch Komponente nicht möglich), obwohl diese Fehlermeldung zu den "auffangbaren" gehört, wird diese Fehlermeldung angezeigt und nicht verarbeitet. Was kann ich tun ? Gruß an alle Hajo CODE: Option Explicit Dim acadApp As AcadApplication Public Sub ConnectToAcad() On Error Resume Next Set acadApp = GetObject(, "AutoCAD.Application") If Err Then Err.Clear Set acadApp = CreateObject("AutoCAD.Application") acadApp.Visible = True If Err Then MsgBox Err.Description Exit Sub End If End If MsgBox "Jetzt wird ausgeführt " + acadApp.Name + _ " Version " + acadApp.Version End Sub Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 26. Aug. 2004 00:29 <-- editieren / zitieren --> Unities abgeben: Nur für HJ
Hallo Hajo, nich dass ich jetz eine Antwort auf deine Frage wüsste ..., aber Gegenfrage: Wozu ein neuer Thread ? Bleib doch beim alten, die Frequenz hier ist eh nicht so furchtbar schlimm, als obs diesen bräuchte ... und die Chancen auf Antworten werden dadurch nicht unbedingt besser lg Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BloodyMess Mitglied Applicationingenieur
Beiträge: 604 Registriert: 06.06.2002 AutoCAD Map 3D 2005 Win XP pro
|
erstellt am: 26. Aug. 2004 11:19 <-- editieren / zitieren --> Unities abgeben: Nur für HJ
Hallo HJ, Zitat:
Anmerkung : Verwenden Sie die GetObject-Funktion, wenn eine aktuelle Instanz des Objekts existiert oder wenn Sie das Objekt mit einer bereits geladenen Datei erstellen wollen. Wenn keine aktuelle Instanz existiert und Sie das Objekt nicht mit einer geladenen Datei starten wollen, verwenden Sie die CreateObject-Funktion.
Daher kommt dein Fehler. Du versuchst ein Object zu händeln, welches garnicht existiert. Gruß TP Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 26. Aug. 2004 11:21 <-- editieren / zitieren --> Unities abgeben: Nur für HJ
Hi Hajo, klar war's keine Hilfe ;-) hm okay, ich weiss zwar überhaupt nicht wie: 429 Objekterstellung durch ActiveX-Komponente nicht möglich bei Dir entsteht, aber vielleicht sollte man das, also KANN er überhaupt Autocad starten, irgenwie vor dem acadApp.Visible = True, abfragen. Wissen tu ichs aber nicht wirklich, ich hoffe jemand anders. lg Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BloodyMess Mitglied Applicationingenieur
Beiträge: 604 Registriert: 06.06.2002 AutoCAD Map 3D 2005 Win XP pro
|
erstellt am: 26. Aug. 2004 12:37 <-- editieren / zitieren --> Unities abgeben: Nur für HJ
Hallo Ihr Zwei, jetzt muss ich auch nochmal. Wo ist das Problem? Möchtest Du sowas haben, oder ... Code:
Public Sub ConnectToAcad() Dim acadApp As AcadApplication On Error GoTo error Set acadApp = GetObject(, "AutoCAD.Application")error: If Err.Number = 429 Then If MsgBox("ACAD ist nicht gestartet, möchten Sie es starten?", vbOKCancel) = vbOK Then Set acadApp = CreateObject("AutoCAD.Application") acadApp.Visible = True End If Else MsgBox "ACAD ist gestartet" End If End Sub
Gruß TP Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AWagner Mitglied Software-engineer
Beiträge: 32 Registriert: 27.11.2007
|
erstellt am: 16. Jan. 2008 12:34 <-- editieren / zitieren --> Unities abgeben: Nur für HJ
Hallo Leute, die von euch vorgeschlagene Version von euch funktioniert eigentlich ganz gut. Jedoch musste ich leider feststellen das das bei mir nicht immer der fall ist. Ich benutze VB.Net (ist ja nicht viel unterschied zum VB6/VBA - gibt ja leider keinen AutoCAD VB.Net - Thread) und habe folgendes Problem: wenn ich mein AutoCAD starte und es kommt kein Popup läuft alles wunderbar, sobald aber nach dem Start ein Popup eingebunden wird (aus welchem grund auch immer zB. ein selbergeschriebenes Auswahlmenü für bestimmte einstellungen oder das Launchpad von Autocad) bekomme ich bei der CodeZeile ACADObj = CreateObject("AutoCAD.Application") einen Fehler. ACADObj wird nicht gesetzt obwohl ich im Tasmanager sehen kann das eine AutoCad-Instanz erstellt wurde. kann mir vielleicht jemand helfen? was muss ich machen das die CreateObject-Funktion trotzdem funktioniert? bzw. trit das Problem auch bei euch auf? schon mal vielen Dank Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |