C3D 2016 acadmap.arx долго загружается

Автор Тема: C3D 2016 acadmap.arx долго загружается  (Прочитано 25098 раз)

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

Оффлайн Алексей Терно

  • ADN Club
  • ****
  • Сообщений: 381
  • Карма: 33
    • C3D Extensions
  • Skype: alexeyterno
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #15 : 18-08-2015, 10:25:07 »
Официально заявлено, что в настоящее время ни один продукт Autodesk не поддерживает Windows 10, поэтому я перестал бороться с этой проблемой.
На чистой установке Win8.1+VS2013+C3D2016 отладка работала без проблем, так что это какие-то настройки системы приводят в ошибке.

Опять вернулся на Win7.

Оффлайн Vladimir811

  • ADN OPEN
  • Сообщений: 3
  • Карма: 1
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #16 : 18-09-2015, 14:32:20 »
Да, такая же проблема. После перехода на W10 с первого раза перестал запускаться Civil. Завершаю процесс acad.exe и запускаю снова - со второго раза проблем нет.

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #17 : 18-09-2015, 15:10:21 »
Будем надеяться на очередной Service Pack, который обеспечит совместимость с Windows 10.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Пекшев aka Modis

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #18 : 06-12-2015, 10:15:23 »
А может кто-нибудь пояснить - что это за acadmap.arx?
У меня win10, автокад 2016 - открывается минут 7-10 при первом запуске. Все это время висит на загрузке acadmap.arx. У меня впечатление, что он мне нафиг не нужен. Под старые версии встречал какой-то вариант, как отменить загрузку этого acadmap.arx

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #19 : 06-12-2015, 15:49:56 »
У меня впечатление, что он мне нафиг не нужен.
Думаю, что это не так. Судя по названию, это библиотека для Map, который является неотъемлемой частью Civil. Вряд ли без этой библиотеки Civil вообще запустится.

Оффлайн Александр Пекшев aka Modis

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #20 : 06-12-2015, 16:10:42 »
Думаю, что это не так. Судя по названию, это библиотека для Map, который является неотъемлемой частью Civil. Вряд ли без этой библиотеки Civil вообще запустится
Судя вот по этой статье - это ГИС-функционал. Ну я предполагаю, что команды Map 3D и acadmap.arx - это одно и тоже. Допустим, если я занимаюсь дорогами или трубопроводом, то мне этот функционал и не нужен. В той-же самой статье описан некий скрипт, отключающий эти команды (а возможно и загрузку), но для версий 2009, 2010, 2011
Я бы конечно так не расстраивался из-за долгой загрузки Civil, НО! У меня на компе стоит только Civil и если мне нужен чистый автокад, то есть замечательный ярлык "Civil 3D as AutoCad 2016". Но и при этом грузится этот самый файл, который вот уже точно не нужен!

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #21 : 06-12-2015, 16:42:25 »
Ну если есть желание - можно попробовать сделать то же самое и в новых версиях. Скрипт простой - он в реестре правит значения. https://knowledge.autodesk.com/support/autocad-civil-3d/troubleshooting/caas/sfdcarticles/sfdcarticles/How-to-disable-the-autoload-of-Map-3D-files-to-improve-performance-s.html
Civil3DMapControl.wsf:
<package>
<job>

<runtime>
<description>
This script turns on or off the automatic loading of the Map modules shipped
with Civil 3D when Civil 3D starts.

When module loading has been turned off, users can reload the Map modules by
keying in the "_MapStartWSpace' command.

    Script Usage Examples
    ----------------------------------------------------
   
        // disable autoloading of Map in Civil 3D 2010
wscript Civil3DMapControl.wsf /2010 /Disable

// enable autoloading of Map in Civil 3D 2010 for French version of Civil 3D
wscript Civil3DMapControl.wsf /2010 /Enable /FRA


    Script Parameters
    ----------------------------------------------------
// /2008 or /2009 or /2010 or /2011 as the product year

// /Enable or /Disable loading of Map modules

// the language code can also be specified as one of the following
//
//  /ENU     (default)
        //  /DEU
        //  /FRA
        //  /ITA
        //  /ESP
        //  /PLK
        //  /HUN
        //  /CSY
        //  /RUS
        //  /PTB
        //  /CHS
        //  /CHT
        //  /KOR
        //  /JPN


</description>
</runtime>

<script language="JScript">
{
    // get access to the Windows Scripting Host
    var WshShell = WScript.CreateObject("WScript.Shell");

    // get the script arguments
    var varArgs = WScript.Arguments.Named;


    // are we enabling or disabling loading of the modules (/Enable or /Disable (default is /Enable))
    var bDisable = false;
    if ( varArgs.Exists("Disable")  ||  varArgs.Exists("disable") ) {
        bDisable = true;
    }


    // version of Civil 3D to use (assume 2011)
    var strVersion = "2011";
    if ( varArgs.Exists("2010") ) {
        strVersion = "2010";
    }
    if ( varArgs.Exists("2009") ) {
        strVersion = "2009";
    }
    if ( varArgs.Exists("2008") ) {
        strVersion = "2008";
    }

    // the language of choice (default is English (ENU))
    var varLang = GetLanguage();

    // Civil 3D location in registry   
    var varVersion = "\\R18.1\\ACAD-9000:" + varLang;
    if ( strVersion == "2010" ) {
        varVersion = "\\R18.0\\ACAD-8000:" + varLang;
    }
    if ( strVersion == "2009" ) {
        varVersion = "\\R17.2\\ACAD-7000:" + varLang;
    }
    if ( strVersion == "2008" ) {
        varVersion = "\\R17.1\\ACAD-6000:" + varLang;
    }

    // setup the registry root location
    var hklm_root = "HKLM\\Software"
    var hklm_root64 = "HKLM\\Software\\Wow6432Node"


   
    // determine if running 32 or 64-bit OS
    //if not 2011 change root to WoW6432Node
var processor_architecture = WshShell.Environment("PROCESS")("PROCESSOR_ARCHITECTURE");
   
if( "AMD64" == processor_architecture ) {
   
   if( strVersion != "2011" ) {
        hklm_root = hklm_root64;
     }   
}

// the Civil 3D location in the registry
var hklm_c3d = hklm_root + "\\Autodesk\\AutoCAD" + varVersion + "\\Applications";


// make the necessary registry changes
try {
    if ( bDisable == true ) {
    WshShell.RegWrite(hklm_c3d + "\\AcMap\\LOADCTRLS",                  0x5, "REG_DWORD" );
    WshShell.RegWrite(hklm_c3d + "\\AcMapAnnotUi\\LOADCTRLS",           0xd, "REG_DWORD" );
//          WshShell.RegWrite(hklm_c3d + "\\AcMapCogo\\LOADCTRLS",              0x5, "REG_DWORD" );
    WshShell.RegWrite(hklm_c3d + "\\AcMapDwfUI\\LOADCTRLS",             0x4, "REG_DWORD" );
    WshShell.RegWrite(hklm_c3d + "\\AcMapDisplayManagement\\LOADCTRLS", 0x8, "REG_DWORD" );
    if ( strVersion == "2010" || strVersion == "2011" ) {
        WshShell.RegWrite(hklm_c3d + "\\AcMapRibbon\\LOADCTRLS",        0x4, "REG_DWORD" );
    }
   
    WshShell.RegWrite(hklm_c3d + "\\AcMap\\Commands\\MAPSTARTWSPACE",   "MAPSTARTWSPACE", "REG_SZ" );
}
else {
    WshShell.RegWrite(hklm_c3d + "\\AcMap\\LOADCTRLS",                  0x7, "REG_DWORD" );
    WshShell.RegWrite(hklm_c3d + "\\AcMapAnnotUi\\LOADCTRLS",           0xf, "REG_DWORD" );
//          WshShell.RegWrite(hklm_c3d + "\\AcMapCogo\\LOADCTRLS",              0x7, "REG_DWORD" );
    WshShell.RegWrite(hklm_c3d + "\\AcMapDwfUI\\LOADCTRLS",             0x2, "REG_DWORD" );
    WshShell.RegWrite(hklm_c3d + "\\AcMapDisplayManagement\\LOADCTRLS", 0x9, "REG_DWORD" );
    if ( strVersion == "2010" || strVersion == "2011" ) {
        WshShell.RegWrite(hklm_c3d + "\\AcMapRibbon\\LOADCTRLS",        0x2, "REG_DWORD" );
    }
}
}
catch (err) {
}


    // let user know what happened
    var strProduct = "Civil 3D " + strVersion;
    var strTitle;
    var strMessage;
   
    if ( bDisable == true ) {
        strTitle = strProduct + " Disable Map";
        strMessage = strProduct + " map modules disabled";
    }
    else {
        strTitle = strProduct + " Enable Map";
        strMessage = strProduct + " map modules enabled";
    }
       
    WshShell.Popup( strMessage, 0, strTitle, 0 );
}

function GetLanguage()
{
    // default is English
    var varLang = "409";
   
    if ( varArgs.Exists("DEU") ) {
        varLang = "407";
    }   
    else if ( varArgs.Exists("FRA") ) {
        varLang = "40C";
    }
    else if ( varArgs.Exists("ITA") ) {
        varLang = "410";
    }
    else if ( varArgs.Exists("ESP") ) {
        varLang = "40A";
    }
    else if ( varArgs.Exists("PLK") ) {
        varLang = "415";
    }
    else if ( varArgs.Exists("HUN") ) {
        varLang = "40E";
    }
    else if ( varArgs.Exists("CSY") ) {
        varLang = "405";
    }
    else if ( varArgs.Exists("RUS") ) {
        varLang = "419";
    }
    else if ( varArgs.Exists("PTB") ) {
        varLang = "416";
    }
    else if ( varArgs.Exists("CHS") ) {
        varLang = "804";
    }
    else if ( varArgs.Exists("CHT") ) {
        varLang = "404";
    }
    else if ( varArgs.Exists("KOR") ) {
        varLang = "412";
    }
    else if ( varArgs.Exists("JPN") ) {
        varLang = "411";
    }
   
    return varLang;
}

</script>

</job>
</package>

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #22 : 06-12-2015, 16:48:15 »
Ты не обратил внимание чем занимается этот скрипт? Он просто в реестре прописывает отключение загрузки ряда модулей.
Можно конечно его подправить и под 2016-ый, но так похоже нужно значительно больше модулей отключать.
Простейший вариант, чтобы acadmap.arx не грузился - просто переименовать его (например, в acadmap1.arx).
Civil3D при этом нормально запускается без сообщений об ошибках. Но не уверен, что всё будет нормально работать.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Пекшев aka Modis

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #23 : 06-12-2015, 16:58:33 »
Простейший вариант, чтобы acadmap.arx не грузился - просто переименовать его (например, в acadmap1.arx)
Хорошая идея. Правда, как я понял, лучше уже переименовывать не acadmap.rax, а AcMapLoader.arx. Находится в папке /AutoCad 2016/Map
Но не уверен, что всё будет нормально работать
Нужно конечно проводить тесты. Но что могу точно сказать - автокад грузится быстрее. Проекты civil открылись вроде без проблем

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #24 : 06-12-2015, 17:09:46 »
Правда, как я понял, лучше уже переименовывать не acadmap.rax, а AcMapLoader.arx.
Тогда уж оба. acadmap.arx грузится напрямую из реестра и еще и из AcMapLoader.arx
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #25 : 24-05-2016, 15:05:13 »
Подправил скрипт для версий 2015-2017. Проверял только в 2016 и 2017, в 2015 проверить не могу, т.к. у меня его нет и он не хочет устанавливаться :(.

P.S.
acadmap.arx грузится напрямую из реестра
Насколько мне удалось выяснить опытным путем, acadmap.arx подгружается не напрямую из реестра.
Напрямую грузятся эти файлы:
- AcMapLoader.arx
- AcMapDMUtils.dbx
- AcMapInfoCenter.dll
И в скрипте я только для них изменял значения ключа LOADCTRLS. Остальные файлы, как и acadmap.arx, загружаются по запросу, наверное.

Найти бы где-нибудь информацию о значениях ключа LOADCTRLS, тогда было бы понятнее.
Пока я понял только то, что эти значения отключают загрузку из реестра: 0x0, 0х4, 0x5, 0x8, 0xd. А эти - включают: 0x2, 0x9, 0x7, 0xf.
« Последнее редактирование: 05-10-2022, 23:30:50 от User_45 »

Оффлайн Ринат

  • ADN OPEN
  • Сообщений: 1
  • Карма: 0
  • Skype: rinatbay
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #26 : 08-07-2017, 10:27:14 »
Подскажите, пожалуйста. Как убрать из загрузки в автокаде сивил 3д 2018?


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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: C3D 2016 acadmap.arx долго загружается
« Ответ #27 : 08-07-2017, 10:56:51 »
Обновил для 2018, проверяйте.