Форум программистов, компьютерный форум CyberForum.ru

Отладка - C++

Восстановить пароль Регистрация
 
D1garch
0 / 0 / 0
Регистрация: 30.07.2012
Сообщений: 27
30.07.2012, 13:25     Отладка #1
Всем доброго времени суток!

Я новичок на этот форуме, да и вообще в программировании.
Я начал заниматься написанием плагинов на С++ для программы InDesign.
Вопрос заключается в следующем: как мне сделать отладку программы? Тобишь я запускаю плагин в InDesign'е и мне нужно видеть что выполняет плагин. Построчно. Любой вызов. Или это должно быть реализовано в виде лога? Если да, то как реализовать этот лог?

Заранее большое спасибо!

UPD: Работаю в Visual Studio 2008
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2012, 13:25     Отладка
Посмотрите здесь:

C++ Отладка программы
Отладка C++
C++ Отладка :)
C++ Отладка
C++ Отладка в Dev C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
30.07.2012, 13:28     Отладка #2
D1garch, Вашь плагин?Или левый? ИМХО но я в отладчики не силен,но мне кажется это будит трудно не знающим людям...
D1garch
0 / 0 / 0
Регистрация: 30.07.2012
Сообщений: 27
30.07.2012, 13:31  [ТС]     Отладка #3
Плагин не мой. Мне передали дело, сказали "разбирайся, учись"
Нужно мне это для того, что бы понять как вообще эти плагины работают. Тупо перекапывая код - времени уйдет уйма.
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
30.07.2012, 13:33     Отладка #4
D1garch, Хехе ))) Если исходник есть,почему не посмтореть в исходнике?Вить что бы через отладчик было легче посмотреть надо быть asm мастером )))
D1garch
0 / 0 / 0
Регистрация: 30.07.2012
Сообщений: 27
30.07.2012, 13:35  [ТС]     Отладка #5
Понятно. Значит единственный нормальный вариант - перекапывать код?
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
30.07.2012, 13:37     Отладка #6
D1garch, Честно скажу Я бы копал код,нежели смотрел в отладчике,проста я в нем не силен...Ну если конечно вы имеете определенные знания,то можна и даже нужно в отладчике посмореть,что да как....
D1garch
0 / 0 / 0
Регистрация: 30.07.2012
Сообщений: 27
03.08.2012, 15:04  [ТС]     Отладка #7
А вот теперь появилась проблемка. У меня есть 2 проекта в VS 2008. в одном проекте дебаг можно стартануть, а в другом - кнопочка старта дебага не активна. и в чем самый прикол - на другой машине, точно такой же, дебаг активен в обоих таких же проектах.

Как быть?
moshennik
8 / 8 / 1
Регистрация: 28.03.2011
Сообщений: 36
03.08.2012, 15:12     Отладка #8
По-моему, если вы хотите отладить библиотеку или плагин, то вы должны указать в настройках данного проекта целевой проект(тот который будет обращаться к этому проекту) тогда дебаг будет активен и сначала будет запускаться целевой проект а потом уже ваш...
Попробуйте поискать в настройках проекта или отладчика, к сожалению под рукой VS нет, поэтому не могу точно сказать...
Как-то так....
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,040
03.08.2012, 15:16     Отладка #9
Цитата Сообщение от D1garch Посмотреть сообщение
У меня есть 2 проекта в VS 2008. в одном проекте дебаг можно стартануть, а в другом - кнопочка старта дебага
а где ты там увидел кнопку Дебага?
ставь точку останова и жми F5
потом F10 пошаговый без захода в функции
F11 пошаговый с заходом в функции
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
03.08.2012, 15:31     Отладка #10
Еще есть возможность аттачиться к другому процессу для его отладки. Для этого и проект не обязателен. Главное чтобы были доступны исходники и pdb файлы отлаживаемого процесса. Итого запускаем студию с плагином, запускаем вторую студию, в которой будем отлаживать первую сдутию. Аттачимся из второй студии к первой и пробуем хоть что-то сделать.
Ctrl-Alt-P или через меню Tools->Attach to process.
Т.е. в этом сценарии не обазательно из второй студии нажимать F5. Достаточно чтобы отлаживаемый процесс уже был запущен.

Бывает так, что отлаживать нужно что-то, что стартует достаточно быстро и все самое интересное уже произошло. В этом случае проект можно настроить на то, чтобы он запускал нужний бинарь и далее по F5 этот бинарь запустится и студия уже будет приатачена к нему для отладки. Второй вариант - перед интересующим местом вставляется синхронный вывод окна какого-нибудь (простой assert(!"Ready to debug") вполне подойдет, потому что выводит как раз подобное окошко.) И вот когда окошко появляется, процесс больше ничего не делает, потому что окошко синхронное и пока оно не закроется, выполнение не продолжится. Аттачимся студией к нужному нам процессу. Далее закрываем это вылезшее окошко и процесс продолжит свое выполнение начиная с места за этим ассертом.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.08.2012, 15:39     Отладка
Еще ссылки по теме:

Отладка C++
C++ Отладка
C++ Отладка

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
D1garch
0 / 0 / 0
Регистрация: 30.07.2012
Сообщений: 27
03.08.2012, 15:39  [ТС]     Отладка #11
Спасибо Вам всем огромное) Я как слепой забыл поставить StartUp)))
Yandex
Объявления
03.08.2012, 15:39     Отладка
Ответ Создать тему
Опции темы

Текущее время: 01:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru