Сообщество программистов Autodesk в СНГ

ADN Club => Revit API => Тема начата: Максим Маркевич от 25-03-2016, 02:10:14

Название: Не выполняется отладка кода
Отправлено: Максим Маркевич от 25-03-2016, 02:10:14
Доброго времени суток, уважаемые. Начал я разбираться с Revit API(Revit 2016). Как всякий порядочный человек, начал с "Hello World". Зашел в справку http://help.autodesk.com/view/RVT/2016/ENU/?guid=GUID-8EB25D2A-3CAF-486A-BA8E-C2BEF3DB68F6, там отлично все расписано, все хорошо и получилось (скрин1). Но в конце данной статьи есть еще вариант отладки при помощи Revit, но почему-то он не работает (скрин2). А, если запустить, просто отладку, без Revita, то тоже выдает ошибку (скрин3). Не подскажете, в чем дело? Заранее, спасибо.
(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fs12.postimg.org%2Fg4jqkavbt%2FScreen_Shot_03_25_16_at_02_07_AM.jpg&hash=78962b822d16203ada085e342cd76c0f) (http://postimg.org/image/g4jqkavbt/)###(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fs9.postimg.org%2Fekxxhdhnv%2FScreen_Shot_03_25_16_at_02_02_AM.jpg&hash=a50610ff9b5b438a7331dc71a53158a4) (http://postimg.org/image/ekxxhdhnv/)###(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fs12.postimg.org%2Fm2sygsowp%2FScreen_Shot_03_25_16_at_02_03_AM.jpg&hash=69c5f0a2d964e6f854ffd80a5313e446) (http://postimg.org/image/m2sygsowp/)

Информация о версии Visual Studio:

(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fs29.postimg.org%2Fholur8lmb%2FScreen_Shot_03_25_16_at_02_13_AM.jpg&hash=b88c7ee2e0685a0a44c2632b3971d53c) (http://postimg.org/image/holur8lmb/)
Название: Re: Не выполняется отладка кода
Отправлено: Виктор Чекалин от 25-03-2016, 09:29:05
evthisrel, добрый день. Приветствую на форуме.
Какой значение стоит поле Platform в свойствах проекта? Должно быть AnyCPU.
Название: Re: Не выполняется отладка кода
Отправлено: Максим Маркевич от 25-03-2016, 11:32:47
evthisrel, добрый день. Приветствую на форуме.
Какой значение стоит поле Platform в свойствах проекта? Должно быть AnyCPU.
Все точно так же, как у Вас.

(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fs7.postimg.org%2Fyjxlil70n%2FScreen_Shot_03_25_16_at_11_30_AM.jpg&hash=1443684b2bf0682b47b924b8dbc1c11b) (http://postimg.org/image/yjxlil70n/)
Название: Re: Не выполняется отладка кода
Отправлено: Виктор Чекалин от 25-03-2016, 11:35:51
evthisrel, тьфу ты, видимо еще не проснулся с утра)
Ошибка говорит о том, что проект вида Library DLL нельзя запустить. Нужно указать, какую программу запускать при дебаге DLL. На вашем же скрине, выберите пункт Start external program и укажите пусть к Revit, который уже указан.
Название: Re: Не выполняется отладка кода
Отправлено: Максим Маркевич от 25-03-2016, 12:34:27
Виктор Чекалин, так это понятно.. На данном скрине не активна, потому что я пробовал по-всякому.
Название: Re: Не выполняется отладка кода
Отправлено: Александр Ривилис от 25-03-2016, 12:49:45
evthisrel,
1) Сам Revit запускается если вы запускаете отладку? Если нет, то правильный ли путь к Revit.exe?
2) Если вместо запуска отладки вручную запустить Revit и выполнить в Visual Studio Attach to... к процессу Revit.exe?
3) Почему у вас на скрине (последнем) отмечено Start project, а не Start external program?
Название: Re: Не выполняется отладка кода
Отправлено: Виктор Чекалин от 25-03-2016, 13:15:04
evthisrel, второй скрин вообще ошибкой не является.
А вот это (http://adn-cis.org/forum/index.php?topic=887.msg12390#msg12390) наверняка поможет. Зайти в настройки Visual Studio, найти пункт Debugging и поставить галочку Use Managed Compatibility Mode
Название: Re: Не выполняется отладка кода
Отправлено: Максим Маркевич от 25-03-2016, 13:35:51
Виктор Чекалин, Александр Ривилис,
Записал видеопояснинение, возможно, так будет понятнее..
[ Invalid YouTube link ]&feature=vm
Название: Re: Не выполняется отладка кода
Отправлено: Виктор Чекалин от 25-03-2016, 13:49:19
evthisrel, видео вопрос.. Круто, еще такого не было:)
По порядку, что значит первая ошибка (скрин №3 из первого сообщения). В видео звучит вопрос, который уже содержит ответ. Вопрос, звучит так: "Почему программа не выполняется". А потому и не выполняется, потому что плагин - это не программа. Вернее не самостоятельная программа, а только та, которая может работать внутри другой программы, в данном случае Revit.
Но в целом, плагин представляет собой DLL которую нельзя запустить на выполнение.
Что касается второго вопроса про Warnings. Опять же, это не является причиной того, почему отладка не работает. Как ее починить я уже написал. А предупреждение говорит лишь о том, что в проекте подключены 64-битные библиотеки RevitAPI.dll, а проект компилируется как под 32-битную архитектуру, так и под 64-битную. Убрать их можно, выставив в свойствах проекта, что собирать его только под 64-битную архитектуру, но в таком случае, для 32-битной версии Revit надстройку нужно будет собирать отдельно. Возможно можно это предупреждение отключить в настройках Visual Studio.
Название: Re: Не выполняется отладка кода
Отправлено: Александр Ривилис от 25-03-2016, 14:04:58
evthisrel,
В дальнейшем для записи видео используй Autodesk Screencast (как указано у меня в подписи). Будет видно какие клавиши ты нажимал.
Судя по видео Revit не запустился полностью (застрял на заставке), когда ты вызвал Debug...
Я же имел в виду запустить Revit с иконки самого Revit и когда он нормально запустится выполнить из Visual Studio Attach to...
Название: Re: Не выполняется отладка кода
Отправлено: Александр Ривилис от 25-03-2016, 14:19:48
Возможно можно это предупреждение отключить в настройках Visual Studio.
Можно: http://thebuildingcoder.typepad.com/blog/2013/06/processor-architecture-mismatch-warning.html
Мы это здесь обсуждали для AutoCAD: http://adn-cis.org/forum/index.php?topic=2956.msg15770#msg15770
Название: Re: Не выполняется отладка кода
Отправлено: Александр Ривилис от 25-03-2016, 14:39:40
Еще одно обсуждение на эту тему для VS 2015 SP1 и Revit 2016: https://forums.autodesk.com/t5/revit-api/visual-studio-2015-sp1/m-p/5932318#M13077
Решение всё тоже: Tools > Options > Debugging и включить "Use Managed Compatibility Mode"
Название: Re: Не выполняется отладка кода
Отправлено: Максим Маркевич от 25-03-2016, 15:04:28
Виктор Чекалин, Александр Ривилис,
Опять же, мне так проще объяснять, быстрей получается (извиняюсь, если это не удобный формат):
Название: Re: Не выполняется отладка кода
Отправлено: Виктор Чекалин от 25-03-2016, 15:15:38
evthisrel, Максим, опять же в вопросе содержится ответ. В самом конце говоришь, "..вот я жду когда она выполняется, да она даже и не выполняется..."
Так правильно, точка остановки говорит о том, чтобы прервать дальнейшее выполнение кода при выполнении программы. А на видео я не увидел, что команда была запущена из Revit. Т.е. этот код не выполнялся, поэтому и не было остановки на этой точке. А выполнится он тогда, когда эта команда будет явно запущена из интерфейса Revit.
Off-Topic: показать
все таки правильно Revit, а не Revit
Название: Re: Не выполняется отладка кода
Отправлено: Александр Ривилис от 25-03-2016, 15:29:20
Опять же, мне так проще объяснять, быстрей получается (извиняюсь, если это не удобный формат):
1) У меня нет возможности слушать то, что ты говоришь на видео. Поэтому в дальнейшем используй Autodesk Screencast. Считай что это требование администратора форума.
2) Я не увидел и ты не сказал ничего по поводу Tools > Options > Debugging и включить "Use Managed Compatibility Mode". Сделал ты его, не сделал ты его?
Не понятно как тебе помогать, если с твоей стороны нет реакции.
Остальное тебе написал Виктор Чекалин. Ты действительно решил, что если выполнишь Attach to..., то у тебя сразу начнётся выполняться твой код? Я не увидел того, чтобы ты запустил команду.
Название: Re: Не выполняется отладка кода
Отправлено: Виктор Чекалин от 25-03-2016, 15:37:49
1) У меня нет возможности слушать то, что ты говоришь на видео. Поэтому в дальнейшем используй Autodesk Screencast. Считай что это требование администратора форума.
Я бы сказал вообще видео вопросы - плохой формат. Не у всех есть возможность слушать, вопрос невозможно найти поиском. А даже если найти тему поиском, то просматривать кучу времени все видео - никто не будет. ТАк что на видео можно давать только пояснения, что никак не удается выразить текстом. Желательно чтобы видео было понятно без звука
Название: Re: Не выполняется отладка кода
Отправлено: Максим Маркевич от 25-03-2016, 16:40:27
Виктор Чекалин, Александр Ривилис, Прошу прощения. Еще раз все внимательно прочел-перевел. Теперь все работает!
Не понятно как тебе помогать, если с твоей стороны нет реакции.
Отсутствие даже понимания того, что такое отладка привело к ряду "идиотских" движений с моей стороны. Еще раз за это извиняюсь!
Еще кое-какие моменты не совсем понятны, но уже стемновато спрашивать, надо подтянуть базу, я поторопился с созданием темы. (
И огромное спасибо за помощь, очень многие моменты прояснились.
Скринкаст-решение:
Название: Re: Не выполняется отладка кода
Отправлено: Александр Ривилис от 25-03-2016, 16:53:24
evthisrel
Ну так совсем же другое дело. :) А если бы ты еще и дочитал у меня в подписи как правильно вставлять видео (с использованием тэгов [asc]...[/asc]), то было бы совсем замечательно...