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

Вниз

Ошибка при работе с DLL. "access violation at ... "   Найти похожие ветки 

 
Def_128   (2004-03-21 13:54) [0]

Всем привет! Может кто сталкивался с такой ситуацией, помогите пожалуйста!
Использую DLL в которой хранится форма. Вызываю ее таким способом

@MainFormShow := nil;
LibHandle := LoadLibrary("Main.DLL");
if LibHandle >= 32 then begin
  @MainFormShow := GetProcAddress(LibHandle,"MainFormShow");
if @MainFormShow <> nil then
  MainFormShow;
end;
FreeLibrary(LibHandle);

В самой DLL

Procedure MainFormShow; stdcall;
Begin
  MainForm := TMainForm.Create(nil);
  MainForm.ShowModal;
  MainForm.Free;
End;

Форма открывается, работает, но в какойто момент происходит ошибка "access violation at ... : write of address". Это происходит в процедурах, которые уже отрабатывали несколько раз. Например на условии в этой процедуре

procedure TMainForm.CheckBox1Click(Sender: TObject);
begin
  If Self.CheckBox1.Checked Then Begin
     ...
  End;
end;

или в этой процедуре

Procedure TMainForm.RefrSummaCount ;
Begin
 DataModule.SumQuery.SQL.Clear;
 DataModule.SumQuery.SQL.Add("Select Sum(price*nom) summa,Count(*) nomer From ");
 DataModule.SumQuery.SQL.Add(""""+LeftStr(DataModule.TovarTable.TableName,(Length(DataModule.TovarTable.TableName)-4))+"" "");
 DataModule.SumQuery.SQL.Add(" Where nom>0");  (Ошибка)
 DataModule.SumQuery.Active := True;
...
End;

Подскажите пожалуйста, как это лечить ...


 
Def_128   (2004-03-21 14:04) [1]

Я не знаю после чего ошибка перестала появляться. Но сейчас взрыв не происходит. По коду ничего не менял, кажется ...


 
VMcL ©   (2004-03-21 15:08) [2]

ПолтерГЕЙТС.


 
just me   (2004-03-21 15:32) [3]

Если ссылка на DataModule передается из вызывающей апликации, то причина ясна.



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

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

Наверх




Память: 0.47 MB
Время: 0.071 c
14-1082473786
Undert
2004-04-20 19:09
2004.04.11
нЕ подскажете что за кодировка ?


1-1079686697
Vlad3
2004-03-19 11:58
2004.04.11
Как, находясь в окне, узнать, что мышь покинула его?


6-1076049111
Антоний
2004-02-06 09:31
2004.04.11
Firewall


14-1082377810
panov
2004-04-19 16:30
2004.04.11
Индексирование текста.


8-1075903834
Urvin
2004-02-04 17:10
2004.04.11
КОЛИЧЕСТВО Цветов