| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY bietet das umfangreichste Ökosystem von B2B als auch B2C-Lösungen für IT-Akteure auf dem Markt, eine Pressemitteilung
|
Autor
|
Thema: Lisp Skripte dauerhaft installieren (4304 mal gelesen)
|
Bitte ein Bit Mitglied Informatiker
Beiträge: 27 Registriert: 26.02.2008
|
erstellt am: 19. Apr. 2010 13:10 <-- editieren / zitieren --> Unities abgeben:
Ich habe ein paar Lisp Skripte programmiert und möchte diese nun automatisch so installieren das AutoCAD diese bei jedem Programstart diese lädt. Ich will das Ganze aber über eine Installationsdatei automatisieren, bloß ich habe dazu die typischen Fragen. Wo finde ich beispielsweise den Ordner in dem AutoCAD installiert ist ? Und wie heißt die Lisp Datei, welche AutoCAD automatisch bei jedem Start lädt ? (bei BricsCAD ist dies on_start.lsp). Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedelzastrow Mitglied Architekt / Bauzeichner
Beiträge: 993 Registriert: 05.07.2007 Win XP AutoCAD 2006 AutoCAD 2009 AutoCAD 2013 LT
|
erstellt am: 19. Apr. 2010 13:12 <-- editieren / zitieren --> Unities abgeben: Nur für Bitte ein Bit
|
Bitte ein Bit Mitglied Informatiker
Beiträge: 27 Registriert: 26.02.2008
|
erstellt am: 19. Apr. 2010 13:32 <-- editieren / zitieren --> Unities abgeben:
|
Bitte ein Bit Mitglied Informatiker
Beiträge: 27 Registriert: 26.02.2008
|
erstellt am: 19. Apr. 2010 15:08 <-- editieren / zitieren --> Unities abgeben:
So wie ich das sehe habe ich nun zwei Möglichkeiten 1.) Ich lasse den Benutzer den Installationsordner von AutoCAD angeben und manipuliere dort die Datei(en) acad.lsp/acaddoc.lsp. Problematisch ist nur das die Einträge in acad.lsp/acaddoc.lsp bei Installation/Deinstallation meiner Skripte sauber hinzuzufügt bzw. entfernt werden müssen, da andere Programme auch die Dateien manipulieren können. 2.) Ich könnte alternativ einen anderen Ordner anlegen, dort meine Lisp Skripte hineinpacken und den Supportpfad mittels Registryeintrag auf den Ordner legen. Problem: Der Pfad zu dem benötigten Schlüssel in der Registry scheint nicht Versionsunabhängig zu sein! Andere AutoCAD Versionen scheinen hier andere Pfade zu besitzen. Bsp. AutoCAD 2000: HK_CU\Software\Autodesk\AutoCAD\R15\Profiles\<<MyProfile>>\General\ACAD
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dorfy Mitglied Double-Dipl.-Ing. Bleistiftanspitzer
Beiträge: 900 Registriert: 21.07.2006 AutoCad2007, ProE, HiCad
|
erstellt am: 19. Apr. 2010 16:09 <-- editieren / zitieren --> Unities abgeben: Nur für Bitte ein Bit
3.) (if (and (null c:deinelisp)(findfile "x:\\MeinLispOrdner\\deinelisp.lsp")) (load "x:\\MeinLispOrdner\\deinelisp.lsp")) und packst dir das auf ein buntes Knöpfchen (ggf. noch ein princ oder promt wenn nix gefunden wird ... ------------------ Mfg Heiko Elefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archtools Mitglied
Beiträge: 965 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 21. Apr. 2010 20:15 <-- editieren / zitieren --> Unities abgeben: Nur für Bitte ein Bit
Zitat: Original erstellt von Bitte ein Bit: Danke für die Info. Ich bin halt ein Informatiker und habe nur am Rand mit AutoCAD und Co. zu tun.
Ich würde Dir noch empfehlen, das automatische Laden via Menüdateien in Erwägung zu ziehen. Falls die Lisp-Programme vom Anwender ausführbare Befehle enthalten, dann wirst Du diese vermutlich von Werkzeugkästen aus aufrufen lassen. Wenn Du diese(n) Werkzeugka(e)sten in eine eigene Menüdatei packst, dann werden nicht nur die einmal geladenen Menüs bei jedem neuen Aufruf von AutoCAD wieder genau so geladen, sondern auch zugehörige Lisp-Dateien, die als Dateinamen den Namen der Menüdatei haben, als Endung *.MNL. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Wolfgang S Mitglied CADaver
Beiträge: 270 Registriert: 06.03.2006 AC 2009, C3D 2009, AC 2010, C3D 2010, AC 2011, C3D 2011, RVT 2010, RVT 2011, ASD 2011 und alles darunter bis R14 + Win XP, Win XP64, Win 7/64
|
erstellt am: 22. Apr. 2010 10:07 <-- editieren / zitieren --> Unities abgeben: Nur für Bitte ein Bit
... und noch mein Senf: Wenn der Platz für die Unternehmensanpassungsdatei / Enterprisemenu noch nicht vergeben ist dann empfehle ich diese zu verwenden! Vorteile: + automatisch mit Schreibschutz + CUI und MNL und ein eigener Bereich für "Lisp laden" in der CUI(X) verfügbar + "Installation" ist nur ein Eintrag in den Optionen (aber auch die Deinstallation) + in den Programmteilen die geladen werden ist es möglich gleich mal zu kontrollieren ob der Pfad zum gewünschten Verzeichnis vorhanden ist [Supportpfade, (getenv "acad")...] und die Entfaltung des Programms zu starten + für eine Installation übers Netzwerk kann in einer ACAD-Einrichtung (Deployment) schon vorab diese Unternehmensanpassungsdatei voreingestellt werden. Nachteile: - vom Benutzer leicht zu entfernen Aus der Praxis meine eigene Vorgehensweise: - Unternehmensanpassungsdatei mit folgendem Eintrag: "M:\Ordner1\Ordner2\MeineDatei" ohne Endung! Somit funktioniert der Eintrag bei 2006-2009 (cui) und 2010+ (cuix) ohne Änderung! - Ergänzen der notwendigen Pfade in den Supportpfaden - Verankern dieses Enterprisemenus in ALLEN vorhandenen Profilen - Verankern dieses Enterprisemenus in wichtigen ACAD-Dateien die ein (in meinem Fall unerlaubtes) Entfernen dieses Menüs erkennen und die Neuinstallation automatisch starten
Weiters ist es noch möglich diese wichtigen ACAD-Dateien auch im UserDataCache zu ändern. Jedes neue Windowsprofil auf dem Rechner wird dann auch automatisch mit diesem Menü installiert. Allerdings ist das schon ein sehr weitgehender Eingriff der nur bei unbedingter Notwendigkeit erfolgen sollte. Auch gibts bei den WindowsVersionen ab Vista Probleme mit den Schreibrechten in diesem Verzeichnis (also einmal als lokaler Admin installieren, dann erst in die Benutzerprofile gehen)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |