![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить почему возникает access violation? :( [D7, MySQL]
Новичек © (2003-11-25 14:08:00)
Господа, подскажите, пожалуйста, пути решения. Хоть сам кой-какой опыт в Дельфи имею, но никогда не попадал в такую "тупую" ситуацию.
Пишу "проект" - Delphi 7, MySQL, EhLib.
Все было хорошо, но на каком-то этапе внезапно стала возникать ошибка "Access Violation по такому-то адресу (разные адреса)".
Возникает плавающе (не всегда) в следующей ситуации - открывается форма редактирования любой записи из базы - на форме есть два чекбокса - меняешь состояние любого - жмешь Ок - изменение сохраняется в базе и ошибка может выскочить (а может и не выскочить) именно в этот момент.
Причем, изменения состояния других компонентов никак не влияет.
Кто может подсказать - что можно сделать в такой ситуации? Никак не пойму отчего это, самое неприятное, что ошибка плавающая. :(
Отключал модули, куски "проекта" - не помогает.
Подозреваю, что глючит EhLib, но уверенности нет. Как бороться?
Не дайте погибнуть!
Sandman25 (2003-11-27 13:09:00) [1]
Понимаю. Старайтесь плохое прощать, а еще лучше забывать, здоровья больше сохраните. Впрочем, это уже offtopic.
Карелин Артем (2003-11-27 12:49:00) [2]
Да я вообще не обижаюсь, просто резок в суждении временами. Возраст такой.
Еще свежи в памяти моменты, когда проект с мегом исходников вдруг перестал загружаться по неизвестной причине и дельфи падала после каждой компилляции проекта на всех компах, куда я приносил проект просто из-за случайно поставленной галочки в опциях. Сколько нервов было потрачено и сколько пива выпито из-за гадкого настроения - не сосчитать.
Sandman25 (2003-11-27 12:41:00) [3]
[29] Карелин Артем © (27.11.03 12:38)
Тогда чего Вы обижаетесь на [17] Sandman25 © (26.11.03 12:32)
Похоже, что Вы-то умеете их использовать. А ругаете их за старые "заслуги", которые уже не используете :)
Карелин Артем (2003-11-27 12:38:00) [4]
Sandman25 © (27.11.03 12:32) [28]
Судя по исходникам автор хотел сделать эту фичу настраиваемой, но потом забросил это дело.
Я лично при установке этого пакета сразу меняю чуть-чуть код для жесткой привязки к именам.
Sandman25 (2003-11-27 12:32:00) [5]
[27] Карелин Артем © (27.11.03 12:28)
По стандарту SQL-92 нужны именно номера. Меняйте СУБД...
Шучу :) Я думаю, лучше переделать компонент, добавив еще одно поле UseFieldNameInOrderSection типа boolean
Карелин Артем (2003-11-27 12:28:00) [6]
Sandman25 © (27.11.03 12:12) [26]
У меня в FB через номера запросы не проходят...
Sandman25 (2003-11-27 12:12:00) [7]
[25] Карелин Артем © (27.11.03 11:53)
А разве не так надо?
select a from table
union
select b from table
order by имя_поля
Даже не будет работать в независимости от имя_поля.
А с номером - будет.
Карелин Артем (2003-11-27 11:53:00) [8]
Там выражение Order by заполняется номерами полей, а не именами.
Sandman25 (2003-11-27 11:49:00) [9]
>Значит ты не умеешь им пользоваться :)
А другой причины быть не может? Например, те СУБД, которые я использую, не поддерживают запросы вида select * from stored_proc :)
Карелин Артем (2003-11-27 11:45:00) [10]
Sandman25 © (27.11.03 11:37) [22]
Значит ты не умеешь им пользоваться :)
У вас винда работает без ошибок? А вы комп включать пробовали??
Sandman25 (2003-11-27 11:37:00) [11]
>Угу, а как насчет ошибки при сортировке запроса из хранимой процедуры этим самым компонентом?
Никак. Я никогда такое не использовал :)
Карелин Артем (2003-11-27 11:36:00) [12]
>Вывод - те, кто ругают EhLib, не знают, как правильно с ним работать :)
Угу, а как насчет ошибки при сортировке запроса из хранимой процедуры этим самым компонентом?
Johnmen (2003-11-26 12:39:00) [13]
>Anatoly Podgoretsky © (26.11.03 12:37)
:)))
Johnmen (2003-11-26 12:38:00) [14]
>Sandman25 © (26.11.03 12:32)
>Вывод - те, кто ругают EhLib, не знают, как правильно с ним работать :)
Вот это верно !
Anatoly Podgoretsky (2003-11-26 12:37:00) [15]
Johnmen © (26.11.03 12:27) [15]
Ну и что, пишут, а мы расхлебываем.
Знаешь что Жириновский про таких говорит :-)
Sandman25 (2003-11-26 12:32:00) [16]
[16] Johnmen © (26.11.03 12:29)
Но используются DCU, откомпилированные при B-.
Значит, при изменении EhLib нужно сделать аналогично.
Вывод - те, кто ругают EhLib, не знают, как правильно с ним работать :)
Johnmen (2003-11-26 12:29:00) [17]
При этом опция компилятора B никак не выставляется...
Johnmen (2003-11-26 12:27:00) [18]
Мужики, вы чего ? Гляньте исходники D. Там сплошь и рядом так пишется.
if (Value <> nil) and (Value.Height > 0) then
Карелин Артем (2003-11-26 12:23:00) [19]
Sandman25 © (26.11.03 12:05) [13]
Автору надо еще кое-что вставить...
Я про код говорю...
Sandman25 (2003-11-26 12:05:00) [20]
[12] Anatoly Podgoretsky © (26.11.03 11:59)
Точно. Автор мог был вставить $B- в начале каждой процедуры, где используются такие финты.