Текущий архив: 2007.05.27;
Скачать: CL | DM;
Вниз
Проблема выхода из приложения Найти похожие ветки
← →
Ega23 © (2007-05-04 17:29) [0]Есть exe + куча dll.
При запуске из-под отладчика, при выходе через какое-то время появляется окно CPU и следующий мессадж:Project ..\..\Release\ARM.exe raised too many consecutive exceptions^ "access violation at 0xcc342d24: read of address 0xcc342d24" Prcess stopped. Use ...
Если ставить брейкпоинт на end. программы, то после прохождения многих секций finalization в окне CPU видно, что полный завис происходит на call ntdll.ZwContinue
Подскажите, как бороться? Уже пол-дня бьюсь... :(
← →
clickmaker © (2007-05-04 17:33) [1]а куча DLL - твои?
← →
Ega23 © (2007-05-04 17:33) [2]Да.
← →
Desdechado © (2007-05-04 17:34) [3]Ctrl-F2 увлекаешься?
← →
Ega23 © (2007-05-04 17:35) [4]
> Ctrl-F2 увлекаешься?
Вообще-то нет. Как бы, по логике, и без Program Reset должно всё работать...
← →
Ega23 © (2007-05-04 17:36) [5]Настораживает тот факт, что адреса в AV одинаковые...
← →
clickmaker © (2007-05-04 18:07) [6]а во View CPU - Goto address что показывает?
← →
Зюзя (2007-05-04 20:29) [7]Может после выгрузки DLL идет обращение к каким-то экспортируемым функциям? Или, в DLL создаются некие экземпляры классов, и, на момент выгрузки DLL все еще висят в памяти (ну, не уничтожены). Да, и еще, формы в DLL есть? Если да, то их надо Release, а после этого еще и Application.ProcessMessages.
То есть, я хотел сказать, что проблема не в ntdll, а в том, что где-то что-то не уничтожается вовремя.
← →
Leonid Troyanovsky © (2007-05-05 10:29) [8]
> Ega23 © (04.05.07 17:29)
> Есть exe + куча dll.
Библиотеки соответствуют
http://www.microsoft.com/whdc/driver/kernel/DLL_bestprac.mspx ?
Ну, или скажи, threads используются?
--
Regards, LVT.
← →
DVM © (2007-05-05 15:39) [9]
> Ega23 ©
TIdUDPServer не используешь?
← →
Ega23 © (2007-05-07 09:20) [10]Снизу вверх начну...
> TIdUDPServer не используешь?
Нет. Из Indy вообще ничего не использую.
> Ну, или скажи, threads используются?
Да, используются.
А сами dll - суть хранилище COM-объектов.
← →
Leonid Troyanovsky © (2007-05-07 12:42) [11]
> Ega23 © (07.05.07 09:20) [10]
> > Ну, или скажи, threads используются?
> Да, используются.
> А сами dll - суть хранилище COM-объектов.
1. TThread исключи, только BeginThread.
2. Убери код из DLL_THREAD_DETACH, DLL_PROCESS_DETACH
--
Regards, LVT.
Страницы: 1 вся ветка
Текущий архив: 2007.05.27;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.042 c