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

ADN Club => Revit API => Тема начата: Вильдар от 17-06-2019, 18:57:37

Название: Переменные путей в теге Assembly в Addin файле?
Отправлено: Вильдар от 17-06-2019, 18:57:37
Привет всем  ;)
Как можно использовать переменные служебных путей - папка пользователя интересует - %appdata%.
Код - XML [Выбрать]
  1. <AddIn Type="Application">
  2. <Name>Test</Name>
  3. <Assembly>%appdata%\Test.dll</Assembly>
  4. <AddInId>de2fbac9-13cb-4ed1-9ec1-c2af504f1f0a</AddInId>
  5. <FullClassName>Test.ExternalApplication</FullClassName>
  6. <VendorId>Test</VendorId>
  7. <VendorDescription>Test</VendorDescription>
  8. </AddIn>
Тесвтовый проект хорошо бы сделать. Может позже  :-[
Название: Re: Переменные путей в теге Assembly в Addin файле?
Отправлено: Александр Игнатович от 18-06-2019, 10:40:43
Неа, так не получится. Но есть варианты.

1) В addin можно указывать относительные пути, сам addin у Вас, скорее всего, в %AppData%\Roaming\Autodesk\Revit\Addins\20<версия Revit> ..\..\..\..\Test.dll должно сработать
2) Собрать инсталятор, который будет генерировать файл addin (например, с помощью RevitAddInUtility.dll, поставляемой вместе с Revit) и там уже прописывать абсолютные пути
Название: Re: Переменные путей в теге Assembly в Addin файле?
Отправлено: Вильдар от 18-06-2019, 10:55:35
Про RevitAddInUtility не знал. Глянул его - проще самому xml сгенерировать ).
В общем понятно - что переменные в аддин файле использовать нельзя.
Спасибо!
Название: Re: Переменные путей в теге Assembly в Addin файле?
Отправлено: Александр Игнатович от 18-06-2019, 11:03:33
Посмотрите еще тему с app.bundle-ами, они по универсальному рецепту для многих Autodesk-овских приложений готовятся, в частности, это требование при разработке для магазина приложений Autodesk-овского. Лежат в C:\ProgramData\Autodesk\ApplicationPlugins для всех пользователей и в AppData\Roaming\Autodesk\ApplicationPlugins для текущего. Складываете все файлы внутри бандла, пути указываете относительные и проблем уже и нет