Microsoft (R) .NET Framework Type Library to Assembly Converter 4.0.30319.17929не подскажите, что за ошибки?
Copyright (C) Microsoft Corporation. All rights reserved.
TlbImp : warning TI3002 : Importing a type library into a platform agnostic asse
mbly. This can cause errors if the type library is not truly platform agnostic.
TlbImp : warning TI3016 : The type library importer could not convert the signat
ure for the member 'AGMCPP.4.0.tagCALPOLESTR.pElems'.
TlbImp : warning TI3016 : The type library importer could not convert the signat
ure for the member 'AGMCPP.4.0.tagCADWORD.pElems'.
TlbImp : Type library imported to C:\ObjectARX 2012\MAGIMCPropertiesPalette_r18x
64.dll
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin>tlbimp "C:\Program FilesЯ пока в тупике... :(
\MagiCAD\MAGIMCPropertiesPalette_r18x64.arx" /out:"C:\ObjectARX 2012\AGMCPP.3.5.
dll" /namespace:AGMCPP.3.5 /machine:x64
Microsoft (R) .NET Framework Type Library to Assembly Converter 3.5.30729.1
Copyright (C) Microsoft Corporation. All rights reserved.
TlbImp : warning TI0000 : Программе импорта библиотек типов не удалось преобразо
вать подпись для члена "tagCALPOLESTR.pElems".
TlbImp : warning TI0000 : Программе импорта библиотек типов не удалось преобразо
вать подпись для члена "tagCADWORD.pElems".
TlbImp : error TI0000 : System.SystemException - Модуль импорта библиотеки типов
обнаружил ошибку при проверке типа. Попытайтесь провести импорт без членов клас
са. : System.MissingMethodException - Метод не найден: "System.String AGMCPP.3.5
.IMCDuct.get_ObjectID()".
но в коде из нет, не знаю что делать...Соответствующие using (в VB кажется import) в файл кода добавлены?
Imports Autodesk.AutoCAD.Interop
Imports Autodesk.AutoCAD.Interop.Common
Imports AGMCPP
Ну и не забыть (желательно в методе Initialize) убедится, что этот arx-файл загружен, а если не загружен, то загрузить его.Если я правильно понял автора, то он спрашивает, почему у него для спёртых им библиотек не работает IntelliSense в редакторе кода, несмотря на то, что библиотека подключена и нэймспейс расшарен (согласно его утверждению).
Imports AGMCPPМожет
Если я правильно понял автора, то он спрашивает, почему у него для спёртых им библиотек не работает IntelliSense в редакторе кода.Ну это я не подскажу. Я ему не об этом писал, а о том, что для того чтобы использовать классы и методы из этого ARX-файла он должен быть загружен в AutoCAD.
Если я правильно понял автора, то он спрашивает, почему у него для спёртых им библиотек не работает IntelliSense в редакторе кода, несмотря на то, что библиотека подключена и нэймспейс расшарен (согласно егоспасибо, хоть научусь правильным терминам... да, говоря по-простому, нет подсказки после точки...
МожетУ меня так "высвечивается"Код - vb.net [Выбрать]?
Imports AGMCPP.4.0
Попробуй вставить:подчеркивает и ругается...Код - vb.net [Выбрать]
Imports MAGIMCPropertiesPalette_r18x64
Попробуй вставить:Не думаю, что указание имени сборки вместо полного имени пространства имён, поможет делу :). Очень странно, что у него имена вложенных пространство имён содержит лишь цифры... Насколько мне известно, имена должны начинаться с букв... Во всяком случае C# на подобное "чудо" матерится.Код - vb.net [Выбрать]
Imports MAGIMCPropertiesPalette_r18x64
/namespace:AGMCPP.3.5попробуй заменить например на это (в командной строке, когда используешь tlbimp):
/namespace:AGMCPP
т.к. под автокад отладка тяжковата..в чём тяжковата?
VB проект я делаю пока под WinForms, т.к. под автокад отладка тяжковата...Как ты собираешься заниматься отладкой, если это этот arx-файл (как и добавленные тобой сборки) можно использовать только внутри AutoCAD?
автор, а что это за хрень?Да, правда "хрень", убрал цифры и все заработало, появились подсказки...
запускаю компилятор, запускается автокад, потом netoad-ом подгружаю dll.т.к. под автокад отладка тяжковата..в чём тяжковата?
я пишу оболочку, обработчик данных, иногда подсовываю данные искусственно, потом уже лезу в автокад... или импортирую данные из библиотек, отдельнолежащих (выбор примитивов, построение, вывод данных и пр.)VB проект я делаю пока под WinForms, т.к. под автокад отладка тяжковата...Как ты собираешься заниматься отладкой, если это этот arx-файл (как и добавленные тобой сборки) можно использовать только внутри AutoCAD?
Да, правда "хрень", убрал цифры и все заработало, появились подсказки...Странно, что tlbimp пропустил этот откровенный мусор... Должен был ругнуться на недопустимость подобного имени (имхо).
если есть другой способ, оч. буду благодарен за подсказку...Нужно понимать, что существуют два понятия: тестирование и собственно отладка. Отладка, это когда ты через брэйкпоинты смотришь текущее состояние своего плагина, остановленное в процессе его работы. А чтобы не заморачиваться этим постоянно, как раз и пишутся тесты, используя для этого специализированные фрэймворки. Касательно плагинов AutoCAD для этого можно использовать фрэймворк Gallio. Наличие тестов позволяет быстро проверить весь твой код, либо лишь конкретную, интересующую его часть.
для меня это сложновато"сложновато" сидеть и беспрерывно, судорожно стучать по левой кнопке мыши, переходя с одного брэйкпоинта на другой и формируя своему пальцу синдром дятла. Создавать тесты достаточно просто, было бы желание. Информации на эту тему в интернете море, в т.ч. и примеров. Но, как говорится: хозяин - барин. :)
Андрей, а можно тебя попросить написать небольшое пособие по тестам, применительно к автокаду.В принципе, у меня есть этот материал, нужно только оформить его нормально... Как оформлю - в блоге размещу (постараюсь на след. неделе).
Так сказать с чего начать и как это делать правильно, этакий quick start.
как при отладке в автокаде отстановить другую dll, которая мешает запускаться отладчику.Это что-то новенькое. Какая dll в AutoCAD может помешать запустится отладчику? Может быть имеется в виду исправление в коде, повторная компиляция и запуск отладчика? Тогда только перезапуск AutoCAD. Все остальные варианты или вообще не работают, или работают очень плохо. Причина - в AutoCAD нельзя выгрузить .NET-сборку. Обсуждалось много раз. В частности и в блоге Андрея. Воспользуйся поиском.
пока я удаляю/переименовываю эту dll.
Андрей Бушман, пособие ждем :)После того, как доделаю текущую работу - она в приоритете и заняла больше времени, чем изначально предполагалось.