Можно ли убрать отладочную информацию из DCU?
Я использую бесплатный встроенный NexusDB от GetIt, который поставляется без источников, только.DCU
Тем не менее, эти DCU содержат отладочную информацию, что сильно затрудняет отладку, т.е. когда я пытаюсь Step Into (F7)
мой код, IDE часто спрашивает меня о расположении исходного файла, скажем, nxdb.pas
, а затем, поскольку у меня нет такого файла, перейдите в представление CPU с разборкой только с номерами строк (см. пример внизу).
Та же проблема с Trace to Next Source Line (Shift+F7)
Папка "Библиотека NexusDB" содержит только одну версию.DCU, версия "Release" отсутствует
Итак, я подхожу к этому вопросу - есть ли способ убрать отладочную информацию из.DCUs?
Пример представления процессора только с номерами белья:
TnxDataset.Notification:
007930EC 55 push ebp
...
007930F7 8945FC mov [ebp-$04],eax
<unknown file>.10682:
007930FA 8BCB mov ecx,ebx
...
00793101 E8F6F9D3FF call TComponent.Notification
<unknown file>.10683:
00793106 8B45FC mov eax,[ebp-$04]
1 ответ
Я не знаю ни одной утилиты, которая сделает это за вас. Ваш лучший способ действий, вероятно, состоит в том, чтобы активно устанавливать точки останова в ваших обработчиках событий и т. Д. Я подозреваю, что наиболее распространенная причина запроса IDE об источнике - это когда возникают исключения; затем просто продолжайте бежать, чтобы увидеть исключение.