关于字符类型的问题,请帮忙看下.
这是调用一个com组件的一个函数的问题
其开发文档的函数说明如下
int ReadCard(int icdev, char CardNo, char RoomNo, char EndDate)
(感觉这个定义有点问题,其CardNo,RoomNo,EndDate都是需要在调用后能够获取数值的,而且我试在cb里面用char类型时有错误)
下列是事例中vb语法
Dim Oj1 As Object
Dim h1 As Integer, a1 As Integer, a2 As Integer, a3 As Integer, p1 As Integer, b1 As Set Oj1 = CreateObject("xxx.xxx")
a2 = Oj1.ReadCard(h1, c1, r1, d1)
在调用这个函数时c1,r1,d1的值都是正确的
delphi中的语法是
icdev:integer;
Rcardno1,rroomno1,renddate1:String;
DigiCard1:=CreateOleObject('IssueCrd.DigiCard');
i:=DigiCard1.readcard(icdev,rcardno1,rroomno1,renddate1);
rcardno1,rroomno1,renddate1也是正确的读卡数据.
在cb中我是如下写法的
char cardNo[8],roomNo[10],endDate[12];//(分配的空间是够大的)
icdev=V.OleFunction("OpenPort",0,9600);
error = V.OleFunction("ReadCard",icdev,cardNo,roomNo,endDate);
在这里cardNo,roomNo,endDate获取的值都空的.
(对于其他函数的调用是没有任何问题)
请大家帮帮忙了.
问题点数:100、回复次数:1Top
1 楼DooDu(杜霖:I want,I can(开关拉))回复于 2005-08-04 02:10:46 得分 0
注意:
vc中的int是32位,相当于vb的long!Top




