我是刚申请这里的ID,还不能提问,如果你能帮我提个问题的话就更好了。
我也是做IC卡的。用DELPHI做ACTIVEX控件!
你说的我已经搞定了,但是我有个问题就是怎么在ACTIVEX控件中连接数据库?(怎么声明ADOCONNECTION 和ADOCOMMAND 和RECODESET)
你帮帮忙,在这里帮我问一下!!!我急着要用啊!
你要的代码如下:
uses
ComObj, ActiveX, AspTlb, com_check_TLB, StdVcl, SysUtils,Classes;
type
Tcheckuser = class(TASPMTSObject, Icheckuser)
protected
function check: Integer
safecall;
end;
VAR
function rf_init(port:integer;ss:integer):longint;stdcall;
far;external 'RfReader.dll';
function rf_exit(icdev:longint):integer;stdcall;
far;external 'RfReader.dll'
function Tcheckuser.check: Integer;
var
cardId:longword;
comPort : longint;
licencepath :string;
basicinfo:Basic_Info;
begin
// 关闭串口
// if not f_closecomm(icdev) then
// begin
// result := -1;
// exit;
// end;
// 打开串口并检查发卡器
comPort := 0;
icdev := OpenComm(comport);
if icdev <= 0 then // 打开串口1成功
begin
result := -2
// 读写器通讯错
exit
end
// 装载系统
licencepath := 'c:/licence.das';
st := Load_Author(licencepath); //装载系统
if st <> 0 then
begin
CloseComm(icdev);
result := st;
exit
// 装载系统失败
end
// 查询用户卡号
rf_beep( icdev ,10 )
st := GetBasicInfo ( icdev,basicinfo,cardId );
if st <> 0 then
begin
CloseComm(icdev);
result := st;
exit;
end
else
begin
CloseComm(icdev);
result := basicinfo.SerialNo
//返回卡流水号!
exit;
end;
end;