请教各位大哥一个IC卡读写的问题,如何向里面写入和读取数据,小弟很急我用的IC卡是RD600。急呀!

解决方案 »

  1.   

    http://www.decard.com/soft_download.asp
    有驱动下载。
      

  2.   

    Declare Function IC_InitComm Lib "DCIC32.DLL" (ByVal Port%) As Long
    Declare Function IC_ExitComm% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_Down% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_Pushout% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_InitType% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal TypeNo%)
    Declare Function IC_Status% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_Erase% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal l%)
    Declare Function IC_Read% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal l%, ByVal Databuffer$)
    Declare Function IC_Read_Hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal l%, ByVal Databuffer$)
    Declare Function IC_Read_Float% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, fdata As Single)
    Declare Function IC_Read_Int% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, fdata As Long)
    Declare Function IC_Write% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal length%, ByVal Databuffer$)
    Declare Function IC_Write_Hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal length%, ByVal Databuffer$)
    Declare Function IC_Write_Float% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal fdata As Single)
    Declare Function IC_Write_Int% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal fdata As Long)
    '4442
    Declare Function IC_ReadProtection% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal l%, ByVal ProtBuffer$)
    Declare Function IC_WriteProtection% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal l%, ByVal ProtBuffer$)
    Declare Function IC_ReadCount_SLE4442% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_CheckPass_SLE4442% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_CheckPass_4442hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_ChangePass_SLE4442% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_ChangePass_4442hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    '4428
    Declare Function IC_ReadWithProtection% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal l%, ByVal ProtBuffer$)
    Declare Function IC_WriteWithProtection% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal l%)
    Declare Function IC_ReadCount_SLE4428% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_CheckPass_SLE4428% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_ChangePass_SLE4428% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_CheckPass_4428hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_ChangePass_4428hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    'ATMEL24C
    Declare Function IC_Write24% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal length%, ByVal Databuffer$)
    Declare Function IC_Write24_Hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal length%, ByVal Databuffer$)
    Declare Function IC_Write64% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal length%, ByVal Databuffer$)
    Declare Function IC_Write64_Hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal offset%, ByVal length%, ByVal Databuffer$)'ATMEL102
    Declare Function IC_CheckPass_102% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_ChangePass_102% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_CheckPass_102hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_ChangePass_102hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Password$)
    Declare Function IC_ReadCount_102% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_CheckAZPass_102% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Zone%, ByVal Password$)
    Declare Function IC_ChangeAZPass_102% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Zone%, ByVal Password$)
    Declare Function IC_CheckAZPass_102hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Zone%, ByVal Password$)
    Declare Function IC_ChangeAZPass_102hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Zone%, ByVal Password$)
    Declare Function IC_Erase_102% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Zone%, ByVal offset%, ByVal l%)
    Declare Function IC_Fuse_102% Lib "DCIC32.DLL" (ByVal icdev As Long)
    '4406
    Declare Function IC_RValue% Lib "DCIC32.DLL" (ByVal icdev As Long)
    Declare Function IC_DEValue% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal num%)
    'ATMEL1604
    Declare Function IC_CheckPass_1604% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Area%, ByVal Password$)
    Declare Function IC_ChangePass_1604% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Area%, ByVal Password$)
    Declare Function IC_CheckPass_1604hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Area%, ByVal Password$)
    Declare Function IC_ChangePass_1604hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Area%, ByVal Password$)
    Declare Function IC_ReadCount_1604% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal Area As Integer)
    Declare Function IC_Fuse_1604% Lib "DCIC32.DLL" (ByVal icdev As Long)
    '45D041
    Declare Function IC_DirectRead% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal page%, ByVal offset%, ByVal bytes%, ByVal buff$)
    Declare Function IC_DirectWrite% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal page%, ByVal offset%, ByVal bytes%, ByVal buff$)
    Declare Function IC_WriteByBuffer% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal page%, ByVal offset%, ByVal bytes%, ByVal buff$)
    Declare Function IC_DirectRead_Hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal page%, ByVal offset%, ByVal bytes%, ByVal buff$)
    Declare Function IC_DirectWrite_Hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal page%, ByVal offset%, ByVal bytes%, ByVal buff$)
    Declare Function IC_WriteByBuffer_Hex% Lib "DCIC32.DLL" (ByVal icdev As Long, ByVal page%, ByVal offset%, ByVal bytes%, ByVal buff$)
    '
    Global icdev As Long  'define COM Handle
      

  3.   

    看这里有一个完整的演示程序http://www.jdn.com.cn/download/list.asp?id=34
      

  4.   

    谁可以给我一份CPU卡RD600的读写源码或者是读写原理吗?
    谢谢!
    小弟第一次接触,心里很急!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!急!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!急!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!急!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      

  5.   

    请问各位大哥我这代码有什么错,我查不到.
    Private Sub Command1_Click()
    icdev = IC_InitComm(2) 'Init COM3
    If icdev <= 0 Then
          list1.AddItem ("Init COM Error!")(这里就是代码错误处,提示为:实时错误438,对象不支持该属性或方法.)
          Exit Sub
        End If
        st = IC_Status(ByVal icdev&)
        DoEvents
        st = IC_Status(ByVal icdev&)
        DoEvents
        If st < 0 Then
                Beep
                Beep
                list1.AddItem "0: ic_status is error! Return: " + Str(st)
                Exit Sub
        Else
            list1.AddItem "0: ic_status is ok!"
        End If
            'ic_inittype.
        st = IC_InitType(ByVal icdev&, 12)
        If st < 0 Then
            Beep
            Beep
            list1.AddItem "1: ic_inittype() is error! Return: " + Str(st)
            Exit Sub
        Else
            list1.AddItem "1: ic_inittype() is ok!"
        End If
    End Sub
      

  6.   

    窗体上加一个 listbox 控件,并命名为 List1。