建立好新对象,调用对象中函数中的参数传递问题(100分)

  • 主题发起人 shlongbing
  • 开始时间
S

shlongbing

Unregistered / Unconfirmed
GUEST, unregistred user!
  我刚接触Delphi不久,现遇到一个问题,还请大大顶立相助!
  我需调用的是用VFP6.0封装做的一个组件,其功能提供了三个函数调用,IC_RECARD
(读卡),IC_WRITE(写卡),IC_EXIT(退卡)。其中写卡,退卡已经通过调试,唯
有读卡不能正常操作。请看以下代码:
  ...
var ccom,return,croom,cnumber,cdatetime:OleVariant;
begin
ccom:=2;{设置串口号为COM2}
Trfunc:=CreateComObject(CLASS_Trfunc) as Itrfunc;{建立新的对象}
return:=Trfunc.ic_readcard(ccom,croom,cnumber,cdatetime);{调用函数读出卡片中的
信息,其中croom为房间号,cnumber为床位号,cdatetime为截止日期}
Edit1.Text:=VarToStr(croom);{显示房间号} 
Edit2.Text:=VarToStr(cnumber);{显示订位号}
Edit1.Text:=DateTimeToStr(VarToDateTime(cdatetime));{显示截止日期}
我在进行程序进行调试时,发现croom,cnumber,cdatetime都是未被赋值。我对DELPHI中对象
中的函数的参数传递不是很清清楚,还请高人相助!
代码:
 
你在Trfunc.ic_readcard函数的参数声明中是引用传递还是值传递?
也就是说你的声明是不是这样:
funciton ic_readcard(var ccom,croom,cnumber integer;cdatetime tdatatime);
 
参数传递,可能是全局变量的问题吧,传递过来的值都是空值吧?
 
顶部