Это должно быть ошибка Delphi ...
У меня есть юнит, который является основой моей системы персистентности. В этом модуле у меня есть базовый класс для всех моих доменных объектов, класс списка и универсальный класс списка.
Совсем недавно я заметил, что когда я захожу в модуль во время отладки, выполнение будет переходить к точке немного дальше в файле, чем следовало бы ... Может быть, четыре или пять строк. Переупорядочение файла не имеет значения. Код также будет генерировать нарушения прав доступа, но только тогда, когда я отлаживаю его.
Я попытался выяснить причину этого ... На ум пришло несколько вещей, например, привинчивание кода с помощью отладчика (например, ошибка драйвера веб-камеры logitec ) или информация об отладке не синхронизирован с источником моего устройства (например, dcu был извлечен из какого-то старого источника).
В конце я запустил виртуальную машину с чистой установкой Windows + Delphi, собрал только то, что мне нужно для тестирования устройства, и я создал небольшой проект DUnit для его тестирования. Та же проблема.
Затем я начал снимать вещи с устройства по одному, пока оно не заработало. Единственное, что имело какое-либо значение, было то, что я удалил класс общего списка.
Кто-нибудь еще видел эту проблему? Кто-нибудь знает как это обойти?
Заранее спасибо,
N @
Обновление : добавление универсального элемента обратно в устройство приводит к возникновению проблемы, поэтому это не проблема устаревших DCU.