|
|
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Доброго дня. Уважаемые, помогите советом. Столкнулся с такой парадоксальной проблемой в Delphi 7. Открыл одну форму старого проекта. Форма чрезвычайно перегружена вкладками, гридами, датасетами. Всего задекларировано на форме 2097 объектов. И в модуле километры кода. Нужно было добавить еще один обработчик. Случайно обнаружил, что при компиляции часть кода помечается как «неиспользуемый» - не ставятся «синие точки» слева (неверно! код гарантированно выполняемый!) и не работают точки останова. При чем, на «неиспользуемой» строке предсказуемо красная строка точки останова становится зеленой, а на строке кода, которую компилятор пометил как «используемую» (синяя точка стоит), точка останова ставится (красная), но в момент выполнения на ней программа не останавливается. При этом, в обоих случаях программный код благополучно выполняется!! Итого две проблемы: 1. В момент компиляции неверно определяется «исполняемая/неисполняемая» строка программного кода 2. Нигде и не при каких условиях не работают точки останова Замечу, что в остальных формах проекта таких проблем нет. Далее было долгое и мучительное ковыряние причин. Было предположение, что где-то в каком-то куске кода проблемы, может быть какой-то спец-символ стоит и ведет Дельфю к неадекватности. В итоге пришли к такой картине – Весь, абсолютно весь программный код был удален. Оставлен только: procedure TXXXForm.FormCreate(Sender: TObject); begin showmessage('!!'); end; на showmessage стоит точка останова и она НЕ работает. Тупик. Далее абсолютно случайно был удален один очень «тяжелый» cxGrid, содержащий в себе десяток левелов с ДиБиТайблВьюхами в каждой из которых около 30 колумнов, компиляция, запуск и…. точка останова сработала. Далее, после очень большого количества экспериментов пришел к выводу – виной всему количество объектов на форме. Произвольное удаление ЛЮБЫХ объектов в существенном объеме приводит к тому, что точка останова начинает работать корректно. Был удивлен таким положением дел. Уважаемые, что скажите? Как побороть? Заранее – спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 11:47 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Ребилд проекта сделайте. Предварительно удалите все DCU. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 11:48 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Прохор, Открыть исходник в Notepad++, поменять концы строк сначала на Unix (LF), потом на Windows (CR LF), сохранить исходник. После этого проверьте. P.S: Я надеюсь вы сообразили сделать резервную копию проекта перед всеми экспериментами? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:05 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, не помогло (( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:24 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Прохор Гаджимурадов Рустам, не помогло (( Точки останова расположенные не в тех местах говорят о том, что текстовый код и скомпелированный с DCU отличаются. То есть DCU цепляются с другого места ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:34 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Приложи проект архивом (сторонние либы используются) ? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:34 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
alekcvp, не помогло (( Гаджимурадов Рустам постараюсь сделать отдельный маленький проектик с одной этой формой и выложу. чуть позже. Еще раз подчеркну главный момент - я не вношу никаких изменений, просто удаляю с формы произвольные компоненты с формы и все работает. мне кажется это ключевое. но могу и ошибаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:39 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
ПрохорБыл удивлен таким положением дел.А таким кол-вом кода и объектов не удивлен ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:39 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
L_argo ПрохорБыл удивлен таким положением дел. никогда и нигде не встречал инфы, что есть какие-либо подобные ограничения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:45 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
DimaBr Прохор Гаджимурадов Рустам, не помогло (( Точки останова расположенные не в тех местах говорят о том, что текстовый код и скомпелированный с DCU отличаются. То есть DCU цепляются с другого места Чаще встречалось из-за того что код откуда-то копировался и вставлялись нестандартные концы строк. И тогда у компилятора "съезжали" номера строк, относительно редактора. Т.е. где-то в коде точек не было, а где-то они были на неисполняемых строках, типа procedure blabla... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:52 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Создайте новый проект, скопируйте в него вашу "тяжёлую" форму, сохраните в отдельную папочку и компельните. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 12:55 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Вот, кому интересно. Во вложении тестовый мини- проектик, с одной этой формой. Все помаксимому вырезал и лишнее убрал. Нужна devexpress библиотека. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:03 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Toolbar2000 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:15 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
DimaBr Toolbar2000 ? да, про него забыл. Toolbar2000 + DevExpress. Больше, кажется, ничего нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:17 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Выкинул T2000 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:33 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
DimaBr, с удаленным тулбаром у меня аналогично (см.вложение). Такого же результата добиваюсь, если с формы произвольно удалить несколько любых других объектов. В том виде, что выложил в архиве, т.е. без удаления тулбара либо любых других объектов - результат как в первом сообщении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:44 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Такое ощущение, что кто-то лохматит бабушку. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:47 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, ??? мне сделать видео с экрана? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:53 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Прохор В том виде, что выложил в архиве, т.е. без удаления тулбара либо любых других объектов - результат как в первом сообщении. Ваш архив подразумевает установку T2000, коего у меня нет. Очень сомневаюсь, что удаление ТВ может повлиять на компиляцию. Видал формы и поболее, которые прекрасно компиляются. Некорректные точки останова встречал только из-за неправильного подхватывания DCU. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:55 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Ну проверьте пути каталогов в опциях проекта. И добавьте что-нибудь ненужное на форму - label, кнопку. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:55 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
DimaBr прекрасно компиляются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 13:59 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
DimaBr, Проект компилится и запускается с тулбаром и без него! Вопрос только в том - работает или нет точка останова. Удаление тулбара (который содержит большое количество элементов) в данном случае эквивалентно удалению, допустим одного или двух гридов. Т.е. кол-во объектов на форме уменьшается, точка останова появляется. Сейчас постараюсь сделать видео с экрана (только без звука) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 14:01 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 14:11 |
|
||
|
Delphi 7. На "тяжелой" форме не работают точки останова, некорректно ведет себя компилятор
|
|||
|---|---|---|---|
|
#18+
Прохор Удаление тулбара (который содержит большое количество элементов) в данном случае эквивалентно удалению, допустим одного или двух гридов. Удалите тулбар и добавьте пару сотен Хранимых процедур, чтобы количество компонентов не уменьшалось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2019, 14:29 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39905458&tid=2038703]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
147ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 459ms |

| 0 / 0 |
