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

Вниз

Динамическое создание/удаление объектов в DLL. Проблемы.   Найти похожие ветки 

 
SB.John ©   (2002-04-29 08:06) [0]

Пишу простенькую DLL для отправки почтовых сообщений. Код примерно такой:

Var Nu:TNMSMTP;

Function SendMail(Address:PChar; Msg:TStringList):boolean;
Var q:TNotifyEventl
begin
Nu:=TNMSMTP.Create(nil);
@q:=@NFailure; Nu.OnFailure := q;
@q:=@NSuccess; Nu.OnSuccess := q;
@q:=@NSendStart; Nu.OnSendStart := q;

....

Nu.Free();
end;


Так вот на строке Nu.Free(); Периодически (примерно раз через 3) выскакивает RunTime Error. Тот же самый код оформленный как обычный exe работает безо всяких проблем. Вызывается функция из DLL слеудющим образом:

procedure TForm1.Button1Click(Sender: TObject);
Var SendMailo:function(Address:PChar;Msg:TStringList):boolean;stdcall;
H:longword;
S:TStringList;
begin
h:=LoadLibrary("sendmail");
SendMailo := GetProcAddress(h,"SendMailo");
S:=TStringList(Memo1.Lines);
SendMailo("pea@chaz.ru",S);
FreeLibrary(h);
end;


 
SB.John ©   (2002-04-29 09:06) [1]

В общем сам уже разобрался. Дело было в TStringList"e во входных параметрах.



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

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

Наверх




Память: 0.46 MB
Время: 0.01 c
3-39677
Socrat
2002-04-16 09:03
2002.05.13
Помогите отучить ADO сжирать память !


4-39917
Anarchist
2002-03-09 15:36
2002.05.13
WinApi в Nt


1-39771
Vovchik
2002-04-28 13:12
2002.05.13
Хранение и изменение текстовых ресурсов в PE-файлах


6-39819
fixxxer
2002-02-20 12:36
2002.05.13
Как получить IP зная имя компьютера?


1-39803
maks
2002-04-27 16:47
2002.05.13
[D6] Кто-нибудь ставил LMD-Tools помогите советом.....