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

ADN Club => ObjectARX => Тема начата: Ura от 02-08-2016, 13:52:16

Название: Отладка приложения для AutoCAD2015
Отправлено: Ura от 02-08-2016, 13:52:16
Пробую создать проект из примеров в ObjectARX 2015\samples   (если точно - ObjectARX 2015\samples\editor\SimpleToolPalette_dg)
Проект успешно строится, но не содержит отладочной информации
При создании проекта выводит сообщение
rxapi.lib(libinit.obj) : warning LNK4099: PDB 'rxapi_cl.pdb' was not found with 'rxapi.lib(libinit.obj)' or at 'C:\ObjectARX 2015\samples\editor\SimpleToolPalette_dg\x64\Debug\rxapi_cl.pdb'; linking object as if no debug info

При загрузке, приложение успешно загружается в AutoCADx64 под Windows 7x64 и выполняется

Вопрос
Как построить приложение с отладочной информацией?

Точки останова использовать не получается - выводит сообщение
The breakpoint will not currently be hit. No symbols have been loaded for this document.
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 02-08-2016, 14:26:03
Проект успешно строится, но не содержит отладочной информации
Содержит. Это тебе только кажется, что не содержит. :)
rxapi.lib(libinit.obj) : warning LNK4099: PDB 'rxapi_cl.pdb' was not found with 'rxapi.lib(libinit.obj)' or at 'C:\ObjectARX 2015\samples\editor\SimpleToolPalette_dg\x64\Debug\rxapi_cl.pdb'; linking object as if no debug info
Это библиотеки самого AutoCAD, для которого нет отладочной информации в составе ObjecARX SDK. Так что отлаживать сам AutoCAD ты не можешь, а своё приложение запросто.
The breakpoint will not currently be hit. No symbols have been loaded for this document.
Тут нужно смотреть в каком каталоге находится pdb-файл для этого примера и почему отладчик его не видит.
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 02-08-2016, 14:43:20
Проверил это пример "как есть", только переключил его на Debug x64 и указал отладчику использовать путь к acad.exe из AutoCAD 2015. Всё прекрасно сработало:

(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F50455%2F7842324.6%2F0_12f82d_62fd20c7_orig.png&hash=a4fd42c7686838c5fd8de6a1e59196f7)

Так что проверь опции отладчика.

Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Ura от 05-08-2016, 15:40:21
Цитировать
Проверил это пример "как есть", только переключил его на Debug x64 и указал отладчику использовать путь к acad.exe из AutoCAD 2015. Всё прекрасно сработало:

Александр, уточните пожалуйста, где нужно установить путь к acad.exe
Я добавил в Configuration Properties > C/C++ > Geheral > Additional #using Directories
путь
C:\Program Files\Autodesk\AutoCAD 2015
Но не помогло
Картинка ниже - с настройками

(https://s32.postimg.org/v872pjvip/005.png) (https://postimg.org/image/v872pjvip/)
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 05-08-2016, 16:07:29
Александр, уточните пожалуйста, где нужно установить путь к acad.exe
Я добавил в Configuration Properties > C/C++ > Geheral > Additional #using Directories
путь
C:\Program Files\Autodesk\AutoCAD 2015
Но не помогло
Картинка ниже - с настройками

:) Ну конечно же здесь:

(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F131807%2F7842324.6%2F0_130c54_361fcca9_orig.png&hash=0ce94533c6b6fbdabdc780506e92218f)

Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Ura от 05-08-2016, 17:20:41
Отрыл проект из архива (чтобы был как после установки ObjectARX)
Установил опции как на картинке
Перестроил проект

Ничего не изменилось
После подключения к процессу, точки останова недоступны и соответственно Отладка тоже недоступна.
Программа выполняется но в точках останова не останавливается.

Может еще что-то пропустил?
Используется Visual Studio Ultimate 2012 Update 4
Windows 7 x64
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 05-08-2016, 17:23:55
Ничего не изменилось
После подключения к процессу, точки останова недоступны и соответственно Отладка тоже недоступна.
Программа (т.е. asdkSimpleToolPalette.arx) в AutoCAD загружена?
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 05-08-2016, 17:35:04
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Ura от 05-08-2016, 18:40:03
Спасибо за видео

Открыл файл из архива (чтобы было как после установки ObjectARX)
Устанавливаю опции как на картинке

Далее как на видео
Перекомпилировал проект
Запускаю отладку - выводит сообщение, что не находит файлов PDB, как показано на картинке ниже
Загружаю файл в AutoCAD
Программа запускается, но отладка недоступна

В папке имеется файл asdksimpletoolpalette.pdb и asdkSimpleToolPalette.arx

В  C/C++ > Output Files > Program Database File Name
установлено значение $(IntDir)$(TargetName).pdb

При запуске отладки выводит вот это сообщение.
Ниже показывает список файлов, в которых не находит файлы PDB

(https://s31.postimg.org/mlondkq93/007.png) (https://postimg.org/image/mlondkq93/)
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 05-08-2016, 18:45:12
Для acad.exe и тех файлов из списка и не должно быть отладочной информации. А вот почему не загружает asdksimpletoolpalette.pdb - не знаю.
Попробуй отладку с другим проектом из ObjectARX SDK. Если и там не заработает, то вероятно что-то сбито в настройках Visual Studio.
Возможно отладчику указано отлаживать только Managed код, а необходимо еще и Native.
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Ura от 09-08-2016, 00:32:07
Цитировать
Попробуй отладку с другим проектом из ObjectARX SDK. Если и там не заработает, то вероятно что-то сбито в настройках Visual Studio.
Возможно отладчику указано отлаживать только Managed код, а необходимо еще и Native.

С другими примерами та же ситуация.
Устанавливал Native - ничего не изменилось.
Пробовал сделать проект без библиотек ObjectARX - отладка работает.

Мне сейчас нужно обновить проект, который я делал для более ранней версии ObjectARX - сделал миграцию, подправил код, чтобы правильно компилировался, но застрял на проблеме отладки.
Теперь не знаю что и делать, отлаживать без возможности отладки - это нереальная задача ...  :(

Спасибо, буду разбираться
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 09-08-2016, 01:15:15
Первый раз с таким сталкиваюсь. И никогда такое не попадалось в интернете. А когда загружаешь arx-приложение в AutoCAD, точки остановки становятся заполенными кружками или нет? Таким образом можно понять увидел ли отладчик отладочную информацию в arx-файле или нет.
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 10-08-2016, 12:24:53
Отделил вопросы связанные с загрузкой приложения как доверенного в отдельную тему: http://adn-cis.org/forum/index.php?topic=7260.0
В дальнейшем прошу придерживаться правила: "Один вопрос - одна тема".
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Ura от 27-08-2016, 00:55:56
Установил настройки как на картинке ниже, после этого символы стали загружаться и начала работать отладка

Сервис \ Параметры \

(https://s15.postimg.io/mu97jls63/image.png)
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Александр Ривилис от 27-08-2016, 00:59:14
Подозреваю, что была установка "Только указанные модули" и само-собой никакие модули указаны не были. Остальные установки никакого отношения к отладке ObjectARX-приложений отношения не имеют, но зато сильно тормозят запуск отладчика.
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: Debalance от 21-09-2016, 16:05:12
... но зато сильно тормозят запуск отладчика.
Это точно - надо снять галочку "Серверы символов Microsoft".
Название: Re: Отладка приложения для AutoCAD2015
Отправлено: DimVer от 11-04-2022, 14:30:55

Спасибо! Столкнулся с аналогичной проблемой. Сделал как на видео - заработало.