Instanz für Autocad2015

Instanz für Autocad2015

r.ziethen
Participant Participant
356Aufrufe
4Antworten
Nachricht 1 von 5

Instanz für Autocad2015

r.ziethen
Participant
Participant

Durch welche Program-ID kann man eine Instanz eines laufenden Autocad2015-Programms erhalten? In folgenden Zeilen eines C#-Programms sind verschiedene Versuche erfolglos gemacht worden. Bei der AutoCAD-Version2014 genügt "AutoCAD.Application".

 

Autodesk.AutoCAD.Interop.AcadApplication acAppComObj = null;


 string strProgId = "AutoCAD.Application";
  strProgId = "AutoCAD.Application.20";
  strProgId = "AutoCAD.Application.20.1";
  strProgId = "AutoCAD.Application.19";
  strProgId = "AutoCAD.Application.19.0";
 
  // Get a running instance of AutoCAD
  
   acAppComObj = (Autodesk.AutoCAD.Interop.AcadApplication)Marshal.GetActiveObject(strProgId);
 

0 „Gefällt mir“-Angaben
Akzeptierte Lösungen (2)
357Aufrufe
4Antworten
Antworten (4)
Nachricht 2 von 5

Alfred.NESWADBA
Consultant
Consultant
Akzeptierte Lösung

Hi,

 

  • 20 steht für AutoCAD 2015
  • 20.1 steht für AutoCAD 2016
  • 21 für AutoCAD 2017
  • 22 für AutoCAD 2018

 

Solange aber nur eine Release von AutoCAD auf der Workstation installiert ist, sollte immer "AutoCAD.Application" ausreichend sein.

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2025
------------------------------------------------------------------------------------

(not an Autodesk consultant)
0 „Gefällt mir“-Angaben
Nachricht 3 von 5

r.ziethen
Participant
Participant
Wenn die ProgramID "AutoCAD.Application.20" benutz wird, tritt ein Fehler
auf (s. Anhang).
0 „Gefällt mir“-Angaben
Nachricht 4 von 5

Alfred.NESWADBA
Consultant
Consultant
Akzeptierte Lösung

Hi,

 

>> tritt ein Fehler auf (s. Anhang)

Leider kein Anhang vorhanden.

 

Ist Dein C#-Programm eine EXE oder läuft diese als DLL in einem anderen Prozess mit?

 

Ich habe zur Sicherheit kurz probiert,

AutoCAD 2015 zu starten

mit Excel VBA dieses auszuführen:

   Dim tObj As Object
   Set tObj = GetObject(, "AutoCAD.Application.20")

...hat alles gut funktioniert.

 

Kann es ev. sein, dass Du in den Verweisen nicht AutoCAD 2015 eingestellt hast, sondern eine andere Version?
Probier vielleicht das gleiche wie ich z.B. von Excel aus, ohne Verweise zu setzten, nur als Object verbinden.

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2025
------------------------------------------------------------------------------------

(not an Autodesk consultant)
0 „Gefällt mir“-Angaben
Nachricht 5 von 5

Sofia.Xanthopoulou
Mentor
Mentor

Hallo @r.ziethen,

 

konnte dir der Tipp von Alfred weiterhelfen? Bist du schon dazu gekommen es auszuprobieren?

 

Über ein Feedback würde ich mich sehr freuen. Smiley (fröhlich)

 

 

LG

0 „Gefällt mir“-Angaben