Исходные данныеЗдесь временно открыл для общего доступа
демонстрационное решение, состоящее из двух проектов: первый (
Attach-CUIX) работает с CUIX-файлами, используя для этого
AcCUI.dll от AutoCAD 2017, а второй (
Attach-CUI) - для работы со старыми CUI-файлами, используя
AcCUI.dll от AutoCAD 2009. Код подробно комментирован, скрин с результатом консольного вывода присутствует (для ленивых).
В обозначенном примере я использую
AcCUI.dll из консольного приложения (т.е. это не расширение AutoCAD), но этот же код без каких-либо проблем можно использовать и в составе расширений AutoCAD (ежели кто-то захочет). В обоих проектах используется удалённая отладка.
Описание проблемыКод проекта
Attach-CUIX успешно компилируется и работает. Код проекта
Attach-CUI пока не компилируется в виду того, что API файла
AcCUI.dll в AutoCAD 2009 существенно отличается от API одноимённого файла в AutoCAD 2017. Все проблемные места инкапсулированы мною в файле
CuiOperations.cs проекта
Attach-CUI.
Поскольку уже поздний вечер и голова почти перестала соображать, то с ходу внести нужные правки в обозначенный выше файл не получилось - нужно будет на свежую голову сесть за решение этих проблем.
Под спойлером текст ошибок, выдаваемых компилятором для проекта
Attach-CUI.
Извините, вам запрещён просмотр содержимого спойлеров.
Ежели кто-то ранее уже для себя разбирался с редактированием CUI-файлов в старых версиях AutoCAD и знает, какие правки нужно внести, то буду признателен за эту информацию.