Сообщество программистов Autodesk в СНГ
ADN Club => Revit API => Тема начата: Ksarrik от 28-11-2018, 18:01:16
-
Добрый День уважаемые разработчики. Интересует следующий вопрос по ссылкам на библиотеки RevitAPI.dll и RevitAPIUI.dll. Я, как и написано в рекомендациях, устанавливаю свойство копировать сборки локально в false. Вопрос следующий, когда я создаю ссылки на сборки RevitAPI.dll и RevitAPIUI.dll я указываю путь к библиотекам, как они расположены по конкретному пути - на МОЕМ компьютере. Будет ли работать плагин, если на компьютере пользователя revit установлен в другой папке, у него же пути к сборкам другие? Насколько я понял сборки RevitAPI.dll и RevitAPIUI.dll не устанавливаются в глобальный кэш сборок (GAC), но заметил, что плагин все равно работает даже если путь к сборкам неактуален, например плагин ссылающийся на компьютере на сборки revit 2017, если плагин установить на revit 2018 (без установленного Revit 2017), оставив в плагине старые пути к сборкам (на revit 2017), плагин нормально работает на revit 2018, хоть по идее не должен работать, так как пути неактуальны. Прошу пояснить как это возможно и почему работает плагин ссылающийся на сборки RevitAPI.dll и RevitAPIUI.dll по устаревшим путям??? Получается я могу сделать плагин под одну версию, например 2017, и он нормально будет работать на всех более поздних версиях Revit?? Или все таки надо делать отдельную версию плагина под каждую версию revit?
-
Без разницы где установлен Ревит. А глобальный кэш сборок вообще тут не участвует ))
Все просто - сам Ревит во время загрузки грузит все свои библиотеки, включая и RevitAPI.dll и RevitAPIUI.dll. И когда ваш плагин загружается в Ревит, то он загружается в домен Ревита, в котором уже инициализировано все остальное. Это если объяснять не умными словами :D Умными словами не очень умею
-
Получается я могу сделать плагин под одну версию, например 2017, и он нормально будет работать на всех более поздних версиях Revit?? Или все таки надо делать отдельную версию плагина под каждую версию revit?
Касаемо Ревита - очень желательно делать разные сборки, так как АПИ у Ревита часто меняется. Вы можете заюзать метод из либы от 2015 Ревита, который в 2017 уже будет исключен из АПИ. Ваш плагин конечно-же рухнет
-
Спасибо!