【发布时间】:2014-05-12 05:00:40
【问题描述】:
unit dll_dmunit;
interface
uses
System.SysUtils, System.Classes, Data.DB, Datasnap.DBClient, Vcl.Dialogs,Vcl.DBGrids;
type
TStudentModule = class(TDataModule)
StudentSet: TClientDataSet;
StudentSource: TDataSource;
StudentSetNAME: TStringField;
StudentSetID: TIntegerField;
StudentSetAGE: TIntegerField;
StudentSetSLNo: TAutoIncField;
dlgOpen: TOpenDialog;
dlgSave: TSaveDialog;
private
{ Private declarations }
public
end;
procedure loadfile;stdcall;
procedure set_file(name_of_file:string);stdcall;
var
StudentModule: TStudentModule;
filename:string;
implementation
procedure set_file(name_of_file: string);stdcall;
begin
filename:=name_of_file;
end;
procedure loadfile;stdcall;
begin
StudentModule.StudentSet.LoadFromFile(filename);
end;
end.
这是我包含在 DLL 中的单元,我在 export 子句中导出了函数 loadfile。 当我在程序中使用这个函数时,我得到一个地址冲突的错误读取。 我需要对 TClientDataSet 执行操作,例如加载和保存在 Dll 中,然后在程序中使用这些操作。 首先我调用 set_file 方法来初始化文件名 请帮助我解决这个问题。 谢谢你的期待。
【问题讨论】:
标签: delphi dll delphi-7 tclientdataset