标题:[求助]懂VB和VFP的朋友帮帮忙
只看楼主
running_drea
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-3-16
 问题点数:0 回复次数:3 
[求助]懂VB和VFP的朋友帮帮忙
读IC卡的数据,用VB能实现,怎么用VFP不能实现?懂VB和VFP的朋友,看看我VFP的代码哪里有问题。
VB代码:
Public suc As Long
Dim cdata As String
Dim cardnodec As String
Dim cardnohex As String
Private Sub Commandread_Click()
suc = WMTECH1611.ReadSpecifyWithPass(1, 4, "ffffff", 0, 1, cdata, cardnohex, cardnodec)
If suc = 0 Then
Text1.Text = "失败"
Else
Text1.Text = cdata
End If
End Sub
VFP代码:
public cdata
public cardnohex
public cardnodec
if thisform.olecontrol1.ReadSpecifyWithPass(1,4,"ffffff",0,1,cdata,cardnohex,cardnodec)=0
thisform.text1.value="读数据失败"
else
thisform.text1.value=cdata
MESSAGEBOX('读数据成功',64,'信息提示')
endif
说明:
1、两者都调用的同一动态连接库。
2、用VFP编写的,运行后,读数据成功,文本框显示“F”,VARTYPE(CARDATA)显示类型为逻辑型。不知道为什么!
3、函数说明
带密码读取指定块数据以十六进制字符串返回,并返回十进制卡号和十六进制卡号串
ReadSpecifyWithPass(int jh, int block, BSTR *pass,int ab, int closeorno, BSTR *data, BSTR *cardnohex,BSTR *cardnodec):BOOL
jh机号;block块号;pass密码;ab a密码还是b密码(a密码0,b密码1);closeorno是否关卡(0不关,1关);data返回的数据;cardnohex返回的十六进制卡号;cardnodec返回的十进制卡号。
成功返回TRUE,失败返FALSE。
搜索更多相关主题的帖子: VFP cdata String public Dim 
2007-04-08 11:47
wzxc
Rank: 9Rank: 9Rank: 9
来 自:齐鲁大地
等 级:贵宾
威 望:39
帖 子:985
专家分:1296
注 册:2006-4-25
得分:0 
本人水平有限,未必能解决问题。
在vfp里,public变量后,自动赋值.f.
public cdata && cdata=.f.

thisform.text1.value=cdata
thisform.text1.value=.f.


认真看书学习,弄通Fox主义。
2007-04-08 13:15
running_drea
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-3-16
得分:0 
那怎么让cdata为字符型变量?
2007-04-08 21:26
wzxc
Rank: 9Rank: 9Rank: 9
来 自:齐鲁大地
等 级:贵宾
威 望:39
帖 子:985
专家分:1296
注 册:2006-4-25
得分:0 
定义以后,接着赋值即可。赋什么值就是什么类型。

认真看书学习,弄通Fox主义。
2007-04-09 08:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-130103-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.233074 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved