Jump to content

ISL

Клуб разработчиков
  • Posts

    466
  • Joined

  • Last visited

  • Days Won

    4

Everything posted by ISL

  1. К сожалению, способа динамического пополнения rollover tooltip-ов в nanoCAD-е по-прежнему нет. Статическая часть описана в nCadBase.cfg, см. секцию [\RolloverTooltips].
  2. Поддерживаются две кодировки: UTF8 с BOM и ANSI. Всё, что без BOM от UTF8 читается как ANSI. Скорее всего кракозябры именно отсюда.
  3. В 23.0 сломалось приведение к типу LayerFilter, сейчас с этим разбираемся.
  4. https://learn.microsoft.com/en-us/sysinternals/downloads/process-explorer
  5. Я про те .dll, которые уже в памяти. Проще всего прицепиться Visual Studio или посмотреть загруженные модули Process Explorer-ом. Речь не про версию модуля, а про его расположение. Может действительно оказаться, что грузится то заглушка из одного места, то полноценный модуль из другого. Если действительно, конечно, есть в природе такая заглушка.
  6. В nanoCAD-е точно нет ничего специального на эту тему, это какой-то побочный эффект. В теме https://github.com/dotnet/SqlClient/issues/1643 пишут, что в природе существует заглушка модуля Microsoft.Data.SqlClient, которая всегда выдаёт это исключение. Там речь, конечно, про Linux, но, думаю, стоит убедиться, что в память грузится один и тот же модуль и в случае, когда работает, и когда нет.
  7. > а вот во время работы фигушки.. доступ бы туда где он это делает.. Команда RELOADRIBBON перегружает ленту, в том числе .cuix-ы. Вполне возможно, что и изменения в реестре подхватит, но это я не проверял.
  8. Как вариант, можно содержимое вкладки общей ленты поставить в зависимость от системной переменной, см., как это сделано во вкладке 3D-инструменты. 1. Создаём системную переменную в nProf.ini (не забыть сбросить профиль, секция DefProf пишется в реестр только при создании профиля). [\DefProf\sysvars] 3DDRAFTINGMODE=i1 2. Прописываем условия в RibbonWS.xml (оригинал в "c:\Program Files\Nanosoft\nanoCAD x64 23.0\UserDataCache\Config\RibbonWS.xml", копируется AppData пользователя при первом старте nanoCAD-а): <WSRibbonTabSourceReference sysvar_condition="3DDRAFTINGMODE=0" TabId="ID_TAB_3D_TOOLS_3DDRAFTINGMODE0" Show="true" IsActive="false" ></WSRibbonTabSourceReference> <WSRibbonTabSourceReference sysvar_condition="3DDRAFTINGMODE=1" TabId="ID_TAB_3D_TOOLS_3DDRAFTINGMODE1" Show="true" IsActive="false"></WSRibbonTabSourceReference> На вкладке есть ещё кнопки, переключающие ленту, но это для решения задачи данного топика по-видимому не нужно.
  9. Название стартовой конфигурации живёт в системной переменной CCONFIGURATION.
  10. Это фича, стартовая конфигурация и профиль – это разные сущности. Стартовая конфигурация (ключ командной строки -r) содержит ссылки на профиль, меню-ленту и список загружаемых приложений. Профиль (ключ командной строки -p) содержит настройки, может быть одинаков в разных стартовых конфигурациях. При создании стартовой конфигурации, если имя профиля не указано в явном виде, то создаётся одноимённый со стартовой конфигурацией профиль. Если же в нескольких ярлыках указать только названия профилей, то стартовая конфигурация будет умолчальной, а профили разными, что и наблюдаем.
  11. Приложения загружаются позже, чем меню. Если нет возможности сделать разные ярлыки для разных конфигураций и действительно нужно динамически решать что грузить, то без внешнего стартёра тут не обойтись.
  12. LSC файлы существуют в nanoCAD давным-давно, это не бинарные, а текстовые слегка зашифрованные .lsp файлы. Слегка потому, что никакой серьёзной криптографии не используется, это скорее способ защитить исходный код от "шаловливых ручек" пользователей. Создаются эти файлы утилитой ncscriptencryptor.exe из SDK. @doctorraz, а что не даёт тестировать дальше? Речь про API, разумеется.
  13. Патч для сборки 23.0.6116.4106.6223: https://developer.nanocad.ru/redmine/attachments/823. patch_#679_ncauto_23.0.6116.4106.6223_x64.zip
  14. Да, это баг. Второе и последующие подключения в 23.0.6116.4106.6223 не работают. В ближайшее время выложим патч.
  15. Действительно, оставили в C# проектах часть абсолютных путей к библиотекам. Если Платформа nanoCAD 23.0 установлена в папку по умолчанию, C:\Program Files\Nanosoft\nanoCAD x64 23.0, то всё должно собираться. Если нет, то проще всего поправить прямо в проекте, заменить <Reference Include="hostmgd"> <HintPath>C:\Program Files\Nanosoft\nanoCAD x64 23.0\bin\hostmgd.dll</HintPath> <Private>False</Private> </Reference> на <Reference Include="hostmgd"> <HintPath>..\..\..\include-$(PlatformCPP)\hostmgd.dll</HintPath> <Private>False</Private> </Reference>
  16. VS 2022 собрать можно, но только Toolset должен быть v142, т.е. от VS 2019.
  17. Аналогичное ручному запуску? Если команда отслеживает запуск из-под лиспа, то не реализовать.
  18. Команда проверяет, запущена ли она вручную или из скрипта/лиспа, что позволяет развивать пользовательский, но при этом держать совместимым программный интерфейс. Большинство команд так переключаются в консольный режим, но можно и глубже ветвить.
  19. Его нет в SDK, выдаётся в руки тем, кто доходит до этого момента.
  20. Имеете, нужно только добавить в неё проверку лицензированности платформы.
  21. 1. Действительно, некоммерческие публичные утилиты в договоре разработчика не упоминаются, учтём в будущих редакциях договора. Про некоммерческую разработку см. п. 4 ЛС Платформы nanoCAD: Условия распространения в договоре разработчика стали шире и мягче, поэтому никакого ухудшения не произошло, и публичные некоммерческие утилиты мы можем только приветствовать. 2. Относится только к коммерческим продуктам. Смысл в том, чтобы не продавали продукты без платформы. Для существующих на рынке версий не актуально, т.к. демо режима в nanoCAD-е уже нет.
  22. Чем женить JScript и DCL, не проще ли на C# окошко соорудить? Средства разработки тут куда удобней.
×
×
  • Create New...