А на .NET есть аналог? Если нет, то можно ли как-то из .NET использовать этот инструмент?Шесть лет назад я уже отвечал на этот вопрос: https://forums.autodesk.com/t5/net/can-t-find-modelessoperationwill-start-event-in-dot-net/td-p/3444281
Мда уж... Сложный костыль. Буду думать как по-другому сделать.Как вариант можно проверять:
[Doc Mgr Event] : Document Lock Mode Will Change : Чертеж1.dwg
Global Command Name :
Current Mode : NotLocked
My Current Mode : NotLocked
My New Mode : ProtectedAutoWrite
[Doc Mgr Event] : Document Lock Mode Changed : Чертеж1.dwg
Global Command Name :
Current Mode : ProtectedAutoWrite
My Current Mode : NotLocked
My Previous Mode : ProtectedAutoWrite
Команда:
[Doc Mgr Event] : Document Lock Mode Will Change : Чертеж1.dwg
Global Command Name : PARTIALREGEN
Current Mode : NotLocked
My Current Mode : NotLocked
My New Mode : Write
[Doc Mgr Event] : Document Lock Mode Will Change : Чертеж1.dwg
Global Command Name : #
Current Mode : AutoWrite
My Current Mode : AutoWrite
My New Mode : NotLocked
[Doc Mgr Event] : Document Lock Mode Changed : Чертеж1.dwg
Global Command Name : #
Current Mode : NotLocked
My Current Mode : AutoWrite
My Previous Mode : NotLocked
[Doc Mgr Event] : Document Lock Mode Changed : Чертеж1.dwg
Global Command Name : PARTIALREGEN
Current Mode : Write
My Current Mode : NotLocked
My Previous Mode : Write
[Doc Mgr Event] : Document Lock Mode Will Change : Чертеж1.dwg
Global Command Name : #PARTIALREGEN
Current Mode : Write
My Current Mode : Write
My New Mode : NotLocked
[Doc Mgr Event] : Document Lock Mode Changed : Чертеж1.dwg
Global Command Name : #PARTIALREGEN
Current Mode : NotLocked
My Current Mode : Write
My Previous Mode : NotLocked
Тоже как-то громоздко для проверки.
Так ведь это как раз то, что нужно! Спасибо! :)Надо будет опубликовать как статью. Я вижу что это должно работать как минимум с AutoCAD 2012.
Можно в эту же добавить - она уже давно должна быть проиндексирована всеми поисковиками.Неа. Эта статья - перевод ADN-овской. А та чисто моё творчество. :-) Ничего подобного в интернете не нашел. Перекрестные ссылки конечно сделаю.
Application does not support just-in-time (JIT)
debugging. See the end of this message for details.
************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
at Autodesk.AutoCAD.Internal.PropertyInspector.PropertyInspectorEventManager.FirepropertyDialogInvoked(IUnknown* pProp, tagVARIANT* pValue, IntPtr pParent, Int32 mode)
at Autodesk.AutoCAD.Internal.PropertyInspector.AcEdPropertyInspectorReactorImpl.propertyDialogInvoked(AcEdPropertyInspectorReactorImpl* , IUnknown* pProp, tagVARIANT* pValue, HWND__* hParent, Int32 mode)
Рано обрадовался. :( Обнаружены падения автокада. Пользуюсь Autocad MEP 2019.Код обработчика события?
Код обработчика события?Пустой. Туда даже не доходит. Код подписки прям как у вас, только за исключением, что я подписываюсь при инициализации в IExtensionApplication
А если подписаться на propertyDialogInvoked и propertyDialogDismissed ?Теперь работают диалоговые свойства, но падение происходит на простых.
В общем вроде нормально, если есть все 4 подписки.Вот!
Я даже не думал что от этого может что то зависеть.Видимо не контролируют была подписка или нет. Ну и возникает исключение. Нужно будет дополнить статью.