Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: acad.exe
Версия приложения: 25.0.204.0
Отметка времени приложения: 516ce058
Имя модуля с ошибкой: heidi11.dll
Версия модуля с ошибкой: 11.0.55.0
Отметка времени модуля с ошибкой: 4f3088ec
Код исключения: c000041d
Смещение исключения: 00000000000319c5
Версия ОС: 6.1.7601.2.1.0.256.48
Код языка: 1049
Дополнительные сведения 1: fb82
Дополнительные сведения 2: fb82fab4641f8439d656a778ac384a64
Дополнительные сведения 3: a2f4
Дополнительные сведения 4: a2f482d8614c21cbae37285e17491eff
Что и в каком месте я делаю не так? К сожалению, самостоятельно мозгов не хватает разобраться.
Да, именно. Предварительно вызывал настройку, на оба текстовых стиля (Standard, Annonative) устанавливал Arial.ttf.Т.е. в принципе код у тебя ничего не делал, т.к. шрифт не менялся?
Могу привести скриншоты, если они помогут.
Я планировал использовать аналогичный код в реакторах.??? И что же это будет?
И что же это будет?Это будет дикий микс лиспа (на котором работает по нескольку человек) и NET (который пока что использую только я). Пару своих проектов постепенно пытаюсь перевести на NET. А останавливать их мне никто не даст. Вот и приходится работать "кусками" ;) Ничего, "курочка по зернышку" ;)
Это будет дикий микс лиспа...Я вообще-то не об этом, а об изменении шрифта в текстовом стиле в реакторе, да еще и с запуском REGEN...
P.S. Александр, а насчет кодов CharacterSet и PitchAndFamily - где еще можно найти информацию? А то имеющаяся как-то вызывает у меня сомнения в ее корректности.Ну вообще-то это стандартные параметры при создании шрифта в Windows: https://docs.microsoft.com/en-us/windows/desktop/api/wingdi/nf-wingdi-createfonta
если после UpdateTextFont вызывать окно настроек текстовых стилей, то ACAD тупо валится:В коде нет DocumentLock, возможно он необходим, если меняется отображение всех объектов через стиль?
acNewFont = new Autodesk.AutoCAD.GraphicsInterface.FontDescriptor("Arial", acFont.Bold, acFont.Italic, acFont.CharacterSet, acFont.PitchAndFamily);
В коде нет DocumentLock, возможно он необходим, если меняется отображение всех объектов через стиль?Для модальной команды он не обязателен (модальная команда сама выполняет блокировку документа). А вот в реакторе точно будет нужен.
Это просто кусок стандартизации - пользователи отказываются работать в едином ключе добровольно, вот и приходится извращаться...Раз есть возможность загрузить этот код на ПК пользователя, значит, есть к нему админский доступ и какой-то пакет приложений устанавливается. А значит, ничто не мешает добавить в этот пакет файл-шаблон DWG или DWT с уже настроенным стилем и при необходимости просто копировать стиль в чертёж из этого шаблона. Мне кажется, это надёжнее и проще, нет?
просто копировать стиль в чертёж из этого шаблона. Мне кажется, это надёжнее и проще, нет?Предполагаю, что не подойдет, т.к. в коде меняется текущий стиль, т.е. имя заранее неизвестно.
Я не настаиваю, просто предложилИ правильно предложил. Вообще общие рекомендации поменьше свойств зашивать в код, а выносить в файлы настроек, шаблонов и т.д.
Задача состоит в том, чтобы настройки стиля были неизменны со стороны пользователя.Звучит страшновато. По идее нужно проверить и изменить стили, а потом начать перехватывать и прерывать события, переменные и команды. И так-то AutoCAD периодически вылетает и пользователи жалуются, не будет ли хуже?
Но стили уж хочется самостоятельно сделатьА завтра нужно будет подкорректировать этот стиль и заново компилить программу, обновлять сборки, перезагружать автокад =(