Сообщество программистов Autodesk в СНГ

ADN Club => ObjectARX => Тема начата: Debalance от 21-11-2019, 21:21:27

Название: Странное поведение acedSSSetFirst
Отправлено: Debalance от 21-11-2019, 21:21:27
После выполнения конструкции acedSSSetFirst(NULL, NULL) перестаёт работать Quick Properties Palette. Кто-нибудь сталкивался с подобной "мулькой"?
Название: Re: Странное поведение acedSSSetFirst
Отправлено: Александр Ривилис от 21-11-2019, 21:44:37
После выполнения конструкции acedSSSetFirst(NULL, NULL) перестаёт работать Quick Properties Palette. Кто-нибудь сталкивался с подобной "мулькой"?
А точнее? Версия AutoCAD и наличие обновлений? На чистом профиле (без дополнений) та же история?
Можешь записать видео демонстрирующее такое поведение?
Название: Re: Странное поведение acedSSSetFirst
Отправлено: Александр Ривилис от 21-11-2019, 22:33:22
Проверил такой код в AutoCAD 2020.1.2:
Код - C++ [Выбрать]
  1.   // Команда для проверки acedSSSetFirst - обязательно должна
  2.   // быть с флагами ACRX_CMD_USEPICKSET | ACRX_CMD_REDRAW
  3.   static void ADSKMyGroupTestPickFirst() {
  4.     acedSSSetFirst(NULL, NULL);
  5.   }
Результат:


Что не так?
Название: Re: Странное поведение acedSSSetFirst
Отправлено: Debalance от 21-11-2019, 22:43:44
Что не так?
Всё так. Сейчас тоже проверил в простом коде - всё норм. У меня в программе она выполняется в потоке - возможно в этом проблема...
Название: Re: Странное поведение acedSSSetFirst
Отправлено: Александр Ривилис от 21-11-2019, 22:45:37
У меня в программе она выполняется в потоке - возможно в этом проблема...
Безусловно. И ты прекрасно знаешь, что весь код ObjectARX должен выполнятся в одном главном потоке.
Название: Re: Странное поведение acedSSSetFirst
Отправлено: Debalance от 21-11-2019, 22:53:03
И ты прекрасно знаешь
Да знаю :). Риск есть, но всегда хочется рутинные вычисления разместить в отдельном потоке. Сейчас вынес инструкцию в основное тело программы - всё работает.