powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
11 сообщений из 11, страница 1 из 1
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39698942
sayrus-smith
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
из программы на Embarcadero c++ 10.1(upd2) используем DirectOracleAccess41
TOracleQuery работает по-разному для платформ 32х и 64х разрядов:
если запрос правильный , то он выполняется,
если запрос неправильный (не может выполниться), то на 32х возникает Exception, который можно обработать,
на 64х - НЕ возникает Exception, программа рушится с окном Windows "Прекращена работа",
а отладчик выдает "с0000005 ACCESS_VIOLATION".
На форумах такая ошибка описывается в случаях некорректной работы с памятью.
Тут просто
q->SQL->Clear();
q->SQL->Add("...");
try {
q->Execute();
}catch(...) {
...
}
по стеку похоже циклится
rtl240.bpl
rtl240.bpl
ntdll.dll
ntdll.dll
ntdll.dll
...
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39698943
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поставь максимальный уровень предупреждений при компиляции. Наверняка где-то запихивается
указатель в целое число.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39698987
sayrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

в тесте только эти строчки
Enable all warning [v] true
warning-ов нет
для х32 нормально работает
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39698991
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Включить генерацию map-файла, потом DrMemory в руки и смотреть где конкретно идёт облом с
памятью.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39698994
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или, раз уж у тебя билдер, используй CodeGuard (если его ещё не выпилили из Берлина).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39699010
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sayrus-smith,

debug dcu включи, может найдешь место точнее где валится.
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39699036
sayrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
makhaon,

CodeGuard не помогает
точное место отладчик показывает - не у меня
для х32 Exception ORA-... нормально перехватывается.
Может для х64 не те dll подтягиваются (пробовал с/без link with dynamic RTL)
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39699109
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sayrusCodeGuard не помогает
Да ну? А как ты его применял?

sayrusточное место отладчик показывает - не у меня
Это всего лишь значит, что AV - вторичная ошибка, вызываемая попыткой поймать исключение
при уже разрушенной памяти. Попробуй убрать catch.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39699136
sayrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Tools codeGuard configuration
[v]enabled

option c++compililer
debugging
enableCodeguard [v]
All platform

(правда почему-то такая опция есть только в х32, в х64 - нет
в x32 файл .cgl создается, в х64 - нет)

Execute() без try... catch - та же ошибка AV (try есть еще в tWinMain)
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39699156
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sayrusтакая опция есть только в х32, в х64 - нет

Значит они его так и не допилили для 64 битов. Ну, тогда остаётся только DrMemory.

sayrusв x32 файл .cgl создается
Это значит, что даже в 32-х битах у тебя какая-то проблема с памятью. Читать и убивать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
    #39699163
sayrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

в cgl от х32 нет ошибок, только вызовы фунций, dll
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ошибка с0000005 ACCESS_VIOLATION в embarcadero 10.1 berlin для x64
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]