hur.cn - 华软网

 热门搜索

求PB中使用DELPHI编写的DLL实例?

  作者:未知    来源:网络    更新时间:2018/2/6
求怎样在PB中使用DELPHI编写的DLL实例?
Y81920@163.COM
------华软网友回答------
参考:
http://search.csdn.net/Expert/topic/428/428270.xml?temp=.9131739
------华软网友回复------
最好是用DELPHI编写的DLL在PB中调用。VC我不会。
------华软网友回复------
Function Funxx:Pchar;export; //仪器名称


implementation


Function Funxx:Pchar;
Begin
   Result := 'abcd';
End;

----函数输出

exports  //函数输出

  Funyqmc Name 'Funxx';


---------------------------------------------------------------

PB声明
Function string Funyy() Library "c:\your.dll" ALIAS FOR "Funxx"


调用:

string   ls_result

ls_result = Funyy()
------华软网友回复------
更正一下
exports  //函数输出

  Funxx Name 'Funxx';

或者

exports  //函数输出
   Funxx ;
------华软网友回复------
这个很难吗?不就是标准的调用吗?就是注意delphi应该注意uses sharemem放在前面;另外传实参不要写var就可以了!
------华软网友回复------
没有应用过,所以不知道怎么用
------华软网友回复------
nimittz(尼米兹---------努力升星GOGOGO)

函数的参数和返回值如果用String类型,
必须在单元中加入uses sharemem(加在前面),
pchar则不用,Pchar较好,其它语言比较通用,对应string类型

--------------------------------------------------------
procedure test (Value: Integer; var Reference: Integer; out OutVar: Integer);
::
Value: 传值;只能传入数据,不能传出数据。
Reference: 传入引用,也就是变量的地址;也可不指定变量的类型;
           既可传入也可传出数据变量。
OutVar: 也是传入引用,但只能传出数据,不能传入数据。

Examples:

function DoubleVal (Val: Integer) : Integer;
begin
  Val := Val * 2;
  Result := Val;
end;

function DoubleRef (var Val: Integer): Integer;
begin
  Val := Val * 2;
  Result := Val;
end;

var
  I, J: Integer;
begin
  I := 2;
  J := DoubleVal (I); // I = 2; J = 4;
  //如果调用下面的话,
  // J := DoubleRef (I); // I = 4; J = 4;
     
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。