DrawableOverrule и AcCoreConsole

Автор Тема: DrawableOverrule и AcCoreConsole  (Прочитано 9160 раз)

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

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
DrawableOverrule и AcCoreConsole
« : 28-10-2020, 22:00:36 »
Будет ли работать переопределение отрисовки объекта в AcCoreConsole? В частности, интересна операция вывода на печать.
Вопрос пока из разряда теоретических. Пока руки не дошли проверить. Может быть, кто-то уже пробовал?

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule и AcCoreConsole
« Ответ #1 : 28-10-2020, 23:59:41 »
Ничего на 100% утверждать не могу, но если в DrawableOverrule ты будешь использовать только классы и методы из accoremgd.dll и acdbmgd.dll (DrawableOverrule отсюда), то работать должно. А если используешь acmgd.dll, то даже не загрузится.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: DrawableOverrule и AcCoreConsole
« Ответ #2 : 02-11-2020, 18:27:02 »
Проверил - работает!
Взял код отсюда: https://www.keanw.com/2009/08/a-simple-overrule-to-change-the-way-autocad-lines-are-displayed-using-net.html. Причесал маленько - убрал ненужную регенерацию, добавил контрольных выводов в командную строку.
Долго мучился с загрузкой dll в эту консоль. Упорно не хотела загружаться! Суть проблемы в том, что надо добавить путь к dll в доверенные местоположения, сохранить это в профиле и подгрузить с данным профилем. Но у меня почему-то отказывалась запускаться консоль с указанным профилем. Возможно, потому, что у меня не чистый AutoCAD, а Civil 3D, да и к тому же, русский. Помню, были какие-то проблемы в работе локализованной консоли. В общем, поборол так - взял свою dll и просто положил рядом с AcCoreConsole.exe. После этого, она загрузилась.
Проверял так: Создал новый чертёж. В нём нарисовал несколько отрезков. Настроил вывод на печать области с этими отрезками на стандартный вывод DWGtoPDF, сохранил параметры печати. Запустил консоль, открыл этот чертёж, загрузил dll. Печатал с помощью команды _.-plot, все параметры использовал по умолчанию - там берутся из сохранённых настроек печати. Сперва вывел на печать с выключенной перерисовкой - вывелись отрезки. Потом включил перерисовку и повторил вывод на печать - вывелись окружности. Так что, в таком самом упрощённом виде, переопределение перерисовки работает в AcCoreConsole!

Оффлайн brook

  • ADN OPEN
  • Сообщений: 15
  • Карма: 0
Re: DrawableOverrule и AcCoreConsole
« Ответ #3 : 10-12-2021, 11:45:08 »
Долго мучился с загрузкой dll в эту консоль. Упорно не хотела загружаться! Суть проблемы в том, что надо добавить путь к dll в доверенные местоположения, сохранить это в профиле и подгрузить с данным профилем. Но у меня почему-то отказывалась запускаться консоль с указанным профилем. Возможно, потому, что у меня не чистый AutoCAD, а Civil 3D, да и к тому же, русский. Помню, были какие-то проблемы в работе локализованной консоли. В общем, поборол так - взял свою dll и просто положил рядом с AcCoreConsole.exe. После этого, она загрузилась.
спасибо! тоже билась с этим, уже собиралась тему заводить. Положить в папку с Автокадом помогло.
заодно тут спрошу, я правильно понимаю, что никакой кириллицы AcCoreConsole не выносит и все пути и все команды должны быть латиницей? или как-то специальным образом нужно кириллицу переводить, если Acad Ru-ru?

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule и AcCoreConsole
« Ответ #4 : 10-12-2021, 14:46:43 »
или как-то специальным образом нужно кириллицу переводить, если Acad Ru-ru?
Ну вообще-то консольное приложение использует DOS-кодирорвку (DOS866 для русской версии Windows) для вывода текстов в консоль.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Иван Логинов

  • ADN OPEN
  • Сообщений: 17
  • Карма: 0
Re: DrawableOverrule и AcCoreConsole
« Ответ #5 : 11-03-2022, 17:32:04 »
спасибо! тоже билась с этим, уже собиралась тему заводить. Положить в папку с Автокадом помогло.
заодно тут спрошу, я правильно понимаю, что никакой кириллицы AcCoreConsole не выносит и все пути и все команды должны быть латиницей? или как-то специальным образом нужно кириллицу переводить, если Acad Ru-ru?
Внесу небольшую лепту, может кому поможет. Пробовал сохранять файл .src с кодировкой CP866, UTF8 - не помогало. С кодировкой Windows 1251 - получилось

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule и AcCoreConsole
« Ответ #6 : 12-03-2022, 13:44:43 »
Внесу небольшую лепту, может кому поможет. Пробовал сохранять файл .src с кодировкой CP866, UTF8 - не помогало. С кодировкой Windows 1251 - получилось
В *.scr-файле кодировка должна быть Windows 1251, а в *.bat-файле - DOS866
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение