| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: AutoCAD mit VB6 (1583 mal gelesen)
|
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004
|
erstellt am: 11. Okt. 2005 18:45 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, wollte mal testen wie sich das AutoCAD von VB6 aus steuern läßt. Bin ziemlich schnell an meine Grenzen gestoßen, da ich nicht weiß wie ich übliche Befehle, wie z.B. ThisDrawing.modelspace umzusetzen sind. Grundsätzliche Frage: Wie öffnet, bzw. sprecht Ihr Zeichnungen von VB aus an. Wäre nett wenn mir jemand einfach mal nen kurzen Quelltext mit der Routine zum starten von ACAD und den Zugriff auf eine Zeichnung zeigen könnte. Viele Grüße Ralph Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 11. Okt. 2005 20:04 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
|
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004
|
erstellt am: 11. Okt. 2005 22:22 <-- editieren / zitieren --> Unities abgeben:
Danke Nancy. Aber jetzt macht mir das Tool irgendwie die Zeichnungen kaputt. Hab eine Zeichnung einfach öffnen lassen, einen Eintrag aus dem Schriftkopf ausgelesen und dann die Zeichnung und das AutoCAD wieder geschlossen. Jetzt bleibt das AutoCAD beim öffnen dieser Zeichnung hängen. Und das hat System. Habs öfter probiert - immer das Gleiche. Ich hab den AIS9, also Mechanical 2005 falls es vielleicht ein Versionskonflikt ist. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 11. Okt. 2005 22:40 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Ralph, das wird denke so schwierig auf die Schnelle und ohne Code. Erste [versuchte] Hilfe: Schau# mal im Taskmanager ob da noch ne acad.exe als Prozess läuft, wenn ja kann das viele Ursachen haben, das naheliegendste wäre eine inkorrekte Refernezierung. Schiessen tut man die acApp meisst mit acApp.Quit und die Variable freigeben: set acApp = Nothing Poste mal den [abgespeckten] Code, wenn geht;-) Gruss Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004
|
erstellt am: 11. Okt. 2005 22:42 <-- editieren / zitieren --> Unities abgeben:
Hi nochmal, hier der abgespeckte Code: Set acApp = New AcadApplication acApp.Visible = 1 Set AcDok = acApp.Documents.Open(dwgname) For Each Element In AcDok.PaperSpace If Element.ObjectName = "AcDbBlockReference" Then Set Objekt = AcDok.ObjectIdToObject(Element.ObjectID) If Objekt.Name = "XLO_KON_NEU_180" Then Inhalt = Objekt.GetAttributes For X = LBound(Inhalt) To UBound(Inhalt) If Inhalt(X).TagString = "XLO_SA" Then Sachnummer = Inhalt(X).TextString MsgBox Sachnummer End If Next X End If End If Next Element AcDok.Close End If End If Next I acApp.Quit Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004 AutoCAD-Mechanical 2017, SolidEdge ST8
|
erstellt am: 11. Okt. 2005 22:48 <-- editieren / zitieren --> Unities abgeben:
Wollt den Fehler noch kurz beschreiben: Wenn ich nach ausführen des Tools im Explorer einen Doppelklick auf die Zeichnung mache, startet das AutoCAD und bleibt dann beim öffnen der Zeichnung hängen. Dann wird der Bildschirm weiß. Selbiges beim öffnen aus einem gestarteten AutoCAD. Da ist dann im Öffnen-Dialog auch keine Vorschau mehr da Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 11. Okt. 2005 23:01 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Bissel wirr & ungetestet, die Variablenzuweisung ist nicht optimal;-) lg Nancy --
Code:
Set acApp = New AcadApplication acApp.Visible = 1 Set AcDok = acApp.Documents.Open(dwgname) For Each acDokElement In AcDok.PaperSpace If acDokElement.ObjectName = "AcDbBlockReference" Then Set Objekt = AcDok.ObjectIdToObject(Element.ObjectID) If Objekt.Name = "XLO_KON_NEU_180" Then Inhalt = Objekt.GetAttributes For X = LBound(Inhalt) To UBound(Inhalt) If Inhalt(X).TagString = "XLO_SA" Then Sachnummer = Inhalt(X).TextString MsgBox Sachnummer End If Next X End If End If Next acDokElement AcDok.Closeif not acApp.activedocument.save then acApp.activedocumet. save acApp.activedocument. close 0 acApp.Quit
Ey sorry, ich glaube das haut auch nicht hin, bersuche bitte mal das nächste Mal deinen Code mit Tags zu versehen, dass man auch die Einrückungen sehen kann. Ansonsten, wars's blind ohne Acad, morgen gugge isch nochmal;-) lg Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004
|
erstellt am: 11. Okt. 2005 23:09 <-- editieren / zitieren --> Unities abgeben:
|
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004 AutoCAD-Mechanical 2017, SolidEdge ST8
|
erstellt am: 12. Okt. 2005 07:50 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen zusammen, habe heute morgen festgestellt das das Tool mit dem AutoCAD-Mech-2004 einwandfrei funktioniert und den Zeichnungen nichts tut. Also denke ich ganz klar ein 2005-Problem. Hilft das weiter? An was kanns liegen? Vielleicht mal nen Service-Pack draufspielen? Hilfe Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004
|
erstellt am: 12. Okt. 2005 16:57 <-- editieren / zitieren --> Unities abgeben:
Hallo Nancy, Du glaubst es nicht, Problem gelöst. Hatte in meinen AutoCAD-Einstellungen eingestellt das er die Zeichnungen immer im AutoCAD2000-Format speichern soll. Hab jetzt das für Mech2005 übliche Format eingestellt und siehe da es funktioniert. Hoffe wir können anderen durch dieses Thema viel viel Zeit sparen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |