Главная страница
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.057 c
4-1078822013
twinc
2004-03-09 11:46
2004.04.11
WinXP shutdown


14-1079511122
Gero
2004-03-17 11:12
2004.04.11
В сиднейском аэропорту "обмяк" самолёт :)


7-1080251203
Bulanov
2004-03-26 00:46
2004.04.11
СОМ порт


8-1076255934
rentgen
2004-02-08 18:58
2004.04.11
Удалить пиксель?


14-1081871944
Privet
2004-04-13 19:59
2004.04.11
Завершение работы системы