Сообщество программистов Autodesk в СНГ
		ADN Club => AutoCAD .NET API => Тема начата: avc от 16-09-2016, 23:30:58
		
			
			- 
				Назначаю текущий слой через Database.Clayer внутри обработчика doc_CommandWillStart. Обычно все работает хорошо, слой меняется. Но иногда, редко но регулярно, происходит ошибка eInvalidInput. Нарочно такую ситуацию создать не получается, поэтому отладка невозможна. Что можно предпринять? Может проверить какие-то свойства текущего чертежа, какие-то блокировки? Может в нем что-то происходит не вовремя, что не позволяет менять текущий слой? 
 
- 
				1. Надеюсь, что слой существует и он может быть назначен текущим.
 2. Надеюсь ты блокируешь документ перед изменением текущего слоя.
- 
				Наличие слоя проверяю. А вот блокировки не делал. Стыдно признаться, но спросить тут было быстрее, чем эксперементировать и месяц ждать - будут ли хоть у кого-нибудь сбои. Кроме того вообще опасаюсь ставить блокировку в обработчике CommandWillStart. И я не трогаю никаких объектов чертежа, не создаю новых. Где можно почитать про блокировку документа? Что они на самом деле блокируют, когда надо блокировать и когда нельзя?
			
- 
				И я не трогаю никаких объектов чертежа, не создаю новых. Но модифицируешь базу (Database)
 Где можно почитать про блокировку документа? Autodesk ObjectARX for AutoCAD Developer's Guide 20XX > Advanced Topics > The Multiple Document Interface > MDI Overview > Document Locking.
 Если в двух словах, то если будешь модифицировать документ (базу) любым способом вне lisp-функции или модальной команды, то документ нужно блокировать как минимум на время модификации базы.
 
- 
				Autodesk ObjectARX for AutoCAD Developer's Guide 20XX > Advanced Topics Честно потратил 2 часа на поиск указанной вами документации. Не могу найти. Сдаюсь. В комплекте с ObjectARX идет документация в которой только 2 раздела: Native ObjectARX (C++) Reference Guide и Managed .NET Reference Guide. Раздела Advanced Topics нет. Найти документацию онлайн на сайте Автодеск невозможно, но нашел на форуме ссылку http://help.autodesk.com/view/ACD/2017/ENU. Там только .Net.  Ничего про ARX вообще и Advanced тем более. У меня ощущение, что это секретная информация. Или может платная?
 
 Но модифицируешь базу (Database) Правильно я догадываюсь, что не только изменения чертежа, считаются изменением базы, но и все настройки хранимые в DWG ? Т.о. при изменениях системных переменных, например, тоже ТРЕБУЕТСЯ лочить документ, да?
 
 
- 
				Правильно я догадываюсь, что не только изменения чертежа, считаются изменением базы, но и все настройки хранимые в DWG ? Т.о. при изменениях системных переменных, например, тоже ТРЕБУЕТСЯ лочить документ, да?
 
 Абсолютно правильно. Если системная переменная хранится в чертеже, то тоже нужно "лочить"В комплекте с ObjectARX идет документация в которой только 2 раздела: Native ObjectARX (C++) Reference Guide и Managed .NET Reference Guide. Какая-то она у тебя не полная (да разделы не так называются):
 
 (https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F61897%2F7842324.7%2F0_138157_13b27390_orig.png&hash=0e94f8c41bedcadb56b18a5896b3f587)
 
 
 
- 
				Какая-то она у тебя не полная Одназначно! В ARX2017/docs лежит msi, который куда-то что-то прописывает, но найти куда - я не смог. Единственное что нашел, что в VS появился раздел справки:
 
 (https://s10.postimg.org/xiaivcdr9/image.png) (https://postimg.org/image/xiaivcdr9/)
 
 Поиск по этой справке ничего не дает. Я конечно вижу на вашем фото тот раздел, который меня интересовал. Но хотелось бы все-таки докопаться. В онлайне не опубликован полный guide?
 
- 
				Аааааааааааааааааа! Ты не в курсе про существование chm-файлов???
 
 (https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F100036%2F7842324.7%2F0_138160_4947f181_orig.png&hash=73a8aa3ae77b52c435ff37f6e5339b3e)
 
 
- 
				Эх, я даже открывал пару файлов из этой папки, но перебрать ВСЕ не догадался :) Думал их инсталлятор все внедрит в VS. К тому же на моем компе отображается только дерево разделов, а самих статей нет, пустое белое окошко. Я подумал, что это просто заголовки и стал искать контент где-то в других местах. Сейчас на другой системе посмотрел - там правда есть содержание. Наверно что-то с версиями эксплорера у меня. Меню "Параметры/Свойства браузера" вообще не открывается.
 Спасибо!
- 
				SumatraPDF прекрасно открывает эти CHM. И они и вправду не пустые! Ура! :)
			
- 
				SumatraPDF прекрасно открывает эти CHM. Вообще-то они открываются самим Windows, так как являются элементами встроенной системы помощи: https://ru.wikipedia.org/wiki/HTMLHelp
- 
				Да я в курсе, но ДОЛЖНЫ открываться и ОТКРЫВАЮТСЯ - это не одно и то же. Я сейчас проверил на 5и компьютерах - на 2х из них открываться только оглавления, вместо содержимого - чистый белый фон. И о таких случаях полно сообщений в интернете. Я так понимаю, у этого компонента под капотом IE и это печально. А Суматра открывает без танцев с бубном. Поэтому я и написал тут о ней - чтоб другие не мучились и не искали, как я, обходные пути.
			
- 
				Я так понимаю, у этого компонента под капотом IE и это печально Да. И соответственно его работа определяется Свойствами обозревателя. Плюс еще возможен вариант, когда chm-файлы помечены, как скаченные из сети и их следует разблокировать иначе как раз активное содержимое не видно.
- 
				Меню "Параметры/Свойства браузера" вообще не открывается. Компьютер домашний или в рабочей сети, когда админ мог так урезать доступ по своему разумению?
- 
				chm-файлы помечены, как скаченные из сети и их следует разблокировать  Да, да, та же самая пакость, которая, мешает работе наших плагинов.
 Но у меня не тот случай. IE запускается 2 минуты, может я сам что-то ему заблокировал на уровне рабочей сетки в файерволе или групповых политиках... Черт с ним, не буду дальше захламлять топик, а то это уже третья тема получается :)