Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD ObjectARX und .NET
  AutoCAD 2012 Automation mit C#

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  AutoCAD 2012 Automation mit C# (3595 mal gelesen)
kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 24. Jan. 2012 10:43    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

Hallo.

Ich bin komplett neu hier...und nicht nur das: Ich muss unter C# für ein mir noch unbekanntes Programm (AutoCAD 2012) für einen Kunden eine Software zur "Fernsteuerung" bzw. "Automation" schreiben, um damit Zeichnungen in verschiedene Formate zu exportieren, Umbenennungen von Objekten vorzunehmen, usw. Die letzten Tage habe ich mich damit beschäftigt, mich mit AutoCAD und den verfügbaren Schnittstellen auseinander zu setzen = da gibt es ja einige. Wenn ich das bisher richtig verstehe, sollte das alles mit ObjectARX machbar sein, oder? Wäre super, wenn ihr mir kurz bestätigen könntet, ob ich auf dem "richtigen Weg" bin, oder ob eine andere API nötig wäre...

Vielen lieben Dank & Gruß,
Marc

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 24. Jan. 2012 11:43    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 kaju74 10 Unities + Antwort hilfreich


FileWatcher_doku.pdf

 
Hallo Marc,

grundsätzlich bist du auf dem richtigen Weg. Welcher Schnittstelle du Dich bedient, liegt ganz bei Dir, je nachdem, welche Vorkenntnisse du in die jeweilige Richtung mitbringst. Mit ObjectARX hast Du dir sicher die mächtigste, aber eben auch die schwerste Schnittstelle rausgepickt. Je nach Aufgabe würde ich Dir eine Kombination aus .Net und/oder Lisp empfehlen.
Die anbei befindliche Dokumentation beschreibt ein Programm, welches in C#.Net geschrieben ist, aber manche Funktionalitäten auch mithilfe von LISP erledigt. Diese Doku habe ich gewählt, da das Programm hervorragend zur Erledigung deiner Aufgabe (Speichern in unterschiedlichen Formaten) genutzt werden kann. Es kann auf einem 'AutoCAD-Server' installiert werden. Wenn ein In- und ein Out-Verzeichnis freigegeben ist, können alle Anwender, egal, ob diese AutoCAD installiert haben oder auch nicht, derlei Konvertierungen von dem 'AutoCAD-Server' erledigen lassen.

Bei Fragen ...

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 24. Jan. 2012 12:10    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

Hallo.

Vielen Dank für die schnelle Antwort. LIPS muss ich mir da nochmal anschauen. Wie gesagt, ich bin absoluter Laie bzgl. AutoCAD (2012) und habe nun die dankvolle Aufgabe, diverse Dinge damit automatisiert zu machen. Zur Verfügung steht VS2010 und eben die Trial von AutoCAD. Im ersten Schritt muss ein geöffnetes Dokument in diversen Exportformaten gespeichert werden. Anschließend müssen Teile der Zeichnung (die Beschriftungen) nach einem bestimmten Muster umbenannt werden (in andere Sprachen übersetzt), bevor die Exporte stattfinden. ObjectARX schien mir zunächst die einzige Möglichkeit, die das alles kann. Ein erster Test mit C# (Hello-World Commando) funktioniert auch. Die Frage ist nun, ob ich die richtige API nutze. Welche gäbe es denn neben LIPS noch, die in Frage käme? Bei Entwicklung eines AddIns (DLL) stellen sich zudem zwei weitere Fragen, deren Antwort ich gerade suche (wenn es auf die AddIn-Entwicklugn hinausläuft):

1) Ich muss die DLL mittels NETLOAD innerhalb von AutoCAD laden. Danach lassen sich aber keine Kompilate mehr machen, bis ich AutoCAD schließe, da die Datei ja geladen wurde. Gibt es irgendwo eine Richtlinie, wie man AddIns sinnvoll entwickelt? Wie kompiliere ich ein AddIn, was gerade von AutoCad geladen ist? Das muss doch irgendwie einfacher gehen...

2) Macht es Sinn, sich beim AutoCAD-Developer Programm anzumelden? Kostet immerhin eine Stange Geld...

Bitte nicht böse sein, wenn das hier noch absolute Laien-Fragen sind...aber bei dem Wust an Möglichkeiten von AutoCAD, den Anbindungen/API's, Unterversionen, usw. bin ich echt verwirrt...

Danke & lG,
Marc

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 24. Jan. 2012 12:23    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 kaju74 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von kaju74:
... ObjectARX schien mir zunächst die einzige Möglichkeit, die das alles kann. ...


Das kann nicht nur mit ObjectARX - es kann auch mit .Net und Lisp erledigt werden.
Zitat:
Original erstellt von kaju74:
1) Ich muss die DLL mittels NETLOAD innerhalb von AutoCAD laden. Danach lassen sich aber keine Kompilate mehr machen, bis ich AutoCAD schließe, da die Datei ja geladen wurde. Gibt es irgendwo eine Richtlinie, wie man AddIns sinnvoll entwickelt? Wie kompiliere ich ein AddIn, was gerade von AutoCad geladen ist? Das muss doch irgendwie einfacher gehen...

Nein, das ist einfach so.
Zitat:
Original erstellt von kaju74:
2) Macht es Sinn, sich beim AutoCAD-Developer Programm anzumelden? Kostet immerhin eine Stange Geld...


Das muss jeder für sich entscheiden. Wenn du das professionell machen möchtest, also wechselnde kunden mit den unterschiedlichsten AutoCAD-Produkten, macht es absolut Sinn. Ansonsten lohnt es sich aus meiner Sicht nicht wirklich, da die ADN-internen Foren auch nicht viel mehr hergeben, als das Internet. Nett ist, dass man bei Problemen, für die du keine Antwort irgendwo sonst finden kannst, dann im ADN stellen kannst. Mit viel Glück bekommst du eine Antwort mit Lösung. Meistens jedoch nur die Feststellung, dass es in Bug-Liste aufgenommmen wurde und irgendwann gelöst werden sein wird ... .

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 24. Jan. 2012 12:45    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

Hallo.

Okay, jetzt bin ich völlig verwirrt. Um mit .net (C# oder VB) AutoCAD fernzusteuern, benötige ich doch irgendeine API, die ich darüber ansprechen kann. Früher hätte ich das mit ActiveX/COM gemacht, mit AutoCAD2012 sollten da aber die internen Möglichkeiten (AddIn) genutzt werden, oder? Das mit dem Kompilieren->AutoCAD starten->Testen->AutoCad beenden->neu kompilieren->AutoCAD starten macht das Ganze natülich extrem aufwendig. Das war mit Microsoft ISS früher ach so "deppert"...dann gabs aber mal eine Proxy-DLL, die man dazwischengehängt hat. Gibt's da für AutoCAD gar nichts zur Erleichterung?

Bzgl. Dev-Programm, vielen Dank für die Aussage. Ich denke, das Geld können wir uns sparen, zumal es wohl bei dem einen Kundenprojekt bleiben wird.

Ich glaube, mir fehlen hier immer noch die Basics, um ein Grundverständnis über die möglichen Ansteuerungen zu erhalten...

Nochmal Danke für Deine schnelle Hilfe,
Marc

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 24. Jan. 2012 17:25    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

jetzt habe ich Euch verschreckt, wa?

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 24. Jan. 2012 17:29    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 kaju74 10 Unities + Antwort hilfreich

... das hast du sicher nicht. Aber welche Fragen waren denn noch offen?

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 24. Jan. 2012 17:42    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.

Naja, die zwei von oben:

Zitat:
Okay, jetzt bin ich völlig verwirrt. Um mit .net (C# oder VB) AutoCAD fernzusteuern, benötige ich doch irgendeine API, die ich darüber ansprechen kann. Früher hätte ich das mit ActiveX/COM gemacht, mit AutoCAD2012 sollten da aber die internen Möglichkeiten (AddIn) genutzt werden, oder? Das mit dem Kompilieren->AutoCAD starten->Testen->AutoCad beenden->neu kompilieren->AutoCAD starten macht das Ganze natülich extrem aufwendig. Das war mit Microsoft ISS früher ach so "deppert"...dann gabs aber mal eine Proxy-DLL, die man dazwischengehängt hat. Gibt's da für AutoCAD gar nichts zur Erleichterung?

Wenn ich das richtig verstehe, in ObjectARX die managed Variante der COM-API für .NET. Dazu brauche ich nur die zwei DLL's (acmgd.dll, acdbmgd.dll) als Referenz in mein C#-Projekt einbinden und loslegen. Das Ganze dann als Komponentenlibrary (DLL) kompilieren und als AddIn innerhalb AutoCAD laden.

LISP habe ich mir eben angeschaut und gleich wieder verworfen. Das ist ja dann was GANZ anderes als C# oder VB.NET - eieiei...das noch nebenbei lernen sprengt dann so langsam den Projektrahmen.

ActiveX scheint nicht so zu gehen, das man eine laufende AutoCAD-Instanz "einlinken" kann, sondern muss immer eine neue aufmachen, anonsten bekomme ich hier Fehler...

Ich müsste schon längst mit dem Coden anfangen und hänge immer noch an der Entscheidung: Welche API mit welcher Sprache...

LG,
Marc

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 24. Jan. 2012 18:26    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 kaju74 10 Unities + Antwort hilfreich

Hallo Marc,

die Antworten werden nicht besser, wenn du die Fragen wiederholst.

Deine Aussagen sind wenig sortiert und lassen einigen Interpretationspielraum zu - mit konkreter Hilfe wird's da schwierig. Was hast du konkret vor?

Wenn ich dir die Entscheidung nach dem bisherigem Kenntnisstand abnehmen soll, dann klingt's für mich nach einer Kombination aus C#.Net und Lisp.
Willst du eine vollständig fremdgesteuerte Applikation entwickeln, die auch das AutoCAD startet und dann sonstwas darin anstellt, wirst du kaum um Lisp herum kommen. Bevor ich mich aber weiter dazu auslasse, solltest du die Aufgabe konkret beschreiben.

<<Ich müsste schon längst mit dem Coden anfangen und hänge immer noch an der Entscheidung: Welche API mit welcher Sprache...>>
Im übrigen finde ich das ganz schön mutig von dir, Jobs anzunehmen, in Bereichen, die dir völlig neu zu sein scheinen. Besonders stellt sich mir da die Frage: Wie hast du das kalkuliert???
AutoCAD-Programmierung ist ohne Kenntnis des Objektmodells und ein paar grundsätzlichen Kenntnissen zum internen Zeichnungsaufbau imgrunde nicht zu programmieren, besser noch: man sollte mal als Anwender damit gearbeitet haben.


Grüße
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 24. Jan. 2012 18:39    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

Hallo.

Okay...sorry für das Wirrwarr...also:

Der Kunde hat AutoCad2012 und arbeitet primär Modelle für einen Lampenkatalog aus. Dieser erscheint in mehreren Ländern. Zudem sollen einzelne Modelle in verschiedene Formate exportiert werden. Dazu ist folgendes lt. Konzept zu programmieren (ich bin hier nur der progammierende Part, der keinen Einfluss auf voherige Entscheidungen hat):

Ein Popup, Dialog oder eine externe App soll zunächst zwei Schaltflächen haben:

1) Aktuelles Dokument in verschiedene Formate exportieren (automatisiert)
2) Aktuelles Dokument in verschiedene Sprachen übersetzen (MText-Objekte) und in entsprechende Dateiordner schreiben

Daher habe ich die verschiedenen Möglichkeiten abgesucht, wie man überhaupt an Objekte innerhalb von AutoCad kommt. Da bin ich eben auf die Begriffe ObjectARX, .NET-API, ActiveX/COM und nun LISP gestolpert.

Als Programmiersprachen hätte ich C#, Delphi und VB.NET (absteigend nach Wunsch). LISP kenne ich nicht und das scheint mir recht kompliziert zu werden. Vielleicht geht das Ganze auch in VBA innerhalb von AutoCAD? Aber kann man damit auch alles machen, also Dialoge/Werkzeuglisten registrieren?

Zu erwähnen wäre noch, das es eine entsprechende Übersetzungstabelle (in MS-Access) gibt, in der die einzelnen Wörter in verschiedenen Sprachen übersetzt drin stehen. Man müsste also auch irgendwie auf diese Tabelle zugreifen können.

Bis auf die Integration von AutoCad ist mir der Rest klar und ich wüsste, wie ich es machen muss. Durch die verschiedenen Schnittstellen von AutoCad fällt mir aber die Entscheidung schwer, was am besten zu nutzen ist. VisualLISP scheint mir im Gegensatz zu VisualStudio um einiges umständlicher - mal von der Sprachsyntax ganz abgesehen, die ich auch noch lernen müsste. Favorit wäre hier auf alle Fälle C# und .NET 4.0, was bei AutoCAD 2012 ja auch gehen sollte.

Tja, sorry nochmal für die Unordnung im obigen Beitrag...ich hoffe, ich konnte mich jetzt verständlicher ausdrücken und mein Dilema besser darstellen 8-)

Lieben Gruß,
Marc

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 24. Jan. 2012 18:53    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 kaju74 10 Unities + Antwort hilfreich


translation_tool.pdf

 
Hallo Marc,

Antwort: C#.Net passt ganz hervorragend. Mit C# kommst du in aller Regel ganz hervorragend auf Access-Datenbanken und auch an die AutoCAD-Objekte. Sollte also kein Problem sein - kommt ganz drauf an, ob es eine eindeutige Zuordnung zwischen Datenbank und Zeichnungstext gibt.

HINWEIS -- ABER: Ich denke, du weißt, dass es noch immer keinen ODBC-Treiber für Access für 64bit-Systeme gibt (oder zeig mir, wo ich den bekommen kann). Daher solltest du das im Vorfeld unbedingt klären, ob beim Kunden auf 64bit-Basis gearbeitet wird bzw. darauf hinweisen, dass das Programm nur unter 32bit läuft.

(Übersetzungen von Zeichnungen sind ja kein neues Thema, anbei mal ein Auszug einer Doku, zu einem XML-basiertem Übersetzungstool.)

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 25. Jan. 2012 10:29    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.

Super - danke. Das hilft mir schonmal...und Dein Anhang beschreibt schon in etwa einen Teil der Kundenlösung bzgl. Übersetzungen - so in die Richtung wird dass dann auch gehen. Okay, also C#, VS2010 und AutoCAD 2012 sind geklärt. Jetzt die möglichen API's. Mir ist noch nicht so ganz der Sinn von ObjectARX klar. Ich habe das Paket heruntergeladen und dort befinden sich dieselben DLL's wie im AutoCAD Installationsverzeichnis (die beiden DLL's von oben). Ich dachte bisher, ObjectARX wäre die managed Version davon?!

Und: Ich habe schon einige Links im Netz ausprobiert bzgl. Dokumentation. Die meisten beziehen sich auf VB.NET. Auch aktuelle Bücher gibts wohl nicht. Welche Resourcen wären jetzt der beste Einstieg, um die Möglichkeiten der entsprechenden API kennen zu lernen (also erstmal in dem Stiel: AutoCAD-API für Dummies)? Oder sind die offiziellen, freien Resourcen (Web.TV, Through the interfaces, ...) ausreichend, um das nötigste zu erlenen?

Und nochmal: Vielen, vielen Dank für Deine Hilfe...

LG,
Marc

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

ivb.hst
Mitglied
Programmierer


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

Beiträge: 15
Registriert: 11.10.2010

AutoCAD 2007-2013 32/64bit
Windows 7 Ultimate 64Bit
Inter(R) Core(TM) i5-2500K 3.3 GHz

erstellt am: 25. Jan. 2012 10:46    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 kaju74 10 Unities + Antwort hilfreich

ObjectARX ist die C++ Entwicklungsumgebung von AutoCAD und beinhaltet die notwendigen Bibliotheken zur Steuerung von AutoCAD über MS Visual C++. Es können sowohl ARX-Dateien zur Einbindung neuer Befehle als auch DBX-Dateien zur Generierung neuer AutoCAD-Objekte erstellt werden. Das Debuggen der jeweiligen Anwendungen erfolgt hierbei über Visual Studio (C++) in Verbindung mit der jeweiligen AutoCAD-Version durch Festlegung der entsprechenden acad.exe als Debuggingbefehl.
Je nach AutoCAD Version wird die entsprechende Visual Studio Version benötigt.

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 25. Jan. 2012 11:32    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.

Okay...und die .Net-API ist dann bereits nach Installation von AutoCAD vorhanden und kann direkt über VS2010/C# benutzt werden? C++ wollte ich eigentlich nicht machen...oder liege ich jetzt wieder falsch?

LG,
Marc

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 25. Jan. 2012 13:58    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 kaju74 10 Unities + Antwort hilfreich

Ja - genau so ist es.

Die Websiten die du im obigen Beitrag genannt hast, sind (aus meiner Sicht) ausreichend.

Grüße Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 25. Jan. 2012 14:10    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.

Vielen Dank...das reicht dann erstmal, bis auf eine kleine Winzigkeit:

Mache ich dann jetzt am Besten ein AddIn (mit den Nachteilen des permanenten AutoCAD Neustarts während der Entwicklung) oder gibt es noch andere Mögichkeiten, AutoCAD mit C#/.NET-API zu automatisieren?

LG,
Marc

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 25. Jan. 2012 15:25    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 kaju74 10 Unities + Antwort hilfreich

... wie oben bereits geschrieben. Das ist so, ich wüsste nicht was und wie etwas daran geändert werden könnte.

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

ManfredPS
Mitglied



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

Beiträge: 118
Registriert: 23.08.2011

..

erstellt am: 25. Jan. 2012 16: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 Nur für kaju74 10 Unities + Antwort hilfreich

Zitat:
mit den Nachteilen des permanenten AutoCAD Neustarts während der Entwicklung
Wenn du 32bit AutoCAD hast (oder Vertikalprodukt), brauchst du solange nicht neu starten, solange du an Signaturen nichts änderst. Innerhalb einer Func/Sub/Prop darfst du dann auch im Lauf umschreiben.

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 25. Jan. 2012 17:03    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

Hallo.

Hm...das verstehe ich noch nicht ganz. Wenn ich in VS die DLL kompiliere und dann mit NETLOAD innterhalb der AutoCAD Session lade, ist diese explizit von AC im Zugriff d.h., ich kann Änderungen im Code nicht kompilieren...oder was meinst Du?

LG,
Marc

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

ManfredPS
Mitglied



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

Beiträge: 118
Registriert: 23.08.2011

..

erstellt am: 25. Jan. 2012 17:09    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 kaju74 10 Unities + Antwort hilfreich

Zitat:
Wenn ich in VS die DLL kompiliere und dann mit NETLOAD innterhalb der AutoCAD Session lade, ist diese explizit von AC im Zugriff
Ja, und? Wenn Du das AutoCAD aus VS2010 heraus gestartet hast, dein Projekt im Debug-Modus läuft, dann kannst du einen BreakPoint setzen und wenn du im Programm dorthinkommst, dann stehst du im VS2010 und darfst bearbeiten.
Ich verstehe schon die Frage von Holger nach "du hast einen Auftrag angenommen ohne zu wissen wie das geht" ... lerne zuerst AutoCAD, lerne VS/C# und lese/lese/lese im Internet, da gibt's so viel Threads/Blogs/Videos rund um C# mit AutoCAD und auch Debug mit VS/AutoCAD.

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 25. Jan. 2012 17:25    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 kaju74 10 Unities + Antwort hilfreich

... soll heißen: Entwickelst du auf einem 32bit-System, kannst du debuggen, also Änderungen innerhalb von Funktionen vornehmen, Die Objektdefinition kannst du nicht beim Debuggen ändern.

Hast du eigentlich mal was ausprobiert?

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 25. Jan. 2012 17:59    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

Hallo.

Ich habe das Projekt nicht angenommen, sondern die Firma für die ich arbeite. Ich muss es jetzt machen, egal wie. Und ja, ich probiere ich seit Tagen aus und habe dank Euch zumindest Teilerfolge...es happert halt dummerweise noch teilweise an den Grundlagen. Es ist nichts frustrierender, als Abends nach Hause zu gehen und nichts erreicht zu haben. Aber ja, das mit dem Debuggen habe ich tatsächlich so noch nichts ausprobieren können, da mit VS beim Starten dann irgendwann eine Exception schmeißt, weil wohl das Laden zu lange dauert (ich habe eine Trial, und muss diese auch immer erst abnicken). Da ich aber nun zumindest weiß, ich welche Richtung ich nun weitergucken muss (C#, AddIn, ...), gelob ich (hoffentlich) Besserung bei meinen evtl. nächsten Fragen...und sorry, wenn das hier so rüberkam, das ich Eure Ratschläge nicht berücksichtigen würde...

LG,
Marc

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

ManfredPS
Mitglied



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

Beiträge: 118
Registriert: 23.08.2011

..

erstellt am: 25. Jan. 2012 18:00    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 kaju74 10 Unities + Antwort hilfreich

Zitat:
Entwickelst du auf einem 32bit-System, kannst du debuggen, also Änderungen innerhalb von Funktionen vornehmen
Darf ich das präzesieren (tut leid, sollte aber gesagt oder geschrieben sein) ... debuggen darfst und kannst du auch mit 64bit (also mit beidem, 32 und 64bit). BreakPoints funken, Variableninhalte prüfen, Verzweigungen checken, und wenn's sein muss mit Profiler Performance testen, geht alles.
Der Unterschied zw. 32bit und 64bit ist, ob man während des Debuggens Code umschreiben darf. Und das geht dann nur mit 32bit (genau genommen, das AutoCAD muss im 32bit Modus laufen, was je nach Version oder Art des AutoCAD dann eben auch ein 32bit Betriebssystem voraussetzt).
Einmischung Ende.

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 25. Jan. 2012 18:10    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 kaju74 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von kaju74:
... Ich habe das Projekt nicht angenommen, sondern die Firma für die ich arbeite. Ich muss es jetzt machen, egal wie. Und ja, ich probiere ich seit Tagen aus und habe dank Euch zumindest Teilerfolge...

Für den von dir aufgezeigten Umfang wären (wenn überhaupt) kaum mehr als 3 Tage notwendig. Da solltest du mal mit deinem Chef sprechen, ob das
a) Verhältnis von der Einarbeitung in das Thema zum tatsächlichem Aufwand gerechtfertigt ist
b) ob es nicht sinnvoll wäre, nach dem Gelbe-Seiten-Prinzip zu verfahren. Sprich: Leute fragen/beauftragen, die sich damit auskennen.

