在EXE应用程序种有一个含有数据的数据集,我把它作为参数传递到DLL中,如下示意:
ShowForm(Application,Query);//调用DLL
但是我去不能在DLL中正常的使用它,DLL中的源代码
function ShowForm(A: TApplication;Query:TadoQuery): Bool;
var
  Form1: TfrmDLL;
begin
  Application.Handle := A.Handle;
  ShowMessage(inttostr(Query.RecordCount));//此处正常返回Query的记录数
  Form1 := TfrmDLL.Create(A);//一个有表格的form,表格的DataSource是DataSource1
  try
    Form1.DataSource1.DataSet:=Query;
    Result := (Form1.ShowModal = mrOK);//已经看见了各列的头,但没有记录.并有内存冲突
  finally
    Form1.Free;
  end;
end;
高手指点,如何在DLL中正常使用EXE传递的数据集?