Главная страница
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.037 c
14-1101848169
Некто
2004-11-30 23:56
2004.12.19
Алгоритм работы виртуальной памяти


1-1102151015
The Vizit0r!
2004-12-04 12:03
2004.12.19
Тормозит графический интерфейс, цикл как процесс


3-1100854084
Lamer_Of_Delphi
2004-11-19 11:48
2004.12.19
Хранимая проца...


1-1102320665
tytus
2004-12-06 11:11
2004.12.19
Как проверить ввод символа в TEdit?


1-1102190333
olookin
2004-12-04 22:58
2004.12.19
Тип в модуле, компоненте и библиотеке