Как обновить внешнеюю ссылку в неактивном документе?
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как обновить внешнеюю ссылку в неактивном документе?

Как обновить внешнеюю ссылку в неактивном документе?

Ответ
Поиск в этой теме
Непрочитано 09.10.2015, 12:35 #1
Как обновить внешнеюю ссылку в неактивном документе?
kurstep
 
Регистрация: 27.01.2012
Сообщений: 242

Здравствуйте. Пытаюсь реализовать такой код для смены пути внешней ссылки во многих файлах:
Код:
[Выделить все]
 (setq doc1 (vla-Open (vla-get-Documents (vlax-get-acad-object))
		     "D:\\Рабочий стол\\Мои программы\\Панели\\Основа\\Razrez.dwg" :vlax-true " "))
(vlax-put-property  (setq UnSil (vla-Item (vla-get-Blocks doc1 ) "Панель")) "Path" ReferenceStr)
                                   (vla-Reload UnSil)  
Но при выполнении
Код:
[Выделить все]
 (vla-Reload UnSil)
Выдает ошибку
Код:
[Выделить все]
Ошибка Automation. Отсутствует описание.
При выполнении тойже операции в но при авктивном документе ( setq doc1 (vla-get-ActiveDocument(vlax-get-acad-object)))
все работает и обновляет. Подскажите пожалуйста в чем причина и как это можно избежать, можно ли другим способом поменять путь ссылки програмно?
Просмотров: 3052
 
Непрочитано 09.10.2015, 13:14
#2
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,171


либо принудительно переключать на нужный документ через vla-put-activedocument (выглядит некрасиво), либо через DBX
kp+ вне форума  
 
Непрочитано 09.10.2015, 13:17
1 | #3
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


А зачем обновлять ссылку в неоткрытом документе? При открытии ссылка все равно обновится до последнего сохраненного состояния.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.10.2015, 13:18
1 | #4
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,171


То просто вопрос задан слегка некорректно. На самом деле автору необходимо
Цитата:
Сообщение от kurstep Посмотреть сообщение
поменять путь ссылки програмно
kp+ вне форума  
 
Автор темы   Непрочитано 09.10.2015, 13:29
#5
kurstep


 
Регистрация: 27.01.2012
Сообщений: 242


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

Последний раз редактировалось kurstep, 09.10.2015 в 13:36.
kurstep вне форума  
 
Непрочитано 09.10.2015, 15:32
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Ну заменить пути - и на этом успокоиться. Правда, если путь будет относительный, то лучше сначала файл пересохранить (без закрытия), а потом уже назначать. Зачем делать регенерацию - я все равно не понимаю.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 10.10.2015, 12:43
#7
kurstep


 
Регистрация: 27.01.2012
Сообщений: 242


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Ну заменить пути - и на этом успокоиться. Правда, если путь будет относительный, то лучше сначала файл пересохранить (без закрытия), а потом уже назначать. Зачем делать регенерацию - я все равно не понимаю.
Если просто поменять путь и сохранить файл при новом его открытии у меня почемуто внешние ссылки требуют обновления и даже если их вручную обновить и пересохранить файл при новом открытии всегда требуется обновления. Может у меня какаято системная переменная сбилась?....

----- добавлено через ~27 мин. -----
Очень странно... но когда тип внешней ссылки "вставленная" ссылка всегда требует обновления, а когда "наложенная" обновляется сама

----- добавлено через ~33 мин. -----
А есть ли возможность автоматического обновления "вставленных" внешних ссылок?
kurstep вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как обновить внешнеюю ссылку в неактивном документе?



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Autolisp создать в неактивном документе лист по шаблону protorgovec LISP 5 09.03.2016 10:50
Как поменять системную переменную в неактивном документе kurstep Программирование 2 08.10.2015 14:42
Autolisp работа в неактивном документе protorgovec LISP 4 04.08.2015 10:23
Выполнение функции vla-put-textstring в неактивном документе AVD Программирование 11 17.12.2003 08:30