假设我的dll有一个类,我怎么导出她的属性呢type
TTest=class
public
property Valid: Boolean read FValid write SetValid;
end;我要怎么声明接口呢?下面的代码编译不过type
ITest=interface
['{F4182F52-FBBC-4A65-8E8D-6F44951A9926}']
property Valid: Boolean read FValid write SetValid;
end;
TTest=class
public
property Valid: Boolean read FValid write SetValid;
end;我要怎么声明接口呢?下面的代码编译不过type
ITest=interface
['{F4182F52-FBBC-4A65-8E8D-6F44951A9926}']
property Valid: Boolean read FValid write SetValid;
end;
Dll中导出类--Delphi实战之一,参考一下
能这样使用
VAR
TEST:ITest;test.valid:=true;
ITest=interface
['{F4182F52-FBBC-4A65-8E8D-6F44951A9926}'] function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
function _AddRef: Integer; stdcall;
function _Release: Integer; stdcall;
property Valid: Boolean read FValid write SetValid;
end;
如果直接聲明接口
但是BPL的话就不能被别的语言调用了
看看这个对你有帮助吗
呵呵,可能我没有表达清楚... 其实我是想把类的属性也通过接口公开出来,然后能用以下的代码来存取
VAR
TEST:ITest; test.valid:=true;
ITest = interface
function ReadValid: Boolean;
procedure WriteValid(Value: Boolean);
property Valid: Boolean read ReadValid write WriteValid;
end;
ITest=interface
['{F4182F52-FBBC-4A65-8E8D-6F44951A9926}']
property Valid: Boolean read FValid write SetValid;
end; 接口的要求是,不能使用私有域成员,不能使用成员变量,只能使用方法,方法默认是public类型的。
因此15楼的声明是正确的。你只要能够取得他的类,你就能够获取他的属性了。