race on RCW cleanup

Автор Тема: race on RCW cleanup  (Прочитано 6832 раз)

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

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

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
race on RCW cleanup
« : 13-06-2016, 15:45:33 »
Здравствуйте. Решил попробовать 2017 sdk.

Создал плагин, на основе этого простенького кода: http://help.autodesk.com/view/RVT/2017/ENU/?guid=GUID-01F579CB-AB46-4C00-86E4-D189510D3774

Затем с удивлением узнал, что в 2017 Revit все плагины должны быть подписаны, а иначе он выбрасывает раздражающий диалог при каждом запуске. Создал я сертификат, как описано вот тут:
https://knowledge.autodesk.com/support/revit-products/getting-started/caas/CloudHelp/cloudhelp/2017/ENU/Revit-API/files/GUID-B9A067F4-234F-47F8-A5EE-0D84A93FA98E-htm.html


Затем добавил post-build event который подписывает мою dll при каждом построении проекта так , как описано вот тут: https://knowledge.autodesk.com/support/revit-products/getting-started/caas/CloudHelp/cloudhelp/2017/ENU/Revit-API/files/GUID-F4CD6AAE-FB9F-43B2-974D-06C15E1F08E8-htm.html . В итоге у меня получилась вот такая post build конфигурация

Код - Javascript [Выбрать]
  1. "C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool" sign /f "C:\Windows\SysWOW64\MyCert.pfx" /p "123"  "$(TargetDir)$(TargetFileName)"
  2. copy "$(ProjectDir)*.addin" "$(ProgramData)\Autodesk\REVIT\Addins\2017"
  3. copy "$(ProjectDir)bin\debug\*.dll" "$(ProgramData)\Autodesk\REVIT\Addins\2017"
  4.  



Все это дело у меня заработало, диалог пропал. Но если запустить dll под дебагом а потом закрыть Revit (не прервать дебаг в Visual Studio а именно закрыт ревит), то вылетает предупреждение компилятора race on RCW cleanup

Если убрать post build команду, которая подписывает dll , то все работает. Что я делаю не так? Может кто сталкивался

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: race on RCW cleanup
« Ответ #1 : 13-06-2016, 16:39:49 »
то вылетает предупреждение компилятора race on RCW cleanup
Компилятора???
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Re: race on RCW cleanup
« Ответ #2 : 13-06-2016, 19:47:31 »
то вылетает предупреждение компилятора race on RCW cleanup
Компилятора???


Гм, ну пусть предупреждение  выдает Managed Debugging Assistan (MDA) . Не компилятор, а  дебаггер. Ваша точность в терминах очень похвальна, Александр. Это я без сарказма. На том же SO никто бы внимания не обратил. И все таки, вы сталкивались с такой ошибкой?

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: race on RCW cleanup
« Ответ #3 : 14-06-2016, 13:03:53 »
Гм, ну пусть предупреждение  выдает Managed Debugging Assistan (MDA) . Не компилятор, а  дебаггер.
Согласись, что это совершенно разные вещи. Одно дело, когда такое сообщение возникает на этапе компиляции и другое дело, когда оно возникает на этапе выполнения кода.

И все таки, вы сталкивались с такой ошибкой?
Нет. Но думаю, что тебе придётся с ней смирится и просто не обращать на неё внимание, т.к. это проблема не твоего кода, а взаимодействия Revit и отладчика.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Re: race on RCW cleanup
« Ответ #4 : 14-06-2016, 13:05:12 »
Спасибо. Просто неприятно

Оффлайн Виктор Чекалин

  • Administrator
  • *****
  • Сообщений: 694
  • Карма: 111
  • Skype: chekalin-v
Re: race on RCW cleanup
« Ответ #5 : 28-06-2016, 16:28:05 »
Хм. Поймал похожую ошибку но аж на Revit 2015. Похоже тут проблема не в Revit, а в обновлениях либо Windows либо Visual Studio.

Оффлайн Виктор Чекалин

  • Administrator
  • *****
  • Сообщений: 694
  • Карма: 111
  • Skype: chekalin-v
Re: race on RCW cleanup
« Ответ #6 : 28-06-2016, 16:33:48 »
Поторопился я с выводами. Собственно проблема была всегда и отображение этого сообщения зависит от настроек Exception в Visual Studio. Я недавно копался и поставил вывод всех исключений, поэтому и отобразилось окно с этим исключением. Проблема (хотя собственно это и не проблема) решается очень просто. При появлении сообщения надо снять галочку, что в следующий раз не показывать сообщением при возникновении подобного вида исключения.



Разбираться в причине появления исключения желания нет.


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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: race on RCW cleanup
« Ответ #7 : 28-06-2016, 17:09:56 »
Разбираться в причине появления исключения желания нет.
Тем более, что с пользовательским кодом она не связана.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение