Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с dll в KOL ! Помогите плиз!!! [Delphi, Kylix, Windows]


KisaNetik ©   (2004-02-26 03:06:00) 

Доброго времени суток!
Существует такая проблема! создал dll в KOL в котором храню и вызываю форму
function PassEditor(User:string):integer;
var
Form1:PControl;
begin
Applet:=NewApplet('');
Form1:=NewForm(Applet,'...'+User);
Form1.ShowModal;
Result:=5;
end;

Exports
PassEditor index 1 name 'PassEditor';

Потом вызываю эту форму в главной программе:

procedure TForm1.PMAdminN7Menu(Sender: PMenu; Item: Integer);
var
Handle:Cardinal;
PassEditor:function(User:string):integer;stdcall;
begin
Handle:=LoadLibrary('Utils.dll');
if Handle=0 then
 begin
  MsgBox('Error 54875',MB_OK);
  exit;
 end;
PassEditor:=GetProcAddress(Handle,'PassEditor');
if @PassEditor<>nil then MsgOK(Int2Str(PassEditor('1')));
FreeLibrary(Handle);
end;

Проблема 1 - Не передаются параметры! Загружается форма сразу при PassEditor:=GetProcAddress(Handle,'PassEditor');
Проблема 2 - При строчке if @PassEditor<>nil then MsgOK(Int2Str(PassEditor('1'))); возникает ошибка!!! В чём проблема? помогите...!!!! Утопаю в расстерянности!
Если делаю на VCL  и просто функцию без формы в dll? то всё работает!


Gandalf   (2004-02-28 16:30:00) [1]

Народ его обычно игнорирует и удаляет ни разу не прочитав, а потом кричат - чей-то моя прога вылетает... Это корень зла - будь бдителен.


марсианин   (2004-02-28 13:39:00) [2]

2KisaNetik

читай warning в pas-файле свежесозданной DLL


KisaNetik   (2004-02-28 12:12:00) [3]


> Gandalf ©   (27.02.04 19:15) [6]
> Мда еще - строки в dll это опастно...

Какие строки ???


Gandalf   (2004-02-27 19:15:00) [4]

Мда еще - строки в dll это опастно...


KisaNetik   (2004-02-27 00:00:00) [5]

Пасибо!!!! Помогли разобратся!!!!!!! Всё типерь пашет!


savva   (2004-02-26 11:35:00) [6]

http://bonanzas.rinet.ru/DemoModalVCL2KOLDLL.zip


SPeller   (2004-02-26 11:30:00) [7]

Form1: PForm1, а не PControl. А далее Form1.Form.XXX


mdw   (2004-02-26 10:25:00) [8]

А  FAQ читать не пытался? И у Кладова на сайте, по моему, какой-то проимер был.


KisaNetik   (2004-02-26 03:13:00) [9]

с передачей параметра разобрался! Только-что осенило!!! Надо убрать просто в описании функции stdcall!!!!!! Но возникает другая ошибка - "Память не может быть read"!!! Что делать???


Наверх

Титульная страница Поиск, карта сайта Написать письмо