С Новым годом! Форум программистов, компьютерный форум, киберфорум
Низкоуровневое программирование
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
4174 / 1824 / 218
Регистрация: 06.10.2010
Сообщений: 4,111
1

Странное поведение при отладке

10.10.2017, 13:51. Показов 891. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Решил написать небольшую тулзу и столкнулся с проблемой: скомпилированный код прекрасно работает в отладчике, однако не работает без оного. Причём ошибки возникают в системных библиотеках.

Вот например при вызове CoCreateInstance
Странное поведение при отладке


Возможно приложение неправильно линкуется - часть кода написана на FASM`е и линкуется к основной программе на Delphi 7. Проблемы с obj возникли сразу - например если разместить переменные, которые содержат указатели на секцию кода (таблицы виртуальных методов) в секции данных, то Delphi выдаёт малопонятное "Internal error: LO1609". Я подозреваю, что Access Violation появляется при обращении к переменной в секции кода, но не на 100% уверен в этом, так как в отладчике адреса переменных другие (не $51F000) да и перед CoCreateInstance вызывается CLSIDFromString, в котором выполняется не только чтение, но и запись в переменные, расположенные в секции кода и оно не вызывает ошибок.

Кто нибудь сталкивался с нормальной работой в отладчике и ошибками без него? Чем это может быть вызвано?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.10.2017, 13:51
Ответы с готовыми решениями:

Пример moufiltr - странное поведение
Всем доброго времени суток. Пытаюсь разобраться с примером moufiltr. Компилируется, ставится...

Непонятное поведение при отладке
Доброго времени суток. Есть задание к лабораторной. 1. Отсортировать в заданном каталоге...

Странное поведение при буте
помогите разобраться. комп старенький достаточно, при включение питания пишет cmos checksum...

Странное поведение при делегировании
Доброй ночи, Господа. Пишу некую доп. функциональность к календарю, но дело, собственно, не в...

3
4174 / 1824 / 218
Регистрация: 06.10.2010
Сообщений: 4,111
10.10.2017, 15:14  [ТС] 2
Удалил все ненужные для компиляции файлы (*.dcu, *.cfg *.dof), перекомпилировал и о чудо - оно заработало. Но для меня остаётся загадкой, почему приложение может работать в отладчике и не работать без него. Я пробовал как встроенный в Delphi отладчик, так и Olly - результат одинаковый.
0
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
10.10.2017, 17:57 3
murderer, в делфи если вставляется что-то на ассемблере, то надо полностью отключать оптимизацию.
0
Asm/C++/Delphi/Py/PHP/VBA
6750 / 1997 / 231
Регистрация: 14.12.2014
Сообщений: 4,200
Записей в блоге: 12
12.10.2017, 10:20 4
Kukuxumushu, ну это ты уж загнул
Просто, видимо, этот FASM-код был заточен под определённые ключи компиляции (или, например, под Debug-профиль). Поэтому при других условиях вылезал такой косяк. В общем, проблема с FASM-кодом, судя по всему, криво написан.
0
12.10.2017, 10:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.10.2017, 10:20
Помогаю со студенческими работами здесь

Странное поведение ПК при старте
Всем привет!Во время запуска пк,кулера гаснут,изображения нету.Все это длится 1-2 секунды и...

Странное поведение при загрузке
Доброго времени суток! Ситуация такая,Имеется материнка ASUS P8P67 rev. B3 четыре планки памяти...

Странное поведение при работе с массивами
Здравствуйте! Есть код - from tkinter import Tk, Canvas arr = *10]*10 print(arr) def...

Странное поведение при открытии файлов
Странность вот в чём, в модель добавляется родитель(папки) и его дети(файлы). Добавляю 1 папку,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru