Archiv des Tags “AutoCAD”

Netzwerk-Plugins unter AutoCAD 2012 laden

13. September 2011, 18:38 Uhr

Ich wollte neulich unser selbstgeschriebenes EDM-Plugin unter AutoCAD Mechanical 2012 testen und bekam immer folgende Fehlermeldung:

Assembly kann nicht geladen werden. Fehlerdetails: System.IO.FileLoadException:
Die Datei oder Assembly “file:///<Dateipfad>” oder eine
Abhängigkeit davon wurde nicht gefunden. Der Vorgang wird nicht unterstützt.
(Ausnahme von HRESULT: 0×80131515)
Dateiname: “file:///<Dateipfad>” —>
System.NotSupportedException: Es wurde versucht, eine Assembly von einer
Netzwerkadresse zu laden, was in früheren Versionen von .NET Framework zum
Ausführen der Assembly als Sandkastenassembly geführt hätte. In dieser Version
von .NET Framework wird die CAS-Richtlinie standardmäßig nicht aktiviert,
dieser Ladevorgang kann daher gefährlich sein. Wenn Sie nicht beabsichtigen,
durch diesen Ladevorgang eine Sandkastenassembly zu erstellen, aktivieren Sie
den loadFromRemoteSources-Schalter. Weitere Informationen finden Sie unter
“http://go.microsoft.com/fwlink/?LinkId=155569″.

Problem ist, dass das Plugin im Netzwerk liegt und AutoCAD 2012 (als Microsoft .NET Framework 4 Programm) das Laden von entfernten Quellen standardmäßig verbietet. Man muss es explizit in der Konfigurationsdatei der Anwendung freischalten.

Weiterlesen…

AutoCAD: Fehlerhafter Ausdruck trotz gesetzten Limiten

27. Juni 2011, 18:24 Uhr

Wenn unter AutoCAD die Zeichnung nicht komplett gedruckt wird, obwohl die Limiten korrekt gesetzt sind, dann liegt es wahrscheinlich an einer fehlerhaften Kameraeinstellung.

Mit dem Befehl DANSICHT kann man am einfachsten den Zielpunkt der Kamera auf <0, 0, 0> sowie die Kameraposition auf <0, 0, 1> setzen:

Befehl: dansicht

Objekte wählen oder <DANSICHTBLOCK verwenden>:

Option eingeben
[Kamera/ZIel/ABstand/PUnkte/PAn/ZOom/Drehen/Schneiden/Verdeckt/AUS/ZUrück]: Punkte

Zielpunkt angeben <920.90, 224.76, 0.00>: 0,0,0

Kameraposition angeben <920.90, 224.76, 611.64>: 0,0,1

Option eingeben
[Kamera/ZIel/ABstand/PUnkte/PAn/ZOom/Drehen/Schneiden/Verdeckt/AUS/ZUrück]:

Danach sollte der Ausdruck wieder richtig sein.

Nachtrag vom 07.09.2011

Beim letzten Punkt muss man nur die Eingabetaste drücken und nicht Zurück tippen, wie anfangs angegeben!

Fehler -5.412.0 beim Starten von Autodesk-Netzwerkprogrammen

12. April 2010, 18:27 Uhr

Seit Freitag hatten wir auf der Arbeit einen Windows 7-PC bei dem AutoCAD Mechanical 2010 und Inventor 2010 nicht mehr lief. Die Inventor.exe hat sich nach ein paar Sekunden ohne Fehlermeldung wieder geschlossen und AutoCAD brachte folgende Fehlermeldung:

Lizenzierungsfehler

Es war keine gültige Lizenz vom Netzwerklizenzmanager zu bekommen.
Wenn Sie immer noch nicht auf eine Lizenz zugreifen können, wenden Sie sich an den Systemadministrator.

Fehler [-5.412.0]

Das Neuinstallieren der Programme sowie Deaktivieren von Firewall und Virenscanner hatte leider keine Lösung gebracht. Zum Glück habe ich dann irgendwann folgenden Blogeintrag gefunden:
Error Will Rogers, Error -5.412.0 when launching an Autodesk network product

Dort wurde beschrieben, dass eine defekte CascadeInfo.cas Datei vom Autodesk License Manager die Ursache des Problems ist. Die Datei befindet sich unter folgendem Ordner:

Windows XP
C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\Autodesk\AdLM
Windows Vista oder Windows 7
C:\ProgramData\Autodesk\AdLM

Wenn man die Datei löscht, wird sie beim nächsten AutoCAD/Inventor-Start wieder angelegt und die Programme sollten ohne Probleme wieder laufen.

ObjectARX: DocumentLock bei modalen Fenstern verwenden

19. Juni 2009, 18:29 Uhr

Wir portieren auf der Arbeit gerade ein altes AutoCAD VBA-Projekt mit Hilfe von ObjectARX nach VB.net.

ObjectARX ist supermächtig, aber für Neueinsteiger gibt es einige Klippen zu umschiffen. Ich möchte behaupten, dass wir die meisten schon gerammt haben, aber immer noch auf Fahrt sind! ;)

Eine gute Quelle ist übrigens der Blog von Kean Walmsley!

Beim letzten Problem hatte ich eine Funktion geschrieben, die per Transaktion Änderungen in einer DWG-Datei vornimmt. Wenn ich die Funktion direkt per Kommando aufgerufen habe, klappt alles wunderbar! Wenn ich sie allerdings von einem modalen Fenster aus aufgerufen habe, gab es immer eine eLockViolation-Ausnahme:

Eine Ausnahme (erste Chance) des Typs “Autodesk.AutoCAD.Runtime.Exception” ist in AcdbMgd.dll aufgetreten.
Autodesk.AutoCAD.Runtime.Exception: eLockViolation

Zum Glück hat Sebastian eine Lösung im CAD-Forum gefunden:

wenn eine Funktion aus dem Form (eigentlich ohne AutoCAD-Befehl) gestartet wird, dann muss die Funktion dafür das Document vor Zugriff von anderen Befehlen sperren.

Das Sperren passiert mit der LockDocument-Eigenschaft des Dokument-Objektes:

Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices

Public Class TestForm
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim oActiveDoc As Document = Application.DocumentManager.MdiActiveDocument

        Using oAcadDocLock As DocumentLock = oActiveDoc.LockDocument
            Using oTransaction As Transaction = oActiveDoc.TransactionManager.StartTransaction
                '...
                '...
                '...
                oTransaction.Commit()
            End Using
        End Using
    End Sub
End Class
Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.EditorInput

Public Class TextAutoCadAddIn
    <CommandMethod("test4")> _
    Public Sub Test()
        Application.ShowModelessDialog(New TestForm())
    End Sub
End Class