ADN Club > AutoLisp / VisualLISP и DCL

Проблема с изменением стандартного пути шаблонов

(1/3) > >>

Peacemaker_kiss:
Появилось желание изменить стандартную папку шаблонов в Autocad 2015 на свою собственную, но не просто "руками" а lisp`ом который будет все делать при формировании развертывания в едином файле lisp настройки "голого autocad`а, итак нашелся lisp, он, как настоящий парень, все меняет славно в реестре, но в перечне папок автокада пути не меняются, что удивительно, что таким же способом были изменены пути для временных файлов, для временных ссылок, для файлов автосохранения. Но с параметрами шаблонов никак. Путь сетевой, возможны какие-нибудь заморочки с этим, но в случае с папками, отвечающими за временные файлы, ссылки, автокад не остановило это, и он славно прописал в перечень папок мои пути!
Помогите, если кто сталкивался, ибо создаю группу адаптаций для "вновь установленного автокада"  и остался последний путь, чтобы все получилось
Прикладываю скрин паранойи!

Алексей Кулик:
Приветствую на форуме.
Скрин не поможет никаким образом. Код бы глянуть...
---
Добавлю: временные файлы в сетевом каталоге - это как-то не очень, я думаю. Проще и дешевле сделать локальные каталоги: головняка будет значительно меньше.

Александр Ривилис:

--- Цитата: Алексей Кулик от 09-10-2014, 21:01:26 ---Добавлю: временные файлы в сетевом каталоге - это как-то не очень, я думаю.
--- Конец цитаты ---
Я буду более категоричен - это полный бред. Так делать нельзя потому что нельзя. То есть конечно можно, но если очень ищешь приключения...
--- Цитата: Peacemaker_kiss от 09-10-2014, 19:30:43 ---итак нашелся lisp, он, как настоящий парень, все меняет славно в реестре, но в перечне папок автокада пути не меняются
--- Конец цитаты ---
Значит не так меняет. Показывай код.
Этот работает:

--- Код - Auto/Visual Lisp [Выбрать] ---(defun С:Change_TemplatePath( / newdir acadObj currTemplateDWGPath preferences)    (vl-load-com)    (setq acadObj (vlax-get-acad-object))    (setq preferences (vla-get-Preferences acadObj))    (setq currTemplateDWGPath (vla-get-TemplateDwgPath (vla-get-Files preferences)))    (princ (strcat "\nСейчас путь к папке с шаблонами: " currTemplateDWGPath))    ;; Меняем значение пути к папке шаблонов    (if (and (setq newdir (getstring T "\nУкажите новый путь к папке с шаблонами: ")) (/= newdir "")) (progn     (vla-put-TemplateDwgPath (vla-get-Files preferences) newdir)    ))    (princ))

Peacemaker_kiss:
У меня совсем другой код, представляю на круг общественности

--- Код - Auto/Visual Lisp [Выбрать] ---(defun aiku_settemplatepath (/ x00)(vl-registry-write (setq x00 (strcat (setq x00 (strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\profiles\\"))(vl-registry-read x00)"\\General"))"TemplatePath"  "\\\\192.168.1.201\\projects\\!ШАБЛОНЫ\\Сетевые настройки Autocad")(princ))
Александру спасибо за решение, не ожидал что и такое можно при помощи vla-put? странно, что когда смотрел методы для сессии автокада и для текущего документа не увидел возможности работы с параметрами шаблонов, воистину, век живи-век учись

Алексей Кулик:
Вносить изменения в реестр из-под AutoCAD достаточно плохая идея: далеко не всегда данные читаются из реестра все время. Нередко бывает, что AutoCAD при старте читает данные, запоминает, а при корректном завершении перезаписывает имеющимися в памяти.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии