|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
09.05.2011, 00:50 | #1 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
Непонятный AV в процедуре ведения лога.
Всем доброго времени суток!
Возникает Acces Violation в следующем коде: Код:
Код:
Заранее спасибо! Последний раз редактировалось Человек_Борща; 09.05.2011 в 10:57. |
09.05.2011, 00:57 | #2 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
а какая строка кода выдает ошибку?
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
|
09.05.2011, 01:00 | #3 |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
Я сомневаюсь что асм-требуха MadExcept'а тут вообще нужна. Достаточно поставить бряк на интересующую строку и посмотреть что передаётся в качестве параметров.
Сливочное масло Valio - компиляция как по маслу
|
09.05.2011, 10:58 | #4 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
Строку с ошибкой выделил красным. Мне непонятно почему происходит эта ошибка...
|
09.05.2011, 12:54 | #5 |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
Хоть бы сообщение привёл.
...а, всё, увидел.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
09.05.2011, 13:00 | #6 |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
Я может чего не так читаю, но в логе написано что-то ОЧЕНЬ странное: сначала идёт вызов HLR_GetLogsDir, потом - формирование аргументов для неё. По-идее, должно быть наоборот.
Если закрыть на это глаза, то видно: 1. HLRSelfUpdLog - наследник TStrings (почему сам не сказал, кто это?). 2. Ошибка возникает при сохранении строк файл. Конкретно - при полученнии данных строки. Т.е. налицо проблема порчи памяти. Поскольку это лог, то наиболее вероятна порча из-за отсутствия синхронизации в многопоточном приложении.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
09.05.2011, 13:31 | #7 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
Ясно. Блоху тапочком не прибить. Вылазит.
Тогда как организовать логирование в многопоточном приложении? Что использовать? Чем руководствоваться? |
09.05.2011, 13:36 | #8 |
Форумчанин
Регистрация: 11.03.2011
Сообщений: 426
|
Поставьте семафор или мьютекс
|
09.05.2011, 16:42 | #9 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
|
09.05.2011, 20:16 | #10 | |
Форумчанин
Регистрация: 11.03.2011
Сообщений: 426
|
Попробуйте, вроде бы должно быть понятно:
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ведение лога изменений в базе | erzi | Microsoft Office Access | 6 | 02.02.2011 21:55 |
Ведения лога программы! | $T@LKER | Компоненты Delphi | 2 | 09.09.2010 15:36 |
Как лучше включать режим лога? | Alex Cones | Общие вопросы Delphi | 11 | 12.07.2010 00:07 |
Способы ведения файла-лога | Norfolk | Общие вопросы Delphi | 2 | 14.06.2007 20:47 |