⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fk.cpp

📁 利用DLL对IC卡进行发卡充值的PB VF BCB DELPHI VC等源代码程序,内有详细说明
💻 CPP
📖 第 1 页 / 共 2 页
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "fk.h"
#include <SysUtils.hpp>
#include "dascard.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
Tmainform *mainform;
HINSTANCE libhandle;
int st;
HANDLE icdev;
//---------------------------------------------------------------------------
__fastcall Tmainform::Tmainform(TComponent* Owner)
    : TForm(Owner)
{
    icdev=0;
}
//---------------------------------------------------------------------------

void __fastcall Tmainform::FormShow(TObject *Sender)
{
     List1->Items->Clear();
     icdev=OpenComm(0);
     if ((long)icdev>0)
     {
        st=Check_Reader(icdev);
        if (st!=0)
        {
            icdev=OpenComm(1);
            if ((long)icdev>0)
            {
                st=Check_Reader(icdev);
                if (st!=0)
                {
                    Application->MessageBox("读写器通讯错误!","错误信息!",MB_OK);
                    delete mainform;
                }
                else
                {
                    List1->Items->Add("初始化串口成功,串口号:"+IntToStr((long)icdev));
                    Beep();
                }
            }
            else
            {
                Application->MessageBox("读写器通讯错误!","错误信息!",MB_OK);
                delete mainform;
            }
        }
        else
        {
            List1->Items->Add("初始化串口成功,串口号:"+IntToStr((long)icdev));
            Beep();
        }
     }
     else
     {
        Application->MessageBox("找不到串口!","错误信息!",MB_OK);
        delete mainform;
     }
}
//---------------------------------------------------------------------------

void __fastcall Tmainform::btnexitClick(TObject *Sender)
{
  Close();
}
//---------------------------------------------------------------------------




void __fastcall Tmainform::btnsysClick(TObject *Sender)
{
    char userpwd[9]="12345678";
    char commpwd[9];
    List1->Items->Clear();
    st=Init_SysCard(icdev,userpwd,2,1,1,2,commpwd);
    switch (st)
    {
        case 0:List1->Items->Add("初始化系统卡成功!");
               break;
        case -1:List1->Items->Add("初始化系统卡失败:串口错!");
               break;
        case -2:List1->Items->Add("初始化系统卡失败:读写器通讯错!");
               break;
        case -5:List1->Items->Add("初始化系统卡失败:参数错!");
               break;
        case -6:List1->Items->Add("初始化系统卡失败:不能再初始化系统卡!");
               break;
        case -7:List1->Items->Add("初始化系统卡失败:找不到卡!");
               break;
        case -8:List1->Items->Add("初始化系统卡失败:找不到门禁授权卡!");
               break;
        case -9:List1->Items->Add("初始化系统卡失败:找不到消费授权卡!");
               break;
        case -10:List1->Items->Add("初始化系统卡失败:系统卡错误!");
               break;
        case -12:List1->Items->Add("初始化系统卡失败:读卡错!");
               break;
        case -13:List1->Items->Add("初始化系统卡失败:写卡错!");
               break;
        case -14:List1->Items->Add("初始化系统卡失败:建立授权文档错误!");
               break;
        case -15:List1->Items->Add("初始化系统卡失败:不可识别的卡!");
               break;
        default:List1->Items->Add("初始化系统卡失败:初始化系统卡错误!");
                break;
    }
}
//---------------------------------------------------------------------------

