Bundle пакет и AutoCAD 2016. Только через магазин?

Автор Тема: Bundle пакет и AutoCAD 2016. Только через магазин?  (Прочитано 4519 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Тема содержит сообщение с Решением. Нажмите здесь чтобы посмотреть его.

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2268
  • Карма: 624
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Здравствуйте!
Не получается загрузить приложение с помощью Bundle. Приложение не из магазина, а просто самостоятельно мною размещенное в "%AppData%\Roaming\Autodesk\ApplicationPlugins". В доверенные местоположения я уже пытался добавить и саму папку ApplicationPlugins, и папку с Bundle пакетом внутри (разумеется, с троеточием). Приложение видно через менеджер приложений. Но команда его запуска недоступна. В чем может быть проблема? Или теперь нет возможности запускать свои приложения через Bundle, если они загружены не с магазина?

Онлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 11340
  • Карма: 1468
  • Рыцарь ObjectARX
  • Skype: rivilis
А все ли в порядке с указанием в PackageContents.xml максимальной версии (SeriesMax)?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2268
  • Карма: 624
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Да вроде все как надо сделал. В менеджере приложений оно же отображается. В 2015 версии нормально работает, в 2016 - не хочет.
Код - XML [Выбрать]
  1.     <RuntimeRequirements
  2.      OS="Win64"
  3.      Platform="Civil3D"
  4.      SeriesMin="R20.0"
  5.      SeriesMax="R20.1" />

Оффлайн Doublefish

  • ADN Club
  • ****
  • Сообщений: 288
  • Карма: 10
  • AutoCAD Civil 3D
Если команда работает если её загрузить вручную через netload, то смотреть надо PackageContents.xml.
Если речь едёт про 2016, то надо прописывать сроку с командой типа
Код - XML [Выбрать]
  1. <Command Local="MYCOMMAND" Global="MYCOMMAND" HelpTopic="#MYCOMMAND"/>
иначе в командной строке написано что команда не найдена, хотя при этом dll загрузилась.
До 2016 такой проблемы не было - все команды из dll были видны в командной строке после загрузки dll.

Онлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 11340
  • Карма: 1468
  • Рыцарь ObjectARX
  • Skype: rivilis
хотя при этом dll загрузился.
Вот это Дмитрий Загорулькин нужно проверить в первую очередь.
Впрочем так должно себя вести только если LoadOnCommandInvocation="True", а если LoadOnAutoCADStartup="True", то команды должны восприниматься всегда.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Отмечено как Решение Дмитрий Загорулькин 20-04-2015, 15:50:40

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2268
  • Карма: 624
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Прошу прощения, нашел в чем причина. Версии указываются в двух местах - глобально и по компонентам. В разделе компонентов изменил, а в глобальном разделе - нет. Все работает хорошо :)

Онлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 11340
  • Карма: 1468
  • Рыцарь ObjectARX
  • Skype: rivilis
Отлично. Отметь это как решение. Возможно еще кто-нибудь на это натолкнётся.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Павел55

  • ADN OPEN
  • **
  • Сообщений: 58
  • Карма: 3
А можно образец кода, как это должно выглядеть? Непонятно куда глобально прописывать.

Онлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 11340
  • Карма: 1468
  • Рыцарь ObjectARX
  • Skype: rivilis
