X
xtqiqi
Unregistered / Unconfirmed
GUEST, unregistred user!
兄弟最近正在搞IC的二次开发,用的是RD600的读卡器、sle4442的IC卡.在校验密码时总是出问题。在网上查到IC卡的初始密码是ffffff。但老不正确。我写的代码如下:
var
SPID: longint;
ErrorCount: integer;
mValue, m16: Pchar;
mypwd: string;
begin
Memo1.Clear;
SPID := IC_InitComm(100);
if SPID <= 0 then
begin
Memo1.Lines.Add('错误');
end
else
begin
Memo1.Lines.Add('设备初始化成功');
end;
if IC_Check_4442(SPID) = 0 then
begin
Memo1.Lines.Add('卡型:4442');
end
else
begin
Memo1.Lines.Add('未知卡型');
end;
//初始化设备
if IC_inittype(SPID, 16) = 0 then
begin
Memo1.Lines.Add('设备初始化成功');
end
else
begin
Memo1.Lines.Add('设备初始化失败');
exit;
end;
// 校验密码
// mypwd := 'ffffff';
if IC_CheckPass_sle4442(SPID, Pchar(mypwd)) = 0 then
begin
Memo1.Lines.Add('密码校验成功');
end
else
begin
if IC_exitcomm(SPID) >= 0 then
begin
Memo1.Lines.Add('正常关闭');
end
else
begin
Memo1.Lines.Add('非正常关闭');
end;
Memo1.Lines.Add('密码校验失败');
exit;
end;
end;
if IC_exitcomm(SPID) >= 0 then
begin
Memo1.Lines.Add('正常关闭');
end
else
begin
Memo1.Lines.Add('非正常关闭');
end;
end;
望各位高手帮助,不胜感激!
var
SPID: longint;
ErrorCount: integer;
mValue, m16: Pchar;
mypwd: string;
begin
Memo1.Clear;
SPID := IC_InitComm(100);
if SPID <= 0 then
begin
Memo1.Lines.Add('错误');
end
else
begin
Memo1.Lines.Add('设备初始化成功');
end;
if IC_Check_4442(SPID) = 0 then
begin
Memo1.Lines.Add('卡型:4442');
end
else
begin
Memo1.Lines.Add('未知卡型');
end;
//初始化设备
if IC_inittype(SPID, 16) = 0 then
begin
Memo1.Lines.Add('设备初始化成功');
end
else
begin
Memo1.Lines.Add('设备初始化失败');
exit;
end;
// 校验密码
// mypwd := 'ffffff';
if IC_CheckPass_sle4442(SPID, Pchar(mypwd)) = 0 then
begin
Memo1.Lines.Add('密码校验成功');
end
else
begin
if IC_exitcomm(SPID) >= 0 then
begin
Memo1.Lines.Add('正常关闭');
end
else
begin
Memo1.Lines.Add('非正常关闭');
end;
Memo1.Lines.Add('密码校验失败');
exit;
end;
end;
if IC_exitcomm(SPID) >= 0 then
begin
Memo1.Lines.Add('正常关闭');
end
else
begin
Memo1.Lines.Add('非正常关闭');
end;
end;
望各位高手帮助,不胜感激!