rt

解决方案 »

  1.   

    用于传递的是data , 不是DataSet
      

  2.   

    你要传DATASET对象?好像不可以。没见过。只传过INTSTER,STRING,BOOLEAN,对象估计不行
      

  3.   

    可以传啊我是这样做的        //      传给DLL的相应的参数
            //        PDLLInfo = ^TDLLINfo  ;
            TDLLInfo = Record
                    sCaption: String;               //      主窗体Caption
                    ADOCon: TADOConnection;         //      传入DLL的Connection
                    App: TApplication;              //      传入DLL的App, 以保证与主程序一致
                    DLLHandle: HWND;                //      传入DLL的Handle, 以保证与主程序一致
                    IconHandle: HWND;
                    DLLScr: TScreen;
                    DataSet: TDataSet;
            end;声明一记录类型传给DLL
      

  4.   

    共享RTL,VCL会让事情非常容易!
    function GetDataSet(const SQL: String): TDataSet; stdcall;
    这是我的DLL中的声明外部调用
    var
      FData: TDataSet;
    begin
     FData := GetDataSet('Select * From CSDN');
    end;
      

  5.   

    to   Antiquesoft(古董)  
    这样的话在dll中的函数中也要有一个记录类型
    请问在dll中参数怎么怎么定义  ?
    下列括号里该怎么填写?  :) 谢谢
    function  test() :boolean;stdcall(比如该函数是dll中的函数)