Ich kann mir vorstellen (zumindest ist es bei meinen Aufträgen immer so), dass es auch bei dir einen Termin einzuhalten gilt. Wenn der nicht erst in 2 Monaten ist, würde ich mal (böse) schätzen, ist es für Dich kaum machbar. Die Probleme werden ja erst noch kommen: Du bist nicht fit in der Zeichnungsstruktur, kennst die passenden Objekte dazu nicht, also die Acad-API ist dir vollkommen unbekannt ... wie willst du das schaffen?
Ganz böse Nebenfrage: Wieviele Rechner stehen dir denn zur Verfügung, falls der Testzeitraum deiner Acad-Installation nicht ausreicht?

Sorry, aber diese Gedanken konnte ich jetzt nicht für mich behalten.

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 26. Jan. 2012 10:09    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

Hallo.

Tja, da hast Du (leider) wohl Recht...ich werde wesentlich länger als drei Tage brauchen und ja, es gibt eine Deadline...das macht das Ganze jetzt nicht gerade einfacher. Zumindest bin ich froh, das es ein deutsches Forum gibt, bei dem einem auch geholfen wird - danke. Aus meiner Sicht wäre es auch sinnvoller, das an einen "Profi" abzugeben, der dann weitaus weniger Zeit benötigt. Vielleicht ist aber auch der Hintergedanke, weiterführende Projekte im Anschluss zu bekommen, ich weiß es nicht. Bzgl. AutoCAD und Umgebung habe ich hier Windows 7 32bit, das sollte also funktionieren. Wenn sich der Testzeitraum dem Ende nähert, hoffe ich, AutoCAD auf einer VM weiterbetreiben zu können, bis das Projekt fertig ist. Mir kam zu Ohren, das man eine Speziell-Freischalt-Version von AutoCAD bekommt, wenn man dem DeveloperNetzwerk beitritt - stimmt das eigentlich?

Lieben Gruß,
Marc

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

ivb.hst
Mitglied
Programmierer


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

Beiträge: 15
Registriert: 11.10.2010

AutoCAD 2007-2013 32/64bit
Windows 7 Ultimate 64Bit
Inter(R) Core(TM) i5-2500K 3.3 GHz

erstellt am: 26. Jan. 2012 10:30    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 kaju74 10 Unities + Antwort hilfreich

Wenn man dem ADN beitritt kostet es in diesem Jahr 1400€ für einen User. Als Gegenleistung erhält man vollen Zugriff auf alle AutoCAD-Versionen (von AutoCAD über MAP bis Civil oder MEP usw.) in den 32bit und 64bit Versionen. Der Vertrag läuft immer über ein Jahr (von Januar bis Dezember!). Schließt man den Vertrag ab 1. Oktober hat man eine Laufzeit von 15 Monaten.
Als Hinweis sollte noch angemerkt werden, daß eine Nutzung der AutoCAD Versionen nur zur Entwicklung und nicht! in der Produktion gestattet wird.

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

kaju74
Mitglied



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

Beiträge: 17
Registriert: 24.01.2012

erstellt am: 26. Jan. 2012 10:49    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.

Danke - ja, das wäre ja nur zur Entwicklung...

LG,
Marc

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)2023 CAD.de | Impressum | Datenschutz