Не могу создать com-объект AutoCAD

Автор Тема: Не могу создать com-объект AutoCAD  (Прочитано 24057 раз)

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

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #15 : 23-09-2021, 15:14:52 »
RPC_E_SERVERFAULT
Это ошибка сервера. С ней ничего сделать нельзя.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #16 : 23-09-2021, 15:15:32 »
Как вызвать окно показанное Вами на скрине?
Свойства проекта в Visual Studio:



Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн marsh_one

  • ADN OPEN
  • Сообщений: 44
  • Карма: 0
Re: Не могу создать com-объект AutoCAD
« Ответ #17 : 23-09-2021, 15:39:30 »
RPC_E_SERVERFAULT
Это ошибка сервера. С ней ничего сделать нельзя.

Т.е. а такой подход что использован в коде никак не решит эту проблему?

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #18 : 23-09-2021, 15:44:19 »
Т.е. а такой подход что использован в коде никак не решит эту проблему?
Проблему с RPC_E_SERVERFAULT кодом решить нельзя. Нужно понять почему эта ошибка возникает. В отличие от остальных ошибок, когда сервер занят, и повторное обращение через какое-то время может исправить ошибку, эта ошибка постоянная. AutoCAD при этом запускается?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн marsh_one

  • ADN OPEN
  • Сообщений: 44
  • Карма: 0
Re: Не могу создать com-объект AutoCAD
« Ответ #19 : 23-09-2021, 15:47:03 »
Нет. Атокад не запускается.
Автокад пытаюсь вызвать так:
Код - C# [Выбрать]
  1.                 Type comAppType = Type.GetTypeFromProgID("AutoCAD.Application");
  2.  
  3.                 dynamic app = GetApp(() => Activator.CreateInstance(comAppType));
  4.  
  5.  
  6.  
  7.                 if (app == null)
  8.                 {
  9.                     WriteLine("Не удалось получить объект Application Press any key for exit...");
  10.                     ReadKey();
  11.                     return;
  12.                 }
  13.  
  14.                 dynamic docs = CallFunc((object)app,() => app.Documents);
  15.                 Открываем существующий документ
  16.                 dynamic doc1 = CallFunc((object)app,() => docs.Open(@"fileName"));
  17.  
  18.                 // по умолчанию Visible установлен в false
  19.                 DoAction((object)app, () => app.Visible = true);
  20.  
  21.                 WriteLine("\nPress any key for dociments close...");
  22.                 ReadKey();

fileName - путь.
Просто форма висит и всё..

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #20 : 23-09-2021, 15:50:43 »
marsh_one,
Пройдись под отладчиком. RPC_E_SERVERFAULT убери. Разберись создаётся ли app.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн marsh_one

  • ADN OPEN
  • Сообщений: 44
  • Карма: 0
Re: Не могу создать com-объект AutoCAD
« Ответ #21 : 23-09-2021, 16:43:19 »
Удалил.
Код - C# [Выбрать]
  1. const uint RPC_E_SERVERFAULT = 0x80010105;
Форма также висит.
Ничего не изменилось.
Как проверить, что арр содается?

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #22 : 23-09-2021, 16:54:42 »
Как проверить, что арр содается?
Под отладчиком пошаговое выполнение.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #23 : 23-09-2021, 16:57:00 »
P.S.: Это тоже убери:
Код - C# [Выбрать]
  1. case HRESULT:
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #24 : 23-09-2021, 17:04:33 »
const uint HRESULT = 0x800706BA;
Этот код означает, что RPC-сервер недоступен: http://windowsbulletin.com/ru/rpc-server-is-unavailable-error-code-0x800706ba-fix/
Не очень понятно как это связано с данным случаем. Возможно отключена служба RPC в системе:



Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн marsh_one

  • ADN OPEN
  • Сообщений: 44
  • Карма: 0
Re: Не могу создать com-объект AutoCAD
« Ответ #25 : 23-09-2021, 17:28:01 »


Убрал   
Код - C# [Выбрать]
  1.     case HRESULT:
Форма висит.
ЕСли убрать строку
Код - C# [Выбрать]
  1.                 dynamic doc1 = CallFunc((object)app,() => docs.Open(@"fileName"));
.
ТО могу форму, зажав ЛКМ можно двигать.
Александр, а в отладчике пошагово как реализовать? Шаг с заходом?



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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #26 : 23-09-2021, 17:31:06 »
Александр, а в отладчике пошагово как реализовать? Шаг с заходом?
Конечно. Нужно же понять создался ли AutoCAD как COM-сервер.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн marsh_one

  • ADN OPEN
  • Сообщений: 44
  • Карма: 0
Re: Не могу создать com-объект AutoCAD
« Ответ #27 : 23-09-2021, 17:40:55 »
Запустив "шаг с обходом" где можно посмотреть пошагово?

Оффлайн marsh_one

  • ADN OPEN
  • Сообщений: 44
  • Карма: 0
Re: Не могу создать com-объект AutoCAD
« Ответ #28 : 23-09-2021, 17:43:20 »



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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Не могу создать com-объект AutoCAD
« Ответ #29 : 23-09-2021, 18:03:33 »
Поставь точку останова здесь:
Код - C# [Выбрать]
  1. Type comAppType = Type.GetTypeFromProgID("AutoCAD.Application");
После этого выполни пошаговую отладку.
P.S.: Я так понимаю, что тебе нужно заняться изученим возможностей MS Visual Studio.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение