Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.01;
Скачать: CL | DM;

Вниз

NoModalForm в Dll и Exception   Найти похожие ветки 

 
half_litre   (2004-07-15 12:18) [0]

Ситуация :

ExeNoModalForm(из EXE-ка) вызывает procedure RunNoModalForm
(в DLL-ке), которая создает DllNoModalForm.
//---------------------------------------------
procedure ExeNoModalForm.OnClose(...)
.....
.....
 try
    if (hndlDll<>-1) and (hndlDll>HINSTANCE_ERROR) then begin
       if (@DoneDll<>nil) then DoneDll;
       FreeLibrary(hndlDll);
    end;
 except
 end;
.....
.....
 Action:=caFree;
end
//---------------------------------------------
procedure DoneDll; //(в DLL-ке)

.....
.....
   if DllNoModalForm <>nil then DllNoModalForm.Close;

   Application.Handle:=OldAppHandle;
   Screen:=OldScr;
.....
.....
end;
//---------------------------------------------
procedure DllNoModalForm.OnClose(...)
.....
.....
 Action:=caFree;
end
//---------------------------------------------
Сам трабл :
Если закрыть ExeNoModalForm то все OK.
Если закрыть DllNoModalForm и с небольшой паузой закрыть
   ExeNoModalForm то тоже все OK.
Если закрыть DllNoModalForm и быстро закрыть ExeNoModalForm
   то Exception.

Замечено что если в Dll передовать не Application.Handle а сам
обьект Application во всех ситуация гуд. Но нужен именно
Application.Handle, без него в DllNoModalForm не
срабатывает Hint"ы.

Весь полный текст не привожу (сделаю по необходимости),
уж больно длинный. Всем зарание респект.


 
half_litre   (2004-07-15 12:59) [1]

Народ дайте хоть наводку.(не "на водку")


 
АлексейК   (2004-07-15 13:26) [2]

Если закрыть ExeNoModalForm то все OK.
При открытой DllNoModalForm? Все нормально?
И потом в конкретно ошибка и на какой строчке кода возникает Acces Violation?
И в DLL как формочка то создается.


 
half_litre   (2004-07-15 13:34) [3]

>Если закрыть ExeNoModalForm при открытой DllNoModalForm? Все >нормально?
Точно так

>И в DLL как формочка то создается.:
DllNoModalForm:=TDllNoModalForm.Create(Application);
DllNoModalForm.Show;



Страницы: 1 вся ветка

Текущий архив: 2004.08.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.061 c
9-1082207751
AlexNx
2004-04-17 17:15
2004.08.01
Алгоритм попадания точки


14-1089641103
VID
2004-07-12 18:05
2004.08.01
Вопросы по администрированию доступа к файлам и папкам


14-1089669484
KilkennyCat
2004-07-13 01:58
2004.08.01
Notebook


1-1089974539
Саша
2004-07-16 14:42
2004.08.01
Печать компонента: StringGrid


14-1089664682
Sheng
2004-07-13 00:38
2004.08.01
WWW