последовательность загрузки модулей в 2015

Автор Тема: последовательность загрузки модулей в 2015  (Прочитано 9950 раз)

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

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

Оффлайн begizАвтор темы

  • ADN Club
  • ***
  • Сообщений: 161
  • Карма: 8
  • Skype: begiz_i
Добрый день,
столкнулся с такой проблемой.
Загружаю dll (Objectarx в moxed-mode) через реестр, говорит какие-то библиотеки не найдены. (LOADCTRLS=2, MANAGED=1)
Загружаю тот же dll через netload, загрузается.

Тот же код загружается в версиях 2010-2014 без проблем.
Куда копать?

П.С. нашел такую статью
https://forums.autodesk.com/t5/autocad-2013-2014-2015-2016/acwipeout-arx/td-p/5362389

Wipeout напрямую нигде не использую, но при загрузке устанавливаю переменную WIPEOUTFRAME, не знаю связано ли.

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

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

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Wipeout напрямую нигде не использую, но при загрузке устанавливаю переменную WIPEOUTFRAME, не знаю связано ли.
Вполне может быть связано. Соответственно в On_kInitAppMsg помести:
Код - C++ [Выбрать]
  1. acrxLoadModule(L"acismobj20.dbx",false,false);
  2. acrxLoadModule(L"acismui.arx",false,false);
до установки WIPEOUTFRAME.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн begizАвтор темы

  • ADN Club
  • ***
  • Сообщений: 161
  • Карма: 8
  • Skype: begiz_i
Да в том то и дело что непонятно каких не хватает.
х_2015.dll cannot find a dll or other file that it needs.

А так как потом загружается, значит все в наличии, просто не подгружается вовремя.

acrxLoadModule(L"acismobj20.dbx",false,false);
acrxLoadModule(L"acismui.arx",false,false);

не помогло, вписал сразу после
AcRx::AppRetCode retCode =AcRxArxApp::On_kInitAppMsg (pkt) ;

Стоит добавить, что dll лежит не в папке Autocad

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

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

Оффлайн begizАвтор темы

  • ADN Club
  • ***
  • Сообщений: 161
  • Карма: 8
  • Skype: begiz_i
Прицепил,
там еще 2 dll, которые нужны для работы

Отмечено как Решение begiz 23-09-2015, 23:13:14

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Разархивировал в каталог C:\AAA
Занёс в реестр:
Код - Microsoft Registry [Выбрать]
  1. REGEDIT4
  2.  
  3. [HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R20.0\ACAD-E001:409\Applications\ARM_2015]
  4. "DESCRIPTION"="ARM_2015"
  5. "LOADCTRLS"=dword:00000002
  6. "LOADER"="C:\\AAA\\ARM_2015.dll"
  7. "MANAGED"=dword:00000001

Добавил C:\AAA в пути доступа AutoCAD и в доверенные:


Получил результат:



Таблице экспорта:
Цитировать
Ac1st20.dll
accore.dll
acdb20.dll
AcGe20.dll
acui20.dll
adui20.dll
ADVAPI32.dll
COMCTL32.dll
GDI32.dll
KERNEL32.dll
mfc110u.dll
mscoree.dll
MSVCP110.dll
MSVCR110.dll
mysqlcppconn.dll
ole32.dll
OLEAUT32.dll
RPCRT4.dll
SHLWAPI.dll
USER32.dll
ACAD.exe

Нестандартная только одна mysqlcppconn.dll. Она должна быть или в путях доступа, или объявлена как DELAYLOAD и загружена в On_kInitAppMsg
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн begizАвтор темы

  • ADN Club
  • ***
  • Сообщений: 161
  • Карма: 8
  • Skype: begiz_i
Спасибо!!
Добавил в суппорт патх и у меня загрузилось всё....
Но все равно не понял, почему раньше работало без доп. добавления в суппорт

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

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