![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Access violation после выгрузки dll [D7]
evgenij © (2009-07-27 15:15:00)Здравствуйте!
Подскажите, плиз, с проблемкой...
Динамически загружаю длл, вызываю нужную функцию,выгружаю-все вроде ок, а при выходе из функции, которая это все делает выдает ошибку Access violation.....
function TForm1.hesh(we:String):String;
type THesh = function(stt : String):String;
var DLLInstance : THandle;
md51 : THesh;
begin
DLLInstance := LoadLibrary('manager.dll');
if DLLInstance = 0 then
begin
MessageDlg('...... manager.dll.', mtError, [mbOK], 0);
exit
end;
@md51 := GetProcAddress(DLLInstance, 'md5');
if @md51 <> nil then result:=md51(we)
else MessageDlg('.....', mtError, [mbOK], 0);
FreeLibrary(DLLInstance);
end;
при пошаговом прохождении на последнем энде и матюкается..
Спасибо.
evgenij (2009-07-27 15:53:00) [1]спасибо....помогло...
Юрий Зотов (2009-07-27 15:48:00) [2]> evgenij (27.07.09 15:39) [6]
Кроме того, есть подозрение, что uses в EXE взят из главной формы, а не из DPR.
Сергей М. (2009-07-27 15:41:00) [3]
> evgenij (27.07.09 15:39) [6]
В обоихdpr юнит ShareMem должен быть указан самым первым.
Palladin (2009-07-27 15:41:00) [4]
> [6] evgenij (27.07.09 15:39)
File/New/Other/New/DLL Wizard и внимательночитаем написанное
Palladin (2009-07-27 15:40:00) [5]то есть комментарии в dll начисто проигнорированны... )
evgenij (2009-07-27 15:39:00) [6]в ехе:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Mask, ComboBoxEvg, DB, ADODB,sharemem;
в длл:
uses
SysUtils,
Classes,
Variants,
Math,
strUtils,
forms,StdCtrls,Graphics,
unit12 in 'unit12.pas' {Form12};
Юрий Зотов (2009-07-27 15:36:00) [7]В смысле - в обоих DPR.
evgenij (2009-07-27 15:35:00) [8]указал-то же самое
Юрий Зотов (2009-07-27 15:35:00) [9]> evgenij (27.07.09 15:35) [3]
Покажите uses в EXE и в DLL.
evgenij (2009-07-27 15:33:00) [10]нет..........
Palladin (2009-07-27 15:22:00) [11]uses sharemem указано?