powerbuilder中指针的应用

来源:互联网 发布:淘宝虚拟物品有哪些 编辑:程序博客网 时间:2024/09/21 09:22

在调用外部dll中的函数时,经常会用到指针。那么在pb中如何实现呢?

先看一个dll说明文档中的函数声明:

Function GetFamInfo(info:pchar,out flag:integer):pchar;stdcall;   // flag是一个出口参数  函数的返回值和第一个参数都是指针类型

pchar是delphi中的指针类型。那么我们在pb中应该怎么声明和调用呢?

首先在pb的declare  global external functions中声明外部dll函数:

public function  long GetFamInfo(long info,  ref int flag) library "nccm_interface.dll" ALIAS FOR "GetFamInfo"

然后在工程中调用:

long rtn
int flag
long famInfo
rtn = GetFamInfo(famInfo, flag)
sle_1.Text = String(flag)
sle_2.Text = string(rtn, "address") 

long类型在pb中可以作为指针类型,当long作为一个字符型指针时,可以用String(long,"address")这个方法,读出long指针地址真所保存的字符串,并付给一个字符型变量。

原创粉丝点击