| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: ACAD SysVariablen und Option per Lisp ändern (2446 / mal gelesen)
|
Mangrove Mitglied
Beiträge: 283 Registriert: 07.02.2007 Win 7 x64 Intel i7 3,5 Ggz, 16GB, Quadro K 2000 Acad 2016 Acad Architecture 2016 Revit 2017 R2
|
erstellt am: 31. Okt. 2017 18:18 <-- editieren / zitieren --> Unities abgeben:
Hallo liebes Forum, Ich muss auf einer größern Anzahl von Rechnern (>15) die Sysvariable STARTUP auf [2] ändern sowie Pfade in den Optionen ändern (also Überschreiben) oder hinzufügen. Kennt jemand die Befehle um die Grundstruktur für eine solche "batch" Datei aufzubauen die mir erlauben würde die Sache dann anzupassen (meine Suche war bisher leider erfolglos und leider fehlt die Zeit wirklich LISP zu lernen). Vielen Dank im Voraus für alle Hinweise Gruß aus Wien Mangrove ------------------ Alle Fragen sind es wert gestellt zu werden Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 01. Nov. 2017 07:40 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
erstell dir eine Textdatei FIRSTSTART.LSP in der Steht: (defun DT:PATH-ADD(PATH PATHSTR / POS LISTE) (if(=(type PATHSTR)'STR) (progn (while(setq POS (vl-string-search ";" PATHSTR)) (setq LISTE (cons(substr PATHSTR 1 POS)LISTE)PATHSTR(substr PATHSTR(+ POS 2))) ) (if(and(=(type PATH) 'STR)(setq PATH(strcase(vl-string-translate "/" "\\" PATH))) (setq PATH(vl-string-right-trim "\\" PATH))(vl-file-directory-p PATH) ) (progn (if(member PATH(setq LISTE(mapcar'strcase(reverse LISTE)))) (setq LISTE(vl-remove PATH LISTE)) ) (setq LISTE(cons PATH LISTE)) ) ) (setq PATHSTR (apply 'strcat (mapcar '(lambda(x) (strcat X ";")) LISTE))) (list PATHSTR LISTE) ) ) ) (defun DT:SUPPORTPATH-ADD(PATH / SUPPORT POS LISTE) (if(and(setq SUPPORT(getenv "ACAD"))(setq SUPPORT(DT:PATH-ADD PATH SUPPORT))) (progn(setenv "ACAD" (car SUPPORT))SUPPORT) ) ) (setvar "STARTUP" 2) (mapcar 'DT:SUPPORTPATH-ADD '("C:\\Einstellungen\\Autocad" "C:\\Einstellungen\\Meine" ) ) ... geht auch mit anderen Einstellungen, da mußt du bloß genauer werden ... und die LSP-Datei ziehst du dann auf jedem Rechner per Drag&Drop aus dem Windowsexplorer in die Zeichenfläche .. ------------------ Also ich finde Unities gut ... und andere sicher auch --------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Peter2 Ehrenmitglied V.I.P. h.c.
Beiträge: 3701 Registriert: 15.10.2003 Win 10/64 Pro AutoCAD MAP 3D 2018 / 2023 BricsCAD 22
|
erstellt am: 02. Nov. 2017 08:50 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
Neben der perfekten Lösung von CADmium kann man reine Sysvar-Einstellungen auch per Script oder per Sysvardialog (_.sysvdlg, Expresstools) erledigen. ------------------ Für jedes Problem gibt es eine einfache Lösung. Die ist aber meistens falsch. ;-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mangrove Mitglied
Beiträge: 283 Registriert: 07.02.2007 Win 7 x64 Intel i7 3,5 Ggz, 16GB, Quadro K 2000 Acad 2016 Acad Architecture 2016 Revit 2017 R2
|
erstellt am: 02. Nov. 2017 09:57 <-- editieren / zitieren --> Unities abgeben:
Hallo Cadmium, Vielen Dank, ich bin überwältigt. Jetzt muss ich nur noch verstehen um das ganze anzuwenden. Zitat: Original erstellt von CADmium: erstell dir eine Textdatei FIRSTSTART.LSP in der Steht: (defun DT:PATH-ADD(PATH PATHSTR / POS LISTE) (if(=(type PATHSTR)'STR) (progn (while(setq POS (vl-string-search ";" PATHSTR)) (setq LISTE (cons(substr PATHSTR 1 POS)LISTE)PATHSTR(substr PATHSTR(+ POS 2))) ) (if(and(=(type PATH) 'STR)(setq PATH(strcase(vl-string-translate "/" "\\" PATH))) (setq PATH(vl-string-right-trim "\\" PATH))(vl-file-directory-p PATH) ) (progn (if(member PATH(setq LISTE(mapcar'strcase(reverse LISTE)))) (setq LISTE(vl-remove PATH LISTE)) ) (setq LISTE(cons PATH LISTE)) ) ) (setq PATHSTR (apply 'strcat (mapcar '(lambda(x) (strcat X ";")) LISTE))) (list PATHSTR LISTE) ) ) ) (defun DT:SUPPORTPATH-ADD(PATH / SUPPORT POS LISTE) (if(and(setq SUPPORT(getenv "ACAD"))(setq SUPPORT(DT:PATH-ADD PATH SUPPORT))) (progn(setenv "ACAD" (car SUPPORT))SUPPORT) ) ) (setvar "STARTUP" 2) (mapcar 'DT:SUPPORTPATH-ADD '("C:\\Einstellungen\\Autocad" "C:\\Einstellungen\\Meine" ) ) ... geht auch mit anderen Einstellungen, da mußt du bloß genauer werden ... und die LSP-Datei ziehst du dann auf jedem Rechner per Drag&Drop aus dem Windowsexplorer in die Zeichenfläche ..
Was mir jetzt noch nicht klar ist, ist wie ich die verschiedenen Pfade anspreche. Konkret will ich die Pfade der Option meines Computers wie folgt bei mehreren Rechern replizieren. Set SysVar STARTUP=2 Optionen: Pfad für Drucker-Support-Datei Suchpfad für Plotstiltabelle: M:\Buerostandard\ACA\Plotstyles [zusätzlich] Vorlagen Einstellungen Position der Zeichnungsvorlage: C:\ProgramData\Autodesk\ACA 2016\deu\Template -> M:\Buerostandard\ACA\Vorlagen [überschreiben] Vorgegebener Vorlagenname für SNEU m:\buerostandard\aca\vorlagen\vorlage v002a.dwt -> Kein Wert [überschreiben] Das ganze ermöglicht dann beim Einstieg in ACA oder bei SNEU dem Anwender aus den Vorlagenzeichnungen im Verzeichnis M:\Buerostandard\ACA\Vorlagen auszuwählen. Danke im Voraus für deine Hilfe. ------------------ Alle Fragen sind es wert gestellt zu werden Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 02. Nov. 2017 11:35 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
|
Mangrove Mitglied
Beiträge: 283 Registriert: 07.02.2007 Win 7 x64 Intel i7 3,5 Ggz, 16GB, Quadro K 2000 Acad 2016 Acad Architecture 2016 Revit 2017 R2
|
erstellt am: 02. Nov. 2017 12:06 <-- editieren / zitieren --> Unities abgeben:
Hallo Cadmium, Habe das eben probiert und wie folgt geändert: Leider überschreibt er den Wert Änderung 1 durch die Änderung 2. und somit bleibt unter "Pfad für Drucker-Support-Datei/Suchpfad für Plotstiltabelle" nur der Wert Änderung 2 "M:\Buerostandard\ACA" stehen. Sonst funktioniert es super. Wie kriegst du die Namen der verschiedenen Punkte der Optionen? (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterConfigPath" "P:\\00 BIBLIOTHEK\\04 ACAD\\06 Plot Styles";;;1. Geändert -> Sollte den ersten Pfad schreiben ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterConfigPath" "M:\\Buerostandard\\ACA";;;2. Geändert -> Sollte den zweiten, zusätzlichen Pfad schreiben ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterStyleSheetPath" "M:\\Buerostandard\\ACA\\Plotstyles" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "TemplateDwgPath" "M:\\Buerostandard\\ACA\\Vorlagen" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "QNewTemplateFile" "";;;3. Geändert -> trägt keine Wert ein ) P.S. Kann ich einfach davor noch das (setvar "STARTUP" 2) stellen und das ganze als .lsp Datei speichern und via drag and drop wie oben beschrieben ausführen? Tausend Dank, deine Hilfe ist außergewöhnlich. ------------------ Alle Fragen sind es wert gestellt zu werden Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 02. Nov. 2017 12:12 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
|
Mangrove Mitglied
Beiträge: 283 Registriert: 07.02.2007 Win 7 x64 Intel i7 3,5 Ggz, 16GB, Quadro K 2000 Acad 2016 Acad Architecture 2016 Revit 2017 R2
|
erstellt am: 02. Nov. 2017 12:14 <-- editieren / zitieren --> Unities abgeben:
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 02. Nov. 2017 12:27 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
|
Mangrove Mitglied
Beiträge: 283 Registriert: 07.02.2007 Win 7 x64 Intel i7 3,5 Ggz, 16GB, Quadro K 2000 Acad 2016 Acad Architecture 2016 Revit 2017 R2
|
erstellt am: 02. Nov. 2017 12:52 <-- editieren / zitieren --> Unities abgeben:
Hallo, Nur die erste Zeile "PrinterConfigPath" erhält leider nur den zweiten Wert(siehe Screenshot). Hast du noch Ideen? (setvar "STARTUP" 2) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterConfigPath" "P:\\00 BIBLIOTHEK\\04 ACAD\\06 Plot Styles;M:\\Buerostandard\\ACA" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterStyleSheetPath" "M:\\Buerostandard\\ACA\\Plotstyles" )
(vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "TemplateDwgPath" "M:\\Buerostandard\\ACA\\Vorlagen" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "QNewTemplateFile" "" ) ------------------ Alle Fragen sind es wert gestellt zu werden Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 02. Nov. 2017 13:15 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
|
Mangrove Mitglied
Beiträge: 283 Registriert: 07.02.2007 Win 7 x64 Intel i7 3,5 Ggz, 16GB, Quadro K 2000 Acad 2016 Acad Architecture 2016 Revit 2017 R2
|
erstellt am: 02. Nov. 2017 13:57 <-- editieren / zitieren --> Unities abgeben:
Super, es funktioniert. Viele Arbeit und Fehler bleiben mir so erspart. Danke für die Bemühungen und den Einleitung. Hoffe es nächstes mal selber zu schaffen. Grüße aus Wien Mangrove ------------------ Alle Fragen sind es wert gestellt zu werden [Diese Nachricht wurde von Mangrove am 02. Nov. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
C4DP4P57 Mitglied Technischer Zeichner
Beiträge: 150 Registriert: 06.05.2009 Win 10 Windows 10 Enterprise 64Bit Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz 32 GB RAM NVIDIA Quadro P1000 AutoCAD 2019.1.2 64Bit
|
erstellt am: 11. Jul. 2018 17:15 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
Hallo Zusammen, ich versuche gerade ebenfalls eine ähnliche Batchdatei aufzubauen, hänge aber gerade an dem Reiter Plotten und Publizieren. Dort würde ich gerne das Häkchen bei "Systemdrucker ausblenden" setzen lassen. Mein bisheriger, noch unvollständiger Code: (vlax-put-property (vlax-get-property (vlax-get-property (vlax-get-acad-object) 'Preferences) 'Files) 'supportpath (strcat (vlax-get-property (vlax-get-property (vlax-get-property (vlax-get-acad-object) 'Preferences) 'Files) 'supportpath) ";W:meinPfad" ) ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "CUSTOMICONPATH" "W:meinPfad" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "AltFontFile" "Arial" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterConfigPath" "W:meinPfad" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterDescPath" "W:meinPfad" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "PrinterStyleSheetPath" "W:meinPfad" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "TemplateDwgPath" "W:meinPfad" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "QNewTemplateFile" "W:meinPfad" ) (vlax-put-property (vla-get-files(vla-get-preferences(vlax-get-acad-object))) "ToolPalettePath" "W:meinPfad" ) (command "actpath" "W:meinPfad") (vlax-put-property (vla-get-OpenSave(vla-get-Preferences(vlax-get-acad-object))) "SaveAsType" "60" ) Kann ich es genauso ansprechen wie bei speichern unter? Wenn ja, nach was für einem Ausdruck müsste ich den suchen? Ich habe eine Liste mit allen VL-VLA-VLAX-Funktionen, finde aber nicht wirklich was um das Häkchen für "Systemdrucker ausblenden" zu setzen (weiß nicht wie ichs besser beschreiben soll). (vlax-put-property (vla-get-???(vla-get-Preferences(vlax-get-acad-object))) "???" "???" ) oder gibt es eine Systemvariable dafür? habe im WWW nicht wirklich was gefunden. Vielen Dank schonmal Gruß Jörg ------------------ Wer immer tut, was er schon kann, bleibt immer das, was er schon ist. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADuceus Mitglied LWL-Netzplaner GIS
Beiträge: 358 Registriert: 20.01.2005 LWL Netzplanung AutoCAD Map 3D 2020 Win10 64bit / Chrome Intel® Core™ i7-4770K 3.50GHz / 32GB NVidia Quadro P400 HP DesignJet T795
|
erstellt am: 11. Jul. 2018 17:31 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
|
C4DP4P57 Mitglied Technischer Zeichner
Beiträge: 150 Registriert: 06.05.2009 Win 10 Windows 10 Enterprise 64Bit Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz 32 GB RAM NVIDIA Quadro P1000 AutoCAD 2019.1.2 64Bit
|
erstellt am: 11. Jul. 2018 17:49 <-- editieren / zitieren --> Unities abgeben: Nur für Mangrove
Zitat: Original erstellt von CADuceus: Hallo C4DP4P57Du suchst wohl [b](setenv "HideSystemPrinters" "0"). [/B]
Supie!!! Vielen Dank! Jörg ------------------ Wer immer tut, was er schon kann, bleibt immer das, was er schon ist. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |