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

Вниз

как вернуть _Recordset из DLL ?   Найти похожие ветки 

 
Adis Tadas   (2004-12-06 09:32) [0]

Здравствуйте, уважаемые специалисты!
В DLL передаю var _Recordset, хочу заполнить его в DLL и вернуть обратно. У меня не получается следующий код:

1) вызывающая программа:

   uses
     ShareMem, ADOInt, .. ;
   ..
   function EditRecordSet (var rs: _Recordset):  boolean;
     Stdcall; External "mydll.dll" ;
   ..
   var
     r: _Recordset ;
   
     r := nil ;

     EditRecordSet (r) ;
     ..
     Finalize ;

2) DLL:
   uses
     ShareMem, .. ;
   ..
   function EditRecordSet (var rs: _Recordset):  boolean;
   ..
   DM.ado_qrCommon.SQL := " select * from XX "
   DM.ado_qrCommon.Open ;             // здесь все нормально
   ..
   rs := DM.ado_qrCommon.Recordset ;  // здесь ошибка
   ..

Скажите, что здесь не так (насколько я понимаю, нужно создать rs перед присвоением ему DM.ado_qrCommon.Recordset) ?
Заранее спасибо!


 
Digitman ©   (2004-12-06 09:53) [1]

function EditRecordSet: _Recordset; External "mydll.dll";

  ..
  var
    r: _Recordset ;
  ..
    r := EditRecordSet;
   //здесь работаем с полученным интерфейсом
    r := nil; //явно освобождаем интерфейсный объект, если r не локальная переменная текущей процедуры

  function EditRecordSet:  _Recordset;
  begin
   DM.ado_qrCommon.SQL := " select * from XX "
   DM.ado_qrCommon.Open ;            
   Result := DM.ado_qrCommon.Recordset ;    
  end;


> здесь ошибка


какая ?


 
novice_man ©   (2004-12-06 09:57) [2]

type
pRecordSet: ^_RecordSet;

var:
r: pRecordSet;

Может так получится.



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

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

Наверх




Память: 0.47 MB
Время: 0.045 c
14-1101549347
KilkennyCat
2004-11-27 12:55
2004.12.19
Забавно, но факт, дающий пищу для размышлений...


14-1101705984
NewDelpher
2004-11-29 08:26
2004.12.19
Плану Аллена Даллеса суждено было сбыться?


4-1099405772
DSKalugin
2004-11-02 17:29
2004.12.19
Как изменить частоту видеоадаптера?


4-1099914945
Dropper
2004-11-08 14:55
2004.12.19
Перехват данных потока


3-1100715732
Богдан
2004-11-17 21:22
2004.12.19
Исключительная ситуация