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

ADN Club => Inventor API => Тема начата: R.I.Chernov от 17-09-2015, 10:29:20

Название: Подключение библиотек типов в C#.
Отправлено: R.I.Chernov от 17-09-2015, 10:29:20
Доброго времени суток, уважаемые форумчане! Помогите пожалуйста разобраться с таким вот вопросом:
При создании нового "решения" (прошу прощения если кривословлю - в терминах не силен еще), подключаю в ссылки две библиотеки типов: "Autodesk Inventor Object Library" и "Autodesk Inventor's Apprentice Object Library". Где-то подсмотрел, что нужны обе,но вот стал сомневаться так ли это. Зачем нужна вторая (Apprentice) понять не могу, но вот ее подключение (добавление в using) приводит к тому, что я вынужден всегда задавать типы с использованием слова Inventor. Вроде бы можно было бы его опускать, но многие объекты существуют в обоих этих библиотеках, в связи с чем программа "ругается" на "неявную ссылку" между этими двумя библиотеками.

Не могли бы вы пояснить, нужна ли эта "Autodesk Inventor's Apprentice Object Library" и, если да, то для чего?
Такой же вопрос у меня появляется насчет библиотеки "Inventor Utilities Library - Non Public", которую также есть возможность подключить.
И наконец, если можно, просветите пожалуйста, за что отвечает свойство библиотеки "Внедрить типы взаимодействия", и для чего его значение надо ставить False?
Название: Re: Подключение библиотек типов в C#.
Отправлено: Александр Ривилис от 17-09-2015, 13:00:13
Где-то подсмотрел, что нужны обе,но вот стал сомневаться так ли это.
Если не подключаешь (не добавляешь в References) и не ругается на её отсутствие, то всё в порядке. Кстати, не путай подключение и using. using лишь позволяет не писать полное квалифицированное имя.
По поводу подключение - подключай только те библиотеки, которые реально используются в коде. Не нужно добавлять лишние зависимости.
И наконец, если можно, просветите пожалуйста, за что отвечает свойство библиотеки "Внедрить типы взаимодействия", и для чего его значение надо ставить False?
Это тебе нужно почитать документацию: https://msdn.microsoft.com/ru-ru/library/538aes2a%28v=vs.110%29.aspx
false - для того чтобы использовались сборки из самого Inventor.
Название: Re: Подключение библиотек типов в C#.
Отправлено: mikazakov от 17-09-2015, 19:14:25
подключаю в ссылки две библиотеки типов: "Autodesk Inventor Object Library" и "Autodesk Inventor's Apprentice Object Library"
Apprentice-это очень облегченная обрезанная объектная модель Инвентора, в нем в основном работа со свойствами файлов моделей и чертежей, ну и ссылки на другие файлы тоже можно обрабатывать. Apprentice нужен если делается документооборот и на компьютере нужно обрабатывать файлы инвентора без самого инвентора. Инвентор же денег стоит, а Apprentice бесплатно устанавливаешь и работаешь с базой данных. Дизайн Ассистент похоже что на Apprentice сделан. Можно Apprentice юзать для редактирования свойств файла для тяжелых сборок, потому как Apprentice грузит в память только маленькую часть сборки, без всей кучи входящих в сборку файлов.
Так что вот так, если вышеописанные задачи не нужны, то Apprentice пока не нужно использовать.
А вот как пишет Александр Ривилис, то свойство ссылки на Инвентор
"внедрять типы взаимодействия=false"
иначе инвентор может сильно глючит, я об этом кстати в каждом мануале акцентирую внимание.
Внедрение типов в DLL подразумевает, что Инвенторовскую библиотеку можно было бы не устанавливать на другом компе.
Но там где есть инвентор она и так будет установлена. Но т.к. Инвентор это не поддерживает значит FALSE
Название: Re: Подключение библиотек типов в C#.
Отправлено: R.I.Chernov от 17-09-2015, 19:42:03
Михаил и Александр, спасибо за Ваши ответы!