А можно образец кода, как это должно выглядеть? Непонятно куда глобально прописывать.
Пример для MGDDBG:
Код - XML [Выбрать]
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <ApplicationPackage SchemaVersion="1.0" AutodeskProduct="AutoCAD" ProductType="Application" Name="DWG MgdDBG" AppVersion="1.0.0" Description="Debugging tools for AutoCAD - MgdDBG" Author="Fenton Webb" Icon="./Contents/Resources/resource/Inspector.jpg" AppNameSpace="adn.exchange.autodesk.com" OnlineDocumentation=" " HelpFile="./Contents/Resources/helpfile.html" ProductCode="{DB35F952-289A-4453-A46D-B424A6FCFDFB}" UpgradeCode="{E5B78003-2D7B-490F-B947-65D804392151}" SupportedLocales="Enu">
  3.   <CompanyDetails Name="Autodesk" Phone=" " Url=" www.autodesk.com" Email=" adn.autodesk.com" />
  4.   <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD|AutoCAD*" SeriesMin="R18.2" SeriesMax="R24.1" />
  5.   <Components Description="AutoCAD 2012">
  6.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R18.2" SeriesMax="R18.2" />
  7.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2012/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  8.   </Components>
  9.   <Components Description="AutoCAD 2013">
  10.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R19.0" SeriesMax="R19.0" />
  11.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2013/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  12.   </Components>
  13.   <Components Description="AutoCAD 2014">
  14.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R19.1" SeriesMax="R19.1" />
  15.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2014/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  16.   </Components>
  17.   <Components Description="AutoCAD 2015">
  18.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R20.0" SeriesMax="R20.0" />
  19.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2015/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  20.   </Components>
  21.   <Components Description="AutoCAD 2016">
  22.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R20.1" SeriesMax="R20.1" />
  23.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2015/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  24.   </Components>
  25.   <Components Description="AutoCAD 2017">
  26.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R21.0" SeriesMax="R21.1" />
  27.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2017/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  28.   </Components>
  29.   <Components Description="AutoCAD 2018">
  30.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R22.0" SeriesMax="R22.1" />
  31.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2018/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  32.   </Components>
  33.   <Components Description="AutoCAD 2019">
  34.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R23.0" SeriesMax="R23.1" />
  35.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2019/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  36.   </Components>
  37.   <Components Description="AutoCAD 2021">
  38.     <RuntimeRequirements OS="Win32|Win64" Platform="AutoCAD*|AutoCAD" SeriesMin="R24.0" SeriesMax="R24.1" />
  39.     <ComponentEntry AppName="DWGMgdDBG" Version="1.0.0" ModuleName="./Contents/Resources/DWGMgdDbgSource/bin/DebugA2021/MgdDbg.dll" AppDescription="Debugging tools for AutoCAD - MgdDBG" LoadOnAutoCADStartup="True" />
  40.   </Components>
  41. </ApplicationPackage>

Т.е. есть  <RuntimeRequirements> общее и для каждой <Components>
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Павел55

  • ADN OPEN
  • **
  • Сообщений: 58
  • Карма: 3
Все равно команда не появилась. Если попытаться загрузить dll вручную выдает такую ошибку:Команда: NETLOAD
Не удалось загрузить сборку. Сведения об ошибке: System.BadImageFormatException: Не удалось загрузить файл или сборку "file:///E:\...PdfConverter.dll" либо одну из их зависимостей. Была сделана попытка загрузить программу, имеющую неверный формат.
Имя файла: 'file:///E:\...PdfConverter.dll'
   в System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   в System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   в System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
   в System.Reflection.Assembly.LoadFrom(String assemblyFile)
   в Autodesk.AutoCAD.Runtime.ExtensionLoader.Load(String fileName)
   в loadmgd()
Предупреждение: регистрация привязки сборок выключена.
Чтобы включить регистрацию ошибок привязки сборок, установите значение параметра реестра [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) в 1.
Примечание. Регистрация ошибок привязки сборок может привести к некоторому снижению производительности.
Чтобы отключить эту функцию, удалите параметр реестра [HKLM\Software\Microsoft\Fusion!EnableLog].
Команда:

Онлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 11340
  • Карма: 1468
  • Рыцарь ObjectARX
  • Skype: rivilis
А что PdfConverter.dll это .NET сборка??? Сомневаюсь. Думаю, что это "native" DLL-файл.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Павел55

  • ADN OPEN
  • **
  • Сообщений: 58
  • Карма: 3
Пока не начал пытаться сделать Wix installer все прекрасно работало.. То есть если взять эту же dll из проекта в котором нет wix installera все нормально загружается.

Онлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 11340
  • Карма: 1468
  • Рыцарь ObjectARX
  • Skype: rivilis
Пока не начал пытаться сделать Wix installer все прекрасно работало.. То есть если взять эту же dll из проекта в котором нет wix installera все нормально загружается.
Не вижу связи.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2268
  • Карма: 624
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
либо одну из их зависимостей
Возможно, какую-то вспомогательную библиотеку потеряли.