void __fastcall Tmainform::btnmjClick(TObject *Sender)
{
    int serno=1,cardno=10,usertype=1,cardtype;
    unsigned long cardserno;

    List1->Items->Clear();
    st=Init_Access_UserCard(icdev,serno,cardno,usertype,20,&cardserno);
    switch (st)
    {
        case 0:List1->Items->Add("初始化门禁考勤用户卡成功!");
               break;
        case -1:List1->Items->Add("初始化门禁考勤用户卡失败:串口错!");
               break;
        case -2:List1->Items->Add("初始化门禁考勤用户卡失败:读写器通讯错!");
               break;
        case -4:List1->Items->Add("初始化门禁考勤用户卡失败:没有门禁系统授权信息!");
               break;
        case -5:List1->Items->Add("初始化门禁考勤用户卡失败:参数错!");
               break;
        case -7:List1->Items->Add("初始化门禁考勤用户卡失败:找不到卡!");
               break;
        case -10:List1->Items->Add("初始化门禁考勤用户卡失败:系统卡错误!");
               break;
        case -11:List1->Items->Add("初始化门禁考勤用户卡失败:用户卡错误!");
               break;
        case -12:List1->Items->Add("初始化门禁考勤用户卡失败:读卡错!");
               break;
        case -13:List1->Items->Add("初始化门禁考勤用户卡失败:写卡错!");
               break;
        case -15:List1->Items->Add("初始化门禁考勤用户卡失败:不可识别的卡!");
               break;
        default:List1->Items->Add("初始化门禁考勤用户卡失败!");
                break;
    }

    st=Query_Access_Card(icdev,&cardtype,&serno,&cardno,&cardserno,&usertype,20);
    switch (st)
    {
        case 0:List1->Items->Add("门禁考勤使用卡查询成功,ID号:"+IntToStr(cardserno));
               break;
        case -1:List1->Items->Add("门禁考勤使用卡查询失败:串口错!");
               break;
        case -2:List1->Items->Add("门禁考勤使用卡查询失败:读写器通讯错!");
               break;
        case -4:List1->Items->Add("门禁考勤使用卡查询失败:没有门禁系统授权信息!");
               break;
        case -5:List1->Items->Add("门禁考勤使用卡查询失败:参数错!");
               break;
        case -7:List1->Items->Add("门禁考勤使用卡查询失败:找不到卡!");
               break;
        case -10:List1->Items->Add("门禁考勤使用卡查询失败:系统卡错误!");
               break;
        case -11:List1->Items->Add("门禁考勤使用卡查询失败:用户卡错误!");
               break;
        case -12:List1->Items->Add("门禁考勤使用卡查询失败:读卡错!");
               break;
        case -13:List1->Items->Add("门禁考勤使用卡查询失败:写卡错!");
               break;
        case -15:List1->Items->Add("门禁考勤使用卡查询失败:不可识别的卡!");
               break;
        default:List1->Items->Add("门禁考勤使用卡查询失败!");
                break;
    }

    st=Init_Access_UserCard_UsePassword(icdev,cardserno,20);
    switch (st)
    {
        case 0:List1->Items->Add("初始化用户密码成功!");
               break;
        case -1:List1->Items->Add("初始化用户密码失败:串口错!");
               break;
        case -2:List1->Items->Add("初始化用户密码失败:读写器通讯错!");
               break;
        case -4:List1->Items->Add("初始化用户密码失败:没有门禁系统授权信息!");
               break;
        case -5:List1->Items->Add("初始化用户密码失败:参数错!");
               break;
        case -7:List1->Items->Add("初始化用户密码失败:找不到卡!");
               break;
        case -10:List1->Items->Add("初始化用户密码失败:系统卡错误!");
               break;
        case -11:List1->Items->Add("初始化用户密码失败:用户卡错误!");
               break;
        case -12:List1->Items->Add("初始化用户密码失败:读卡错!");
               break;
        case -13:List1->Items->Add("初始化用户密码失败:写卡错!");
               break;
        case -15:List1->Items->Add("初始化用户密码失败:不可识别的卡!");
               break;
        default:List1->Items->Add("初始化用户密码失败!");
                break;
    }

    st=RST_Access_UserCard(icdev,cardserno,20);
    switch (st)
    {
        case 0:List1->Items->Add("回收门禁考勤机用户卡成功!");
               break;
        case -1:List1->Items->Add("回收门禁考勤机用户卡失败:串口错!");
               break;
        case -2:List1->Items->Add("回收门禁考勤机用户卡失败:读写器通讯错!");
               break;
        case -4:List1->Items->Add("回收门禁考勤机用户卡失败:没有门禁系统授权信息!");
               break;
        case -5:List1->Items->Add("回收门禁考勤机用户卡失败:参数错!");
               break;
        case -7:List1->Items->Add("回收门禁考勤机用户卡失败:找不到卡!");
               break;
        case -10:List1->Items->Add("回收门禁考勤机用户卡失败:系统卡错误!");
               break;
        case -11:List1->Items->Add("回收门禁考勤机用户卡失败:用户卡错误!");
               break;
        case -12:List1->Items->Add("回收门禁考勤机用户卡失败:读卡错!");
               break;
        case -13:List1->Items->Add("回收门禁考勤机用户卡失败:写卡错!");
               break;
        case -15:List1->Items->Add("回收门禁考勤机用户卡失败:不可识别的卡!");
               break;
        default:List1->Items->Add("回收门禁考勤机用户卡失败!");
                break;
    }
}
//---------------------------------------------------------------------------



void __fastcall Tmainform::FormDestroy(TObject *Sender)
{
    if (icdev>0)
      st=CloseComm(icdev);
}
//---------------------------------------------------------------------------

void __fastcall Tmainform::btnxfClick(TObject *Sender)
{
    int serno=1,usertype=1,cardtype,opt_num,value,count;
    char cardno[]="0000000001";
    unsigned long cardserno;
    List1->Items->Clear();
    st=Init_Pos_UserCard(icdev,serno,cardno,usertype,20,&cardserno);
    switch (st)
    {
        case 0:List1->Items->Add("初始化消费用户卡成功,ID号:"+IntToStr(cardserno));
               break;
        case -1:List1->Items->Add("初始化消费用户卡失败:串口错!");
               break;
        case -2:List1->Items->Add("初始化消费用户卡失败:读写器通讯错!");
               break;
        case -3:List1->Items->Add("初始化消费用户卡失败:没有消费系统授权信息!");
               break;
        case -5:List1->Items->Add("初始化消费用户卡失败:参数错!");
               break;
        case -7:List1->Items->Add("初始化消费用户卡失败:找不到卡!");
               break;
        case -10:List1->Items->Add("初始化消费用户卡失败:系统卡错误!");
               break;
        case -11:List1->Items->Add("初始化消费用户卡失败:用户卡错误!");
               break;
        case -12:List1->Items->Add("初始化消费用户卡失败:读卡错!");
               break;
        case -13:List1->Items->Add("初始化消费用户卡失败:写卡错!");
               break;
        case -15:List1->Items->Add("初始化消费用户卡失败:不可识别的卡!");
               break;
        default:List1->Items->Add("初始化消费用户卡失败!");
                break;
    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -