gonzales Опубликовано 12 ноября, 2018 Поделиться Опубликовано 12 ноября, 2018 Доброго времени суток Столкнулся со странным поведением IDE Хочу посмотреть, что происходит внутри модуля idHTTP. Но не могу поставить точку остановки. Многие строки не подсвечиваются синим кружком. См скрин. Как-то можно это исправить? Заранее спасибо за ответы Цитата Ссылка на комментарий
0 Barbanel Опубликовано 12 ноября, 2018 Поделиться Опубликовано 12 ноября, 2018 Если вы видите что в одной процедуре кружки есть, а в другой нет - это значит что этот код (который без кружка) не скомпилирован и в данном не используется. Говоря по другому, вы не можете эту процедуру продебажить потому что ее никто не вызывает (ни вы, ни сам компонент). В данном случае - это не глюк) Anatoliy 1 Цитата Ссылка на комментарий
0 GASCHE Опубликовано 12 ноября, 2018 Поделиться Опубликовано 12 ноября, 2018 1 час назад, Barbanel сказал: потому что ее никто не вызывает C этим понятно, но 1 час назад, Barbanel сказал: это значит что этот код (который без кружка) не скомпилирован не понятно, означает ли это что компилятор сам определяет какие процедуры и переменные из компонента используются и только их компилирует? Цитата Ссылка на комментарий
0 Barbanel Опубликовано 12 ноября, 2018 Поделиться Опубликовано 12 ноября, 2018 4 минуты назад, GASCHE сказал: компилятор сам определяет какие процедуры и переменные из компонента используются и только их компилирует Именно! Цитата Ссылка на комментарий
0 gonzales Опубликовано 12 ноября, 2018 Автор Поделиться Опубликовано 12 ноября, 2018 3 часа назад, Barbanel сказал: это значит что этот код (который без кружка) не скомпилирован и в данном не используется Это я знаю. Парадокс в том, что я перехожу в процедуру в модуль из своего кода и пытаюсь ее отдебажить. Условно, вот код Stream:=TStringStream.Create; form1.IdHTTP1.URL.Host:='192.168.0.16'; form1.IdHTTP1.URL.Port:='554'; form1.IdHTTP1.URL.Username:='admin'; form1.IdHTTP1.URL.Password:='admin'; form1.IdHTTP1.URL.Protocol:='rtsp'; form1.IdHTTP1.Options('rtsp://admin:admin@192.168.0.16:554/live/ch00_0',Stream); Memo1.Lines.Add(Stream.DataString); Stream.Free; Я хочу посмотреть, как выполняется запрос OPTIONS. Тыкаю в него мышкой с Ctrl, попадаю в модуль idHTTP procedure TIdCustomHTTP.Options(AURL: string; AResponseContent: TStream); begin DoRequest(Id_HTTPMethodOptions, AURL, nil, AResponseContent, []); end; И на DoRequest breakpoint не ставится. Соответственно внутри DoRequest тоже некуда ставить точки остановки. Цитата Ссылка на комментарий
0 Barbanel Опубликовано 12 ноября, 2018 Поделиться Опубликовано 12 ноября, 2018 Возможно есть еще одна перегруженная процедура .Options Проверил, их две. Какая именно вам нужна? Далее, Build Configurations - Debug или Release? В настройках проекта/компилятора, Use Debug DCU - True или False? Цитата Ссылка на комментарий
0 gonzales Опубликовано 12 ноября, 2018 Автор Поделиться Опубликовано 12 ноября, 2018 (изменено) Они отличаются лишь возможностью задать кодировку стрима. Мне вообще нужна процедура DoRequest, на нее ссылаются и одна и вторая процедуры. Конфигурация Debug. Настройки DEbug на скрине. Изменено 12 ноября, 2018 пользователем gonzales Цитата Ссылка на комментарий
0 GASCHE Опубликовано 12 ноября, 2018 Поделиться Опубликовано 12 ноября, 2018 Ну не знаю ... Цитата Ссылка на комментарий
0 gonzales Опубликовано 12 ноября, 2018 Автор Поделиться Опубликовано 12 ноября, 2018 угу((( буду копать Цитата Ссылка на комментарий
Вопрос
gonzales
Доброго времени суток
Столкнулся со странным поведением IDE
Хочу посмотреть, что происходит внутри модуля idHTTP. Но не могу поставить точку остановки. Многие строки не подсвечиваются синим кружком. См скрин. Как-то можно это исправить?
Заранее спасибо за ответы
Ссылка на комментарий
8 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.