Вопросы по Autodesk.AutoCAD.ApplicationServices Namespace

Автор Тема: Вопросы по Autodesk.AutoCAD.ApplicationServices Namespace  (Прочитано 8361 раз)

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

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

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

  • ADN OPEN
  • ***
  • Сообщений: 114
  • Карма: 0
Здравствуйте, Уважаемые форумчане.
Возник следующий вопрос:
В книге Полещука (стр. 198) есть такой фрагмент кода:
Код - C# [Выбрать]
  1. using cad = Autodesk.AutoCAD.ApplicationServices.Application;
  2.  
Если написать так, то VS показывает ошибку

В официальной документации:

Смысл в том, что, если добавить
Код - C# [Выбрать]
  1. using Autodesk.AutoCAD.ApplicationServices.Core;
  2.  
то
Код - C# [Выбрать]
  1. Document acDoc = Application.DocumentManager.MdiActiveDocument;
  2.  
проходит без ошибок, а если просто (без *.Core)
Код - C# [Выбрать]
  1. using Autodesk.AutoCAD.ApplicationServices;
  2.  
то нет такого в пространстве имен

в чем проблема и как правильно?
« Последнее редактирование: 03-11-2019, 15:21:42 от Александр Ривилис »

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

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Потому как с 2013 версии автокада часть этого пространства была перенесена в Autodesk.AutoCAD.ApplicationServices.Core.Application. Вот тема есть

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

  • ADN OPEN
  • ***
  • Сообщений: 114
  • Карма: 0
из этой ссылки не очень понятно к чему всё это и там ничего не сказано о том, что
Цитировать
часть этого пространства была перенесена
или я не заметил.
Чтобы не "закапываться" в глубину, скажите, можно просто использовать пространство  Autodesk.AutoCAD.ApplicationServices.Core для доступа к объекту Application?
И получается, что официальная документация не актуальна?
И код из официальной документации

просто не рабочий?

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

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Да, если пишите под 2013 и выше, то используйте Autodesk.AutoCAD.ApplicationServices.Core
Если интересно зачем было произведено такое разделение, то можете почитать тут и тут
Если кратко, то это разделение было для работы с консольной версией автокада (Core Console), т.е. без графического представления. Данная технология в итоге используется в Forge.

И что у вас за официальная документация, которая неверная?

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

  • ADN OPEN
  • ***
  • Сообщений: 114
  • Карма: 0
И что у вас за официальная документация, которая неверная?
Официальная документация вроде AutoCAD 2020
https://help.autodesk.com/view/OARX/2020/ENU/?guid=GUID-034504F8-59F8-4D6D-8777-3EF8A9C251DF

Да, если пишите под 2013 и выше, то используйте Autodesk.AutoCAD.ApplicationServices.Core
Только под AC 2020 и только под х64

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

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Официальная документация вроде AutoCAD 2020
Да там видимо код копипастят со старых версий справки, не особо запариваясь ))

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

  • ADN OPEN
  • ***
  • Сообщений: 114
  • Карма: 0
Да там видимо код копипастят со старых версий справки, не особо запариваясь ))
а потом человеку, который первый раз пишет программу на C#, первый раз использует МЫ и Autodesk API "ни в зуб ногой" поди и разберись самостоятельно что и как.

Какую-нибудь обучалку бы на youtube, типа быстрый старт и прочее. У Дмитрия Загорулькина вроде есть видео, но я там ничего не слышу, а покупать усилитель "жаба давит" ))

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

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
У Дмитрия Загорулькина вроде есть видео, но я там ничего не слышу, а покупать усилитель "жаба давит" ))
Savefrom позволяет скачать видел, а VLC Media Player позволяет усиливать звук. Все бесплатно )

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 735
И получается, что официальная документация не актуальна?
а потом человеку, который первый раз пишет программу на C#, первый раз использует МЫ и Autodesk API "ни в зуб ногой" поди и разберись самостоятельно что и как.
Использую Application из Autodesk.AutoCAD.ApplicationServices (без Core) для всех своих приложений с версии AutoCAD 2012 и до нынешней 2020. Приложения компилируются и выполняются без ошибок. В чём проблема?
Какую-нибудь обучалку бы на youtube, типа быстрый старт и прочее.
Есть такое, от Autodesk. Только оно для VB.NET и на английском с индийским акцентом. Гугл в помощь по словам Autodesk DevHelp.
Хотя, вроде как, был даже перевод на русский от Марата Миргалеева. В общем, кто ищет - тот всегда найдёт.
« Последнее редактирование: 03-11-2019, 15:40:11 от Александр Ривилис »

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

  • ADN OPEN
  • ***
  • Сообщений: 114
  • Карма: 0
Использую Application из Autodesk.AutoCAD.ApplicationServices (без Core) для всех своих приложений с версии AutoCAD 2012 и до нынешней 2020. Приложения компилируются и выполняются без ошибок. В чём проблема?
проблема в том, что при закомментированном using Autodesk.AutoCAD.ApplicationServices.Core; теряется Application


Отмечено как Решение Александр Ривилис 03-11-2019, 15:22:02

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 735
Надо просто добавить ссылку на AcMgd.dll.

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

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Luca,
Ты добавил обе сборки accoremgd.dll и acmgd.dll в проект?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • ***
  • Сообщений: 114
  • Карма: 0
Надо просто добавить ссылку на AcMgd.dll.
если добавить ссылку на AcMgd.dll, то, как я понимаю, нафиг не надо было Install-Package AutoCAD.NET.Core -Version 23.1.0 делать - верно?
можно было просто ссылки добавить и всё.
тогда вопрос: а куда девается Application из Autodesk.AutoCAD.ApplicationServices при использовании AutoCAD.NET.Core -Version 23.1.0?

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

  • ADN OPEN
  • ***
  • Сообщений: 114
  • Карма: 0
Ты добавил обе сборки accoremgd.dll и acmgd.dll в проект?
чет я не понимаю ))
я же добавил пакет AutoCAD.NET.Core -Version 23.1.0
ещё и accoremgd.dll и acmgd.dll добавлять надо?
а как тогда у меня программа работает?? ))

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

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 735
Спроси у разработчиков этого пакета. Я этой приблудой не пользуюсь.