| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Von VBA auf .net (1233 mal gelesen)
|
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004
|
erstellt am: 04. Jun. 2015 13:17 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, nachdem ich jahrelang auf alten 32bit-AutoCAD Versionen mit VBA meine Dinge erledigt habe, komme ich langsam nicht mehr um 64bit herum. So wie es aussieht ist ja wohl die einzig vernünftige Alternative wenn man VBA kennt - .Net. Habe mit Migration und allem möglichen rumprobiert, aber keine vernünftigen Ergebnisse erzielt. Teilweise laufen die Tools ja im VBA-Format mit kleinen Anpassungen, aber unglaublich langsam. Ich hoffe Ihr steinigt mich nicht wegen der sicherlich schon x-Mal gestellten Frage, aber Suchergebnisse sind meist schon ein paar Jahre alt und es wird sich ja doch einiges tun. Ich fang einfach mal an: 1. Gibt es noch immer keine Möglichkeit die "alten" VBA-Tools auf z.B. Version 2011 - 64bit (einfach) zum Laufen zu bringen? 2. Ist .Net wirklich eine vernünftige Variante mit Zukunft für Acad, oder gibt es bessere Altenativen? 3. Wie programmiert Ihr .NET? Wahrscheinlich ja Visual Basic Express? Wenn ja, gibt es eine bestimmte Version die sich da am Besten eignet? 4. Kennt jemand gute Links mit Tutorials für den Ein/Umstieg? Ich würde mich freuen wenn Ihr mir den Umstieg mit ein paar hilfreichen Antworten erleichtern würdet. Viele Grüße Ralph
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4171 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 04. Jun. 2015 13:45 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Zitat: Original erstellt von RalphRX8: ... nachdem ich jahrelang auf alten 32bit-AutoCAD Versionen mit VBA meine Dinge erledigt habe, komme ich langsam nicht mehr um 64bit herum.
Vielleicht ist das die Gelegenheit, die alten Tools zu konsolidieren? Und wenn man ein Programm, dessen Logik bereits geklärt ist, als Basis zum Einstieg in eine andere Programmiersprache nutzt, dann kann man sich ja auf die Syntax des Neuen konzentrieren. Ich würde dir empfehlen, einfach neu anzufangen. Zitat: Original erstellt von RalphRX8: ... So wie es aussieht ist ja wohl die einzig vernünftige Alternative wenn man VBA kennt - .Net. ...
ja Zitat: Original erstellt von RalphRX8: 1. Gibt es noch immer keine Möglichkeit die "alten" VBA-Tools auf z.B. Version 2011 - 64bit (einfach) zum Laufen zu bringen?
(keine Ahnung, da ich nie mit VBA unterwegs war) Zitat: Original erstellt von RalphRX8: 2. Ist .Net wirklich eine vernünftige Variante mit Zukunft für Acad, oder gibt es bessere Altenativen?
100%ige Zukunftssicherheit wird es wohl nie geben .. aber für den aktuellen Zeitpunkt würde ich sagen: .Net ist die derzeit beste Wahl. Zitat: Original erstellt von RalphRX8: 3. Wie programmiert Ihr .NET? Wahrscheinlich ja Visual Basic Express? Wenn ja, gibt es eine bestimmte Version die sich da am Besten eignet?
VS 2013 professional (wenn du es beruflich machst, würde ich dir keine Express-Versionen empfehlen) Wenn der Umstieg nun schon ansteht, würde ich dir auch gleich den Umstieg auf c#.Net empfehlen. Dazu findest du die meisten Code-Bsp im Internet. (aber vom Grundsatz ist es egal ob VB.NET oder c#.Net) Zitat: Original erstellt von RalphRX8: 4. Kennt jemand gute Links mit Tutorials für den Ein/Umstieg?
Für einen Umstieg kann ich nichts empfehlen, da ich nie mit VB(A) so wirklich gearbeitet habe. Ich empfehle dir eine Schulung: Gerade wenn du programmieren kannst, empfehle ich die Investition. Ich selber bin irgendwann mal von Lisp auf c#.Net umgestiegen und habe damals auch in eine Schulung investiert .. inzwischen biete ich Schulungen selber an. 2 Tage sollten nach meiner Erfahrung genügen, da du mit VB(A) je bereits das Arbeiten mit Klassen/Eigenschaften und Methoden gewohnt bist. Die 2 Tage hast du innerhalb der ersten Woche, wenn du es allein über Internet-Geschichten versuchst, locker gespart. Speziell für AutoCAD empfehle ich diese Seite 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 |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 AutoCAD 20xx, Civil 3D 201x, Inventor Prof 201x usw.
|
erstellt am: 04. Jun. 2015 14:20 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
|
RalphRX8 Mitglied Kontruktionsbüro
Beiträge: 333 Registriert: 17.11.2004
|
erstellt am: 04. Jun. 2015 17:02 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank für die ausführliche Antwort Brischke. Aus welchem Grund empfiehlst Du die "VS 2013 professional" anstatt Express. Lizenzrechtliche Gründe oder wegen mehr Funktionen? Danke auch Dir Udo für den Hinweis. Vielleicht sollte ich das Ganze noch ein wenig aussitzen und das Problem erledigt sich von slebst Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1832 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 04. Jun. 2015 19:27 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Ich kann mich Holger nur anschliessen C#.NET ist eine gute Wahl, aber auch mit ein "bisschen" Arbeit verbunden. Neben seinem Link, werf auch gerne hier einen Blick drauf. http://adndevblog.typepad.com/infrastructurehttp://civilizeddevelopment.typepad.com/Ich fange jetzt auch im Kleinen an. Eigentlich dürfte es doch für dich das geringst Problem als VBA-ler sein - nur ran an die Arbeit PS: Holger, ich muss dich leider immernoch vertrösten - ein richtiger Lehrgang würde bei mir "noch" wenig bringen. Zu ungewohnt ist noch die OOP und das Framework 4.0 für mich, und seinen massiven Klassenangebot. Die Beispiele, die ich aber bisher im Netz gefunden haben, sind schon leicht verständlich und nachvollziehbar. Sollte ich deine Hilfe einmal richtig in Anspruch nehmen, dann zielt sie eher auf Insider-kenntnisse in Datenprogrammierung auf AutocadAPI ab. Bis dahin nerve ich dich noch ein wenig im Forum ------------------ Gruss Dirk Blog | Adolf Spende | Infra-Feed | ÅF AB
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingenieur Studio HOLLAUS Mitglied CAD / CAFM / GIS Beratung-Programmierung-Schulung
Beiträge: 1049 Registriert: 06.11.2008 Autocad 2 bis Autocad 2020 (+Map3D, +Civil3D, +Infraworks) RKV .... CAFM+mehr HMap ... Vermessung und Verkehr OoC .... Raumplanung CBox ... Tools für AutoCAD und BricsCAD (kostenfrei)
|
erstellt am: 04. Jun. 2015 19:34 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Zitat: Ich kann mich Holger nur anschliessen C#.NET ist eine gute Wahl
Kleine Korrektur, wenn wer VB/A schon kann, dann ist VB.NET der sinnvolle Nachfolger. C#, F#, VB.NET ... alles vergleichbar in Funktionalität, aber unterschiedlich in der Schreibweise/Syntax. Umlernen von VB auf C bietet im Falle dotNET keinerlei Vorteile, nur mehr Aufwand. Letztlich stellt sich wirklich die Frage, ob bestehende Programme, wenn diese nicht umgebaut, modernisiert, erweitert werden sollen, auf dotNET portiert werden sollten, so diese mit VB7/64bit laufen. Diesen Kosten-/Nutzenfaktor kann aber nur der RalphRX8 selbst entscheiden. ------------------
www.cars4fun.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
sarotti Mitglied Bauingenieur
Beiträge: 74 Registriert: 14.07.2005 AutoCad 2014 64Bit Windows 8-64Bit mit 8 GByte Windows 7-64Bit mit 8 GByte
|
erstellt am: 08. Jun. 2015 12:51 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Hallo liebe Leute, ich häng mich einfach mal an die Diskussion dran. Beim Programmieren mit VBA geht leider nicht alles, was in AutoCAD geht und man stößt manchmal an Grenzen. Beispiel: AUTOCAD: 3DPolylinie extrudieren, ergibt eine Fläche, Schnittmenge Volumenkörper mit Fläche ergibt Fläche, mit dem Befehl Ursprung erhält man einzelne Regionen. VBA: 3DPolylinien extrudieren geht nicht nur Regionen können extrudiert werden. Schnittmenge Volumenkörper mit Fläche geht nicht. Fläche ansprechen und mit "Ursprung" in Regionen umwandeln geht nicht. Mit der Region kann man wieder weiterarbeiten und erhält alle Eigenschaften / Koordinaten. Meine Frage ist: Kann man mit ObjectARX alle Befehle von AutoCAD ansprechen bzw. ausführen oder gibt es auch dort Grenzen beim Umgang mit den AutoCAD-Objekten? Gruß Sarotti ------------------ AutoCad 2014 64Bit Windows 8-64Bit mit 8 GByte Windows 7-64Bit mit 8 GByte Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4171 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 08. Jun. 2015 13:07 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Grenzen gibt's wohl immer, da man ja davon abhängig ist, was in der Schnittstelle durch die Entwickler frei gegeben wurde. Aber diese Grenzen beim ObjectARX oder .Net sind weiter gefasst im Vergleich zu VB(A). 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 |
sarotti Mitglied Bauingenieur
Beiträge: 74 Registriert: 14.07.2005 AutoCad 2014 64Bit Windows 8-64Bit mit 8 GByte Windows 7-64Bit mit 8 GByte
|
erstellt am: 08. Jun. 2015 14:01 <-- editieren / zitieren --> Unities abgeben: Nur für RalphRX8
Hallo Holger, danke für Deine Antwort. Ich werde es mal mit einem kleinen Projekt über den Sommer hinweg versuchen. Gruß Sarotti ------------------ AutoCad 2014 64Bit Windows 8-64Bit mit 8 GByte Windows 7-64Bit mit 8 GByte